Mise en place d'une pile de surveillance TIG sur Windows

La mise en place d'un système de surveillance local est une étape fondamentale pour comprendre et optimiser les performances de vos applications et de votre système. Cet article décrit comment assembler les composants clés d'une "pile TIG" (Telegraf, InfluxDB, Grafana) pour créer une solution de monitoring simple et efficace sur un environnement Windows.

Composants de la Pile TIG

  • Telegraf : Cet agent de collecte de données léger est chargé de recueillir des métriques de diverses sources (système, applications, bases de données, etc.) et de les envoyer à une base de données de séries temporelles.
  • InfluxDB : Une base de données optimisée pour le stockage et l'interrogation de données de séries temporelles. Elle constitue le référentiel central pour toutes les métriques collectées.
  • Grafana : Une plateforme d'analyse et de visualisation open-source qui permet de créer des tableaux de bord interactifs à partir des données stockées dans InfluxDB.

Le flux de données se présente comme suit : Telegraf (collecte) → InfluxDB (stockage) → Grafana (visualisation).

Installation des Outils

Chaque composant est disponible sous forme d'archive ZIP pour Windows. Pour commencer, téléchargez les dernières versions stables de Telegraf, InfluxDB et Grafana depuis leurs sites officiels.

Une fois téléchargés, décompressez chaque archive dans un répertoire dédié sur votre système de fichiers. Par exemple, vous pourriez créer une structure comme suit :

  • C:\Surveillance\Telegraf\
  • C:\Surveillance\InfluxDB\
  • C:\Surveillance\Grafana\

Ces chemins seront utilisés comme référence dans les exemples de configuration.

Configuration des Services

Configuration d'InfluxDB

Le fichier de configuration principal d'InfluxDB est influxdb.conf, situé dans le répertoire d'installation. Vous devrez modifier certains paramètres pour définir les chemins de stockage des données et activer li'nterface HTTP.

  1. Chemins de stockage : Spécifiez les répertoires pour les métadonnées (meta), les données TSM (data) et les journaux WAL (wal).
  2. Interface HTTP : Activez l'API HTTP et définissez l'adresse de liaison et le port. Cette interface est essentielle pour que Telegraf puisse écrire des données et Grafana puisse les lire.

