Aller au contenu

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 des CustomResourcesDefinitions, 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>