Tableaux de bord Grafana

DockerBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, vous apprendrez les bases de la création d'un tableau de bord de monitoring avec Grafana. Grafana est une plateforme open-source populaire dédiée au monitoring et à l'observabilité, qui vous permet d'interroger, de visualiser, d'alerter et d'explorer vos métriques, quel que soit leur emplacement de stockage.

Nous travaillerons avec un environnement pré-configuré comprenant :

  • Grafana : L'outil de visualisation où vous construirez votre tableau de bord.
  • Prometheus : Une base de données de séries temporelles qui servira de source de données pour Grafana.
  • Node Exporter : Un agent qui collecte les métriques matérielles et système de la machine hôte et les expose pour que Prometheus puisse les récupérer.

Votre objectif est de construire un tableau de bord simple à partir de zéro qui affiche l'utilisation en temps réel du processeur (CPU) de l'environnement de laboratoire.

Explorer l'environnement pré-configuré

Dans cette étape, vous allez vous familiariser avec l'environnement de laboratoire. Le script d'installation a déjà démarré trois conteneurs Docker qui forment une pile de monitoring de base.

Tout d'abord, vérifions que tous les conteneurs sont en cours d'exécution. Ouvrez le terminal et exécutez la commande suivante :

docker ps

Vous devriez voir un résultat similaire à celui-ci, listant les conteneurs grafana, prometheus et node-exporter. Les identifiants de conteneur (IDs) seront différents.

CONTAINER ID   IMAGE                           COMMAND                  CREATED          STATUS          PORTS                                       NAMES
c1a2b3c4d5e6   grafana/grafana                 "/run.sh"                15 seconds ago   Up 14 seconds   0.0.0.0:8080->3000/tcp                      grafana
f6e5d4c3b2a1   prom/prometheus                 "/bin/prometheus --c…"   20 seconds ago   Up 19 seconds   0.0.0.0:9090->9090/tcp                      prometheus
a9b8c7d6e5f4   prom/node-exporter              "/bin/node_exporter …"   25 seconds ago   Up 24 seconds   0.0.0.0:9100->9100/tcp                      node-exporter

Voici une brève description de chaque composant :

  • node-exporter : Collecte les métriques système de la machine virtuelle.
  • prometheus : Récupère et stocke les métriques provenant de node-exporter.
  • grafana : Interroge Prometheus et visualise les données.

Maintenant, accédons à l'interface utilisateur de Grafana.

En raison des paramètres du proxy inverse de la machine virtuelle LabEx, passez à l'interface de bureau, cliquez sur le navigateur Firefox dans le coin supérieur gauche et saisissez http://localhost:8080 dans la barre d'adresse. Vous devriez voir la page de connexion de Grafana.

Connectez-vous avec les identifiants par défaut :

  • Nom d'utilisateur : admin
  • Mot de passe : admin

Il se peut que l'on vous demande de changer le mot de passe. Vous pouvez cliquer sur Skip pour ce laboratoire.

Page de connexion Grafana avec les identifiants admin

Une fois connecté, vérifions la connexion à la source de données.

Grafana modifie les étiquettes et les icônes de sa barre latérale gauche au fil des versions, il est donc possible que votre écran ne corresponde pas exactement à la capture d'écran. Si la barre latérale est réduite, développez-la d'abord.

  1. Ouvrez la zone de gestion des sources de données. Dans les versions les plus récentes de Grafana, utilisez Connections puis Data sources. Si vous ne voyez pas Connections, utilisez la recherche dans la barre latérale et ouvrez Data sources à partir de là.
  2. Confirmez qu'une source de données pré-configurée nommée Prometheus est présente. Cette connexion a été automatiquement configurée par le script d'initialisation, permettant à Grafana d'interroger le conteneur Prometheus.

Interface utilisateur Grafana montrant la sélection de la source de données Prometheus

Vous êtes maintenant prêt à construire votre premier tableau de bord.

Créer un nouveau tableau de bord dans l'interface Grafana

Dans cette étape, vous allez créer un nouveau tableau de bord vide dans l'interface Grafana. Un tableau de bord est une collection d'un ou plusieurs panneaux disposés sur une grille.

  1. Dans l'interface Grafana, localisez la barre latérale gauche.
  2. Créez un nouveau tableau de bord. L'étiquette exacte du menu dépend de la version de Grafana :
    • Si vous voyez une entrée + Create, ouvrez-la et choisissez New dashboard.
    • Si vous voyez Dashboards dans la barre latérale, ouvrez-le et choisissez New dashboard.
    • Si la disposition de la barre latérale est différente, utilisez la zone de recherche de Grafana et ouvrez New dashboard à partir de là.

Créer un nouveau tableau de bord

Cette action crée un nouveau tableau de bord vide. Vous êtes immédiatement invité à ajouter votre premier panneau. Un panneau est l'élément de base de la visualisation dans Grafana.

Cliquez sur le bouton Add visualization au centre de l'écran pour accéder à l'éditeur de panneau.

Ajouter un nouveau panneau

Vous êtes maintenant dans l'éditeur de panneau, où vous définirez votre requête de données et personnaliserez sa visualisation à l'étape suivante.

Ajouter un panneau avec une requête PromQL pour l'utilisation du CPU

Dans cette étape, vous allez ajouter un panneau à votre tableau de bord et utiliser une requête PromQL (Prometheus Query Language) pour récupérer les données d'utilisation du CPU.

Vous devriez déjà être dans l'éditeur de panneau depuis l'étape précédente.

  1. En bas de l'éditeur, vous trouverez la section des requêtes. La source de données Prometheus devrait déjà être sélectionnée par défaut.
  2. Dans la zone de texte Metrics browser, saisissez la requête PromQL suivante. Vous pouvez la copier et la coller directement.
100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)

Analysons cette requête :

  • node_cpu_seconds_total{mode="idle"} : Il s'agit d'une métrique provenant de Node Exporter qui compte le nombre total de secondes pendant lesquelles le CPU a été en état "inactif" (idle).
  • rate(...[5m]) : Cette fonction calcule le taux moyen d'augmentation par seconde du temps d'inactivité sur les 5 dernières minutes. Le résultat est une valeur comprise entre 0 et 1, représentant la fraction de temps pendant laquelle le CPU était inactif.
  • avg by (instance) : Cela agrège les résultats, ce qui est utile si vous avez plusieurs CPU ou machines.
  • * 100 : Cela convertit la valeur fractionnaire en pourcentage (par exemple, 0,95 devient 95 %).
  • 100 - ... : Enfin, nous soustrayons le pourcentage d'inactivité de 100 pour obtenir le pourcentage d'utilisation active du CPU.

Après avoir saisi la requête, un graphique devrait apparaître automatiquement dans le volet de prévisualisation en haut, montrant l'utilisation du CPU au fil du temps.

Panneau Grafana avec requête

Votre panneau affiche maintenant des données, mais il peut être amélioré avec un meilleur étiquetage et un meilleur formatage, ce que vous ferez à l'étape suivante.

Personnaliser et enregistrer le tableau de bord

Dans cette étape, vous allez personnaliser l'apparence du panneau et enregistrer le tableau de bord. Un panneau bien configuré est beaucoup plus facile à comprendre d'un seul coup d'œil.

  1. Sur le côté droit de l'éditeur de panneau, localisez la section Panel options.
  2. Dans le champ Title, saisissez un nom descriptif pour votre panneau, tel que CPU Usage %. Vous verrez le titre se mettre à jour dans le volet de prévisualisation.
  3. Faites défiler les options sur la droite jusqu'à trouver la section Standard options.
  4. Cliquez sur le menu déroulant Unit. Il indique actuellement "None".
  5. Dans la zone de recherche qui apparaît, tapez percent et sélectionnez Percent (0-100) dans la liste. Cela formatera correctement l'axe Y de votre graphique pour afficher un symbole de pourcentage.

Personnaliser les options du panneau

Maintenant que le panneau est configuré, appliquez les modifications et revenez à la vue du tableau de bord.

  1. Cliquez sur le bouton Save dans le coin supérieur droit de l'écran. Dans certaines versions de Grafana, ce bouton est intitulé Apply.

Vous êtes maintenant de retour sur votre tableau de bord, qui contient votre panneau nouvellement créé. La dernière étape consiste à enregistrer l'ensemble du tableau de bord.

  1. Cliquez sur l'icône Save dashboard (qui ressemble à une disquette) dans le coin supérieur droit de l'en-tête du tableau de bord.
  2. Une boîte de dialogue "Save dashboard" apparaîtra. Saisissez le nom exact My System Dashboard afin que le laboratoire puisse vérifier le tableau de bord enregistré.
  3. Cliquez sur le bouton Save.

Enregistrer le tableau de bord

Félicitations ! Vous avez créé et enregistré avec succès votre premier tableau de bord Grafana.

Résumé

Dans ce laboratoire, vous avez construit avec succès un tableau de bord Grafana à partir de zéro. Vous avez commencé avec une pile de monitoring pré-configurée et avez effectué les actions clés suivantes :

  • Exploration de l'environnement composé des conteneurs Grafana, Prometheus et Node Exporter.
  • Navigation dans l'interface utilisateur de Grafana pour créer un nouveau tableau de bord vide.
  • Ajout d'un panneau de visualisation et rédaction d'une requête PromQL pour récupérer les données d'utilisation du CPU depuis la source de données Prometheus.
  • Personnalisation du titre du panneau et du formatage des unités pour une meilleure lisibilité.
  • Enregistrement du tableau de bord terminé pour une utilisation ultérieure.

Vous avez maintenant appris le flux de travail fondamental pour créer des visualisations dans Grafana. Vous pouvez approfondir ces connaissances en ajoutant davantage de panneaux à votre tableau de bord pour surveiller d'autres métriques système telles que l'utilisation de la mémoire, les entrées/sorties disque ou le trafic réseau.