Configure Robusta for Alerting and Monitoring Bold BI
Deploy Robusta in Kubernetes Cluster using Helm Chart:
Follow the below steps for configuring Robusta.
- Connect the Bold BI installed Kubernetes cluster you want to monitor.
- Refer to the helm for configuring helm in your machine, If the helm is not installed.
- Download the helm chart and install Robusta-CLI.
helm repo add Robusta https://Robusta-charts.storage.googleapis.com helm repo update pip install -U Robusta-cli --no-cache
- Generate a Robusta configuration. This will set up Slack and other integrations that will be highly recommended to enable the cloud UI so that you can see all features in action. This will generate the generated_values.yaml.
Robusta gen-config
- Save the generated_values.yaml somewhere safe, this is your Helm values.yaml file.
- Verifying that Robusta is running two pods with no errors in the logs.
kubectl get pods Robusta logs
- After completing your Robusta installation click here and log in to your account.
Monitoring Bold BI:
-
After logging into the Robusta, a setup like the following will start.
-
Then run the following command in Bold BI installed cluster.
helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName=BoldBI
-
Click here for accessing the Robusta monitoring environment.
-
You can monitor the Bold BI as follows.
-
We can see the particular pod events by clicking on the pod name.
Configure alerting for Bold BI:
Follow the below steps for creating an alert in Robusta.
-
By default, Robusta sends some warnings like the one below.
-
You can also create a custom alert based on your requirement. Here, I’m going to create a custom alert for pod scaling in the upcoming steps.
-
Add the following script to your generated_value.yaml for pod scaling alerting.
groups: - name: Pod CPU Scaling Rules rules: - alert: HighPodCPUUsage expr: sum by (namespace, deployment, pod) (rate(container_cpu_usage_seconds_total{namespace="robusta", pod!="", container!="", deployment!="", image!="", container!="POD"}[5m])) * 100 > 80 for: 5m labels: severity: warning annotations: summary: "High CPU usage for pod {{ $labels.pod }} in deployment {{ $labels.deployment }}" description: "CPU usage is {{ printf \"%.2f\" $value }}%, which is above the threshold of 80%. Scaling up additional pods may be necessary."
-
Perform an upgrade with Helm to apply the new configuration.
helm upgrade Robusta Robusta/Robusta --values=generated_values.yaml
-
Scale one of your deployments manually.
kubectl scale --replicas NEW_REPLICAS_COUNT deployments/DEPLOYMENT_NAME
-
Check the slack channel you configured when installing Robusta.
-
Refer to here for adding more custom alerting rules.
Uninstall Robusta:
- Use the following command to remove robusta from the cluster.
helm uninstall Robusta