- Lab
-
Libraries: If you want this lab, consider one of these libraries.
- Cloud

Creating Alerting Rules
After deploying a Prometheus environment to our Kubernetes cluster, the team has decided to test its monitoring capabilities by configuring alerting of our Redis deployment. We have been tasked with writing two alerting rules. The first rule will fire an alert if any of the Redis pods are down for 10 minutes. The second alert will fire if there are no pods available for 1 minute.

Lab Info
Table of Contents
-
Challenge
Create a ConfigMap That Will Be Used to Manage the Alerting Rules
Edit
prometheus-rules-config-map.yml
and add the Redis alerting rules. It should look like this when we're done:apiVersion: v1 kind: ConfigMap metadata: creationTimestamp: null name: prometheus-rules-conf namespace: monitoring data: redis_rules.yml: | groups: - name: redis_rules rules: - record: redis:command_call_duration_seconds_count:rate2m expr: sum(irate(redis_command_call_duration_seconds_count[2m])) by (cmd, environment) - record: redis:total_requests:rate2m expr: rate(redis_commands_processed_total[2m]) redis_alerts.yml: | groups: - name: redis_alerts rules: - alert: RedisServerDown expr: redis_up{app="media-redis"} == 0 for: 10m labels: severity: critical annotations: summary: Redis Server {{ $labels.instance }} is down! - alert: RedisServerGone expr: absent(redis_up{app="media-redis"}) for: 1m labels: severity: critical annotations: summary: No Redis servers are reporting!
-
Challenge
Apply the Changes Made to `prometheus-rules-config-map.yml`
Now, apply the changes that were made to
prometheus-rules-config-map.yml
:kubectl apply -f prometheus-rules-config-map.yml
-
Challenge
Delete the Prometheus Pod
- List the pods to find the name of the Prometheus pod:
kubectl get pods -n monitoring
- Delete the Prometheus pod:
kubectl delete pods <POD_NAME> -n monitoring
- In a new browser tab, navigate to the Expression browser:
http://<IP>:30080
- Click on the Alerts link to verify that the two Redis alerts are showing as green.
About the author
Real skill practice before real-world application
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Learn by doing
Engage hands-on with the tools and technologies you’re learning. You pick the skill, we provide the credentials and environment.
Follow your guide
All labs have detailed instructions and objectives, guiding you through the learning process and ensuring you understand every step.
Turn time into mastery
On average, you retain 75% more of your learning if you take time to practice. Hands-on labs set you up for success to make those skills stick.