[AIAB-04] Setup Online Boutique
To get the target application (Online Boutique), the load generator (Locust), and the telemetry provider (Prometheus) installed, you need to use the three Kubernetes manifests available in the kube folder of your cloned repo. The corresponding kubectl commands must be issued from any terminal pointing to your cluster.
Notice: if you have installed the minikube cluster with the scripts provided in this guide, you can skip this command and proceed to the paragraph Install the target application.
Notice that all these three manifests refer to a label akamas/node=akamas to ensure that the corresponding pods are scheduled on the same node. For the sake of simplicity, run the following command to assign this label to the node you want to use for these pods (this is not needed for the Minikube cluster, which already is correctly configured):
kubectl label node <NODE> akamas/node=akamasInstall the target application
To install the Online Boutique application, you need to apply the boutique.yaml manifest to your cluster with the following command:
kubectl apply -f kubernetes-online-boutique/kube/boutique.yamlThis command will create the namespace akamas-demo and all the Deployment and Services of the Online Boutique inside that namespace. You can verify that all the pods are up and running with the command:
watch -d kubectl get pods -n akamas-demoYou can wait until the output is similar to the following one, then proceed:
NAME READY STATUS RESTARTS AGE
ak-adservice-76cd99dffc-x8srv 1/1 Running 0 3m26s
ak-cartservice-5fbb6b6444-lw2lp 1/1 Running 0 3m18s
ak-checkoutservice-5bfc7765f9-lw4nd 1/1 Running 0 3m31s
ak-currencyservice-86b4779f5f-cwc8r 1/1 Running 0 3m25s
ak-emailservice-5dd45d469c-nkpj5 1/1 Running 0 3m32s
ak-frontend-56ddf7478b-q2b5z 1/1 Running 0 3m23s
ak-paymentservice-5756458bb8-4zmrh 1/1 Running 0 3m28s
ak-productcatalogservice-7bb94dff65-4n9sh 1/1 Running 0 3m20s
ak-recommendationservice-7f89d7fdc8-4dnmk 1/1 Running 0 3m21s
ak-redis-cart-6cc66bb4c9-rgggv 1/1 Running 0 3m16s
ak-shippingservice-fc6bbc6d5-6l2nl 1/1 Running 0 3m29sInstall the load generator
Then, to install Locust, you need to apply the loadgenerator.yaml manifest to your cluster:
kubectl apply -f kubernetes-online-boutique/kube/loadgenerator.yamlYou can verify that all the pods are up and running with the following command:
kubectl get pods -n akamas-demo -l app=ak-loadgeneratorThe output should be similar to the following one:
ak-loadgenerator-5669ff6c96-nstcs 2/2 Running 0 10sInstall the telemetry provider
Finally, to install Prometheus, you need to apply the prometheus.yaml manifest:
kubectl apply -f kubernetes-online-boutique/kube/prometheus.yamlYou can verify that all the pods are up and running with the command:
kubectl get pods -n akamas-demo -l app=ak-prometheusThe output should be similar to the following one:
ak-prometheus-76b4b749b5-4g6wf 1/1 Running 0 52sLast updated
Was this helpful?