Implementation de la stack de monitoring (Prometheus, Grafana, Alert Manager) dans des conteneur Docker … Partie 2

Dans la première partie de l’article nous avons vu comment configurer prometheus, qui est une base de données de monitoring stockant sous forme de time-series les métriques de votre infrastructure.

Prometheus met par défaut à disposition de l’utilisateur une interface web assez simple permettant de faire des requêtes à l’aide du langage promql pour obtenir des informations sur les métriques enregistrées.

Comme vous pouvez le constater, cette interface est assez rigide et même si elle donne la possibilité de voir les résultats sous forme de graph, elle reste assez limitée en ce qui concerne la consultation et un suivi propice de l’activité.

C’est donc la ou Grafana entre en jeu pour palier à ces limites et vous fournir le moyen d’avoir des superbes tableaux de bord, colorés et faciles à interpréter pour ravir votre direction et vous aussi dans votre suivi journalier.

Il faut noter que Grafana est un produit à part, donc l’objectif premier est la realisation des graphes pour plusieurs besoins. Il est un logiciel libre sous la licence apache 2.0 et permet de s’interfacer à plusieurs sources de données telles que influxDB, mysql, Graphite et bien évidemment… prometheus.

Une fois Grafana installé et connecté a la source de données prometheus, vous avez donc la possibilité de créer des visuels en utilisant des requêtes prometheus. Nous n’allons pas beaucoup nous étendre sur l’ensemble des fonctionnalités de Grafana, vous pouvez retrouver tout ce dont vous avez besoin ici https://grafana.com/docs/grafana/latest/

La communauté de Grafana a développé un grand nombre de tableaux de bord disponibles et prêt à l’emploi. Généralement pour un exporter prometheus (cf article précédent) vous avez de nombreux tableaux de bord déjà implémentés et utilisables, ils sont disponibles ici https://grafana.com/grafana/dashboards. C’est la solution que je recommande le plus souvent afin de ne pas avoir à réinventer la roue. Il suffit donc de partir sur un tableau de bord communautaire et le modifier le cas échéant pour mieux l’adapter à vos besoin.

Nous allons donc voir maintenant comment installer et parametrer Grafana en se servant des conteneurs docker.

  • Installation de Grafana

L’installation est assez simple, créer votre fichier docker-compose.yaml avec le contenu ci-dessous :

version: “3”

services:

  grafana:

    image: grafana/grafana

    restart: unless-stopped

    volumes:

      – ./grafana_data/db:/var/lib/grafana

    ports:

      – 3000:3000

Ensuite executer la commande

docker-compose up -d

Grafana est désormais installé et accessible en utiliser http://:3000

  • Intégration de la source de données prometheus

Maintenant vous devez ajouter votre source de données prometheus en cliquant sur configuration → Data sources et le bouton “Add data source”

  • Integration du dashboard node exporter

Votre instance Grafana est désormais connectée a prometheus, vous pouvez importer des tableaux de bords a partir du site grafana.com ou en créer de nouveaux “from scratch”.

Pour importer, cliquer sur le bouton “+” à droite et ensuite sur import.

Saisissez le numéro du dashboard correspondant (nous allons utiliser celui-ci https://grafana.com/grafana/dashboards/1860 ) , donc le numero 1860 et cliquez sur le bouton import

Bravo !! votre tableau est prêt à être utilisé, n’hésitez pas à l’optimiser pour qu’il cadre mieux à vos besoin.

Partager:

Facebook
Twitter
LinkedIn