1. Déployer avec kube-prometheus-stack #
Le chart de référence.
Installation #
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts && helm repo update
helm install monitoring prometheus-community/kube-prometheus-stack -n monitoring --create-namespace
kubectl -n monitoring get podsapiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata: { name: shop, namespace: shop, labels: { release: monitoring } }
spec:
selector: { matchLabels: { app: shop } }
endpoints: [ { port: metrics, interval: 30s } ]Erreur Courante : Par défaut, le Prometheus du chart ne sélectionne que les ServiceMonitor portant le label release du chart : sans ce label, vos cibles n'apparaissent jamais.2. L'interface web de Prometheus #
Le premier outil de diagnostic.
Pages utiles #
kubectl -n monitoring port-forward svc/monitoring-kube-prometheus-prometheus 9090
# puis http://localhost:9090| Page | Usage |
|---|---|
| Query (Graph) | Tester une requête PromQL, en tableau ou en courbe |
| Status > Targets | Cibles collectées, état UP/DOWN et dernière erreur |
| Status > Service discovery | Cibles découvertes avant et après relabeling |
| Alerts, Rules | Règles d'alerte et d'enregistrement, état pending ou firing |
| Status > TSDB | Cardinalité : métriques et labels les plus coûteux |
Bonne Pratique : Quand une métrique manque dans Grafana, vérifiez d'abord Status > Targets dans l'interface de Prometheus : la cause est presque toujours une cible DOWN ou absente.

