-
Notifications
You must be signed in to change notification settings - Fork 4
Milestone 3.2 : Setup
It is assumed that the project is setup in a remote cloud like jet stream as mentioned in milestone 2.
If not please follow the information mentioned here
- ssh into your master vm containing kubernetes installed and project deployed
git clone https://github.com/airavata-courses/CAPtivate.git
git checkout release/project-3.2
Istio can be installed by doing the following steps as mentioned in this tutorial :
curl -L https://istio.io/downloadIstio | sh -
cd istio-1.5.2
export PATH=$PWD/bin:$PATH
istioctl manifest apply --set profile=demo
We can inject side cars either manually or automatically. For simplicity we shall enable automatic sidecar injection using the command
kubectl label namespace default istio-injection=enabled
Once this is done, assuming that the microservices are up and running, we can inject sidecar proxy by just deleting all the pods
kubectl delete pods --all
kubectl apply -f mesh-gateway.yaml
cd CAPtivate/deployments
kubectl apply -f ui.yaml
kubectl apply -f ui-destination-rules.yaml
kubectl apply -f ui-vs-traffic.yaml
Make requests in browser to the Nodeport of the ingress gateway to check the results
cd CAPtivate/deployments
kubectl apply -f ui-ab-deployment.yaml
kubectl apply -f ui-ab-destination.yaml
kubectl apply -f ui-AB-service.yaml
Make requests in browser with browser agent as Chrome and Safari to the Nodeport of the ingress gateway to check the results
cd CAPtivate/deployments
kubectl apply -f ui.yaml
kubectl apply -f ui-destination-rules.yaml
kubectl apply -f ui-destination-w-circuit-breaker.yaml
The results from the circuit breaker installation can be checked by running the jmeter tests in CAPtivate/deployments/Istio-UI.jmx
and observing the dashboard in kiali and grafana dashboards