superviser cluster kubernetes

Superviser son cluster Kubernetes avec Prometheus et Grafana

Vous venez d’installer un cluster Kubernetes et vous voulez savoir s’il se porte bien ? Découvrez deux solutions Open Source pour vous aider à le superviser, et donc y voir plus clair.

Des solutions Open Source pour superviser votre cluster Kubernetes

Pour vous aider à superviser votre cluster Kubernetes, tournez-vous vers Prometheus et Grafana.

Prometheus est un outil open source de monitoring créé pour le Cloud.
Il s’intègre très facilement dans un cluster K8s,déployé chez votre hébergeur préféré.
C’est lui qui va se charger de collecter les métriques exposées, entre autres, par l’API de Kubernetes, et stocker le tout dans sa base de données TSDB (Time Series Database).

Grafana est un logiciel open source, qui fonctionne de pair avec Prometheus (et d’autres sources de données).
Il permet de faire des requêtes PromQL (Prometheus Query Language) et ainsi d’exploiter les métriques stockées par Prometheus.

Rapidement, vous allez pouvoir importer, ou créer et visualiser votre premier dashboard, contenant quantités de panels, sous différentes formes (graphiques, jauge, texte etc), comme ci-dessous :

cluster kubernetes - dashboard grafana
Dashboard sur Grafana

Process de supervision de cluster Kubernetes

L’installation se fait très simplement, à condition d’avoir déjà un cluster Kubernetes opérationnel, en suivant la procédure du repo Git.

kubectl apply --filename https://raw.githubusercontent.com/giantswarm/prometheus/master/manifests-all.yaml

Cette commande va créer sur votre cluster K8s toutes les ressources nécessaires au bon fonctionnement de Prometheus / Grafana, au sein d’un namespace monitoring.
Vous pouvez constater cela en tapant :

kubectl get pods,svc,replicaset,deploy -n monitoring

Pour accéder à l’interface web, il faut aller un peu plus loin, Kubernetes n’exposant pas par défaut le service vers l’extérieur. Le plus simple est de forwarder le port de Grafana comme ceci :

kubectl port-forward --namespace monitoring service/grafana 3000:3000

Et si votre cluster n’est pas installé sur votre poste local, il faut maintenant faire un tunnel ssh entre votre poste et le node Kubernetes master, comme ceci :

ssh -L 3000:127.0.0.1:3000 USER@VM_MASTER_KUBE

Voilà, vous êtes prêt pour tester Grafana, en naviguant sur 127.0.0.1:3000. Les identifiants de Grafana par défaut sont admin / admin.

Si vous êtes impatient, il existe une quantité de dashboards prêts à être importé ici.
Parmi ceux-ci, voici un exemple de dashboard montrant des informations basiques sur le cluster.

Il faut, au choix, récupérer l’ID (ici 7249) ou copier le fichier JSON, puis l’importer sur Grafana, en précisant la source de données qui est ici Prometheus.

Et enfin, tout se met en mouvement et en couleur sous nos yeux ! Vous êtes à présent opérationnel pour superviser votre cluster Kubernetes dans les meilleurs conditions avec Prometheus et Grafana.

cluster kubernetes - grafana
Dashboard sur Grafana

Pour aller plus loin

  • Depuis la version 4, Grafana embarque un système d’alertes, pour être notifié dès qu’un seuil est dépassé.
  • De nombreux plugins existent pour étendre les possibilités de Grafana, exemple avec le plugin Zabbix, qui permet de créer des dashboards à partir des métriques récoltés par Zabbix.

Faites-vous accompagner par un expert !

Syloé vous accompagne et vous conseille dans la supervision de vos serveurs, vos applications métiers et systèmes. Contactez l’un de nos experts  pour plus d’informations.

Demande de devis Syloé

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *