Infrastructure de supervision ()¶
Description¶
La solution utilisée pour la surveillance (monitoring), remontée d'alerte
(alerting) et la création de tableau de bord (dashboard) est la pile Prometheus
, aussi connue sous le nom de kube-prometheus-stack
.
Cette dernière est installée via ce chart Helm.
Ce chart installe :
- Un
Operator
Prometheus, et desCustomResourcesDefinitions
, qui permettent de créer des ressources Prometheus via l'API Kubernetes ; - Une instance de Prometheus ;
- Une instance d'AlertManager, qui permet de créer et des gérer des alertes ;
- Une instance de
NodeExporter
qui permet de récupérer des métriques des machines hôtes au cluster ; - Une instance de
kube-state-metrics
qui moissonne l'API Kubernetes et en récupère des métriques ; - Une instance de Grafana, qui permet de créer des dashboards en utilisant les métriques exportées par Prometheus.
Plus de description sur la kube-prometheus-stack sont disponibles dans le repository officiel.
Installation¶
La stack de monitoring est installable en utilisant le chart Helm.
Installation du repository :
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
Une fois le repository installé, il est possible de déployer le chart Helm sans modifier les valeurs par défaut, dans un nouvel espace de nommage :
kubectl create namespace <nom du namespace>
helm install <nom de l'installation> prometheus-community/kube-prometheus-stack -n <nom du namespace>
Si les valeurs par défaut doivent-être modifiées, il faut récupérer le fichier
values.yaml
du chart (disponible
ici) en local.
Une fois le fichier modifié en local, il est possible de déployer le chart Helm :
helm install <nom de l'installation> prometheus-community/kube-prometheus-stack -n <nom du namespace> -f <chemin vers values.yaml>