Prometheus
Overview
Prometheus est un système de monitoring et d'alerting open source, développé initialement par SoundCloud et maintenant maintenu par la CNCF. Prometheus est devenu le standard de facto pour le monitoring cloud-native, particulièrement avec Kubernetes. Il utilise un modèle pull-based où Prometheus "scrape" (interroge) les endpoints HTTP exposés par les applications pour collecter des métriques, les stocke dans une base de données time-series, et permet des requêtes puissantes via PromQL.
Prometheus se distingue par son modèle pull-based, son langage de requête PromQL puissant, son architecture simple et scalable, et son intégration native avec Kubernetes et les environnements cloud-native.
Informations essentielles
| Propriété | Valeur |
|---|---|
| Site officiel | https://prometheus.io/ |
| Licence | Apache 2.0 |
| Nationalité | International (CNCF) |
| Type | Système de monitoring et alerting |
| Déploiement | Déploiement Kubernetes, standalone |
| Difficulté | Intermédiaire |
| Technologies | Go |
TL;DR
Prometheus est le standard de facto pour le monitoring cloud-native, avec modèle pull-based, PromQL puissant, et intégration native avec Kubernetes.
Points clés à retenir :
- Standard de facto monitoring cloud-native
- Modèle pull-based (scraping)
- Langage de requête PromQL puissant
- Intégration native Kubernetes
- Écosystème riche d'exporters
Compatibilité et intégrations
- Compatible avec Kubernetes (ServiceMonitor, PodMonitor)
- Intégration avec Grafana pour dashboards
- Écosystème riche d'exporters (node-exporter, blackbox-exporter, etc.)
- Compatible avec Alertmanager pour alerting
- Supporte les règles d'alerting PromQL
- Intégration avec les service mesh (Istio, Linkerd)
Avantages
- Standard de facto cloud-native
- Modèle pull-based flexible
- PromQL puissant pour requêtes
- Architecture simple et scalable
- Écosystème très riche
- Large communauté et documentation
Limites
- Stockage local limité (nécessite Thanos/Mimir pour long terme)
- Cardinalité des métriques peut être un problème
- Configuration peut être complexe à grande échelle
- Nécessite expertise PromQL
Ressources
- Documentation Prometheus : https://prometheus.io/docs/
- GitHub : https://github.com/prometheus/prometheus
- PromQL : https://prometheus.io/docs/prometheus/latest/querying/basics/