monitorer un cluster kubernetes avec prometheus et grafana : guide technique
26/01/2026
Assurer la disponibilité et la performance de vos applications conteneurisées sous Kubernetes est crucial pour un environnement de production fiable. Dans ce guide, nous détaillons pas à pas l’installation de Prometheus et Grafana sur un cluster Kubernetes, avec exemples de commandes Helm, configurations et alertes.
pré-requis
- Un cluster Kubernetes v1.24+ accessible (local ou cloud).
- Helm 3 installé sur votre poste.
- Docker pour tester localement avec
minikubeoukind. - Accès à un registre privé ou public pour les images (Docker Hub, ECR/Amazon Web Services).
1. déployer Prometheus avec kube-prometheus-stack
Le chart kube-prometheus-stack regroupe Prometheus, Alertmanager et des exporters.
# ajouter le repo Prometheus Community
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
# installer kube-prometheus-stack dans le namespace monitoring
helm install prometheus-stack prometheus-community/kube-prometheus-stack \
--namespace monitoring --create-namespace \
--set grafana.adminPassword='S3cur3P@ss' \
--set prometheus.prometheusSpec.retention=15d \
--set prometheus.prometheusSpec.resources.requests.memory=512Mi
Le chart déploie automatiquement :
- Prometheus Server
- Node Exporter pour métriques CPU/mémoire/disque
- Kube State Metrics
- Alertmanager
- Grafana
1.1 vérifier le déploiement
kubectl -n monitoring get pods
# Attendre que tous les pods soient en STATUS=Running
2. configurer l’accès à Grafana
Par défaut, Grafana est exposé en service ClusterIP. Pour un accès rapide en local :
kubectl -n monitoring port-forward svc/prometheus-stack-grafana 3000:80
# puis accéder à http://localhost:3000
Identifiants : admin / S3cur3P@ss
3. créer un dashboard personnalisé
Dans Grafana, importez un dashboard JSON ou créez-en un via l’interface :
- Menu “+” → “Import” → collez l’ID 315 (Kubernetes cluster monitoring).
- Sélectionnez la data source “Prometheus”.
- Personnalisez les panels : temps de réponse, utilisation CPU moyenne (
avg(rate(container_cpu_usage_seconds_total[5m]))), latence réseau.
Exemple de requête PromQL pour l’usage mémoire :
sum(container_memory_usage_bytes{namespace="default"}) by (pod)
4. configurer Alertmanager pour l’alerte
Créez un ConfigMap pour Alertmanager :
kubectl -n monitoring apply -f - <
Appliquez la configuration :
kubectl -n monitoring rollout restart deployment prometheus-stack-alertmanager
Testez avec une alerte simple :
kubectl -n monitoring apply -f - <
bonnes pratiques
- Isolation RBAC : limitez les permissions de Prometheus grâce à un
PodSecurityPolicy et des RoleBindings.
- Haute disponibilité : répliquez Alertmanager en mode cluster.
- Rétention : ajustez la rétention en fonction de la volumétrie (cf.
--storage.tsdb.retention.time).
- Sécurité : chiffrez les communications entre composants avec TLS (configurable via Helm).
- Monitoring externe : combinez avec Amazon Web Services CloudWatch ou Google Cloud Monitoring pour un panorama complet.
conclusion
Vous disposez désormais d’une plate-forme de surveillance robuste pour votre cluster Kubernetes. Prometheus collecte et stocke vos métriques, Grafana les visualise et Alertmanager vous prévient en cas d’anomalie. Pour étendre cette architecture ou renforcer la sécurité, n’hésitez pas à solliciter une renfort expert ou une séance de consulting offerte.

