In order to evaluate the quality gates, we have to set up monitoring to provide the needed data. The setup provided in this documenation is specific to the carts service that is used throughout all use cases. This requires that the created project is called sockshop and the service is called carts as described in the use case onboarding a service.
Checkout the needed files.
git clone --branch 0.4.0 https://github.com/keptn/examples.git --single-branch cd ./examples/monitoring/prometheus
In this directory, you will find a script called
deployPrometheus.sh. This script will deploy Prometheus in the namespace
monitoring and set up scrape job configurations for monitoring the carts service in the
production namespace. Execute that script by calling:
namespace "monitoring" created configmap "prometheus-server-conf" created clusterrole.rbac.authorization.k8s.io "prometheus" created clusterrolebinding.rbac.authorization.k8s.io "prometheus" created deployment.extensions "prometheus-deployment" created service "prometheus-service" created
To verify the Prometheus installation, you can browse to the Prometheus web interface:
kubectl port-forward svc/prometheus-service 8080 -n monitoring
Open the URL localhost:8080/targets in your browser. Here you should see three targets for the carts service:
Please note that if you have not onboarded the carts service yet, the Prometheus dashboard will report down in the state column.
If you want to uninstall Prometheus, there are scripts provided to do so. Uninstalling keptn will not automatically uninstall Prometheus.
git clone --branch 0.4.0 https://github.com/keptn/examples.git --single-branch
cd examples/monitoring/prometheus ./uninstallPrometheus.sh