Localisez les sections suivantes dans influxdb.conf et ajustez-les (utilisez C:\\Surveillance\\InfluxDB comme votre chemin d'installation) :

[meta]
 dir = "C:\\Surveillance\\InfluxDB\\meta"

[data]
 dir = "C:\\Surveillance\\InfluxDB\\data"
 wal-dir = "C:\\Surveillance\\InfluxDB\\wal"

[http]
 enabled = true
 bind-address = ":8086"
 auth-enabled = false

Notez que depuis la version 1.3, InfluxDB n'inclut plus d'interface d'administration web intégrée (sur le port 8083).

Configuration de Telegraf

Le fichier de configuration de Telegraf, telegraf.conf, est également situé dans son répertoire d'installation. Par défaut, Telegraf est pré-configuré pour collecter un ensemble de métriques système (CPU, mémoire, disque, réseau). L'objectif est de spécifier le fichier de journalisation et de s'assurer que Telegraf sait où envoyer les données (vers InfluxDB).

  1. Fichier de journalisation : Définissez un chemin pour les journaux de Telegraf.
  2. Sortie InfluxDB : Vérifiez que la section [[outputs.influxdb]] pointe vers votre instance InfluxDB et spécifiez la base de données cible.

Voici les modifications pertinentes dans telegraf.conf :

# Fichier de journalisation
logfile = "C:\\Surveillance\\Telegraf\\telegraf.log"

# Configuration de la sortie InfluxDB
[[outputs.influxdb]]
 urls = ["http://localhost:8086"] # Adresse de votre instance InfluxDB
 database = "telegraf"           # Nom de la base de données où Telegraf enverra les métriques
 timeout = "5s"

La base de données "telegraf" sera automatiquement créée par InfluxDB lors de la première écriture de données si elle n'existe pas.

Configuration de Grafana

Grafana est généralement prêt à l'emploi avec sa configuration par défaut. Vous pouvez le démarrer directement sans modifications initiales du fichier grafana.ini.

Les paramètres par défaut sont les suivants :

  • Port HTTP : 3000
  • Adresse HTTP : localhost (ou 127.0.0.1)
  • Utilisateur par défaut : admin
  • Mot de passe par défaut : admin
  • Type de base de données : SQLite3 (fichier grafana.db dans Grafana/data)

Démarrage des Services

Pour lancer la pile TIG, vous devez démarrer chaque composant dans un ordre précis.

Démarrage d'InfluxDB

Ouvrez une invite de commande et accédez au répertoire d'installation d'InfluxDB :

cd C:\Surveillance\InfluxDB
influxd.exe -config influxdb.conf

Laissez cette fenêtre de commande ouverte ; InfluxDB doit continuer à s'exécuter.

Démarrage de Telegraf

Ouvrez une nouvelle invite de commande et naviguez vers le répertoire d'installation de Telegraf :

cd C:\Surveillance\Telegraf
telegraf.exe -config telegraf.conf

De même, laissez cette fenêtre ouverte. Telegraf commencera à collecter et à envoyer des métriques à InfluxDB.

Démarrage de Grafana

Naviguez vers le sous-répertoire bin de votre installation Grafana :

cd C:\Surveillance\Grafana\bin
grafana-server.exe

Une fois Grafana démarré, vous verrez des messages dans la console indiquant qu'il est prêt à écouter sur le port 3000.

Pour une utilisation quotidienne, il est recommandé de créer des scripts Batch (.bat) ou des services Windows pour démarrer ces applications en arrière-plan.

Utilisation de Grafana pour la Visualisation

Maintenant que tous les services sont en cours d'exécution, vous pouvez accéder à Grafana pour créer vos tableaux de bord.

Accès à Grafana et Connexion

Ouvrez votre navigateur web et accédez à l'adresse http://localhost:3000. Connectez-vous avec les identifiants par défaut : admin / admin. Il vous sera probablement demandé de changer le mot de passe initial.

Création d'une Source de Données InfluxDB

Avant de pouvoir visualiser les données, Grafana a besoin de savoir où se trouve InfluxDB :

  1. Dans le menu de navigation de Grafana (icône d'engrenage), sélectionnez "Data Sources".
  2. Cliquez sur "Add data source".
  3. Sélectionnez "InfluxDB" parmi les options.
  4. Configurez les paramètres suivants :
    • Name : InfluxDB Local (ou tout autre nom descriptif)
    • URL : http://localhost:8086
    • Database : telegraf (le nom de la base de données que vous avez configurée dans Telegraf)
    • HTTP Method : GET
  5. Cliquez sur "Save & Test". Une confirmation de succès devrait apparaître.

Création d'un Tableau de Bord et d'un Panneau

Avec la source de données configurée, vous pouvez créer votre premier tableau de bord :

  1. Dans le menu de navigation, sélectionnez "Dashboards" puis "New dashboard".
  2. Cliquez sur "Add new panel".
  3. Dans l'éditeur de panneau, sous l'onglet "Query", assurez-vous que votre source de données "InfluxDB Local" est sélectionnée.
  4. Entrez une requête InfluxQL pour récupérer des métriques, par exemple pour l'utilisatino du CPU : ``` SELECT mean("usage_idle") FROM "cpu" WHERE $timeFilter GROUP BY time($__interval) fill(null)
  5. Ajustez les paramètres de visualisation (titre du panneau, axes, légende) selon vos besoins.
  6. Cliquez sur "Apply" pour voir les données, puis "Save" en haut de la page pour sauvegarder votre tableau de bord.

Étiquettes: InfluxDB Telegraf Grafana Windows Surveillance

Publié le 11 juin à 20h59