Ceci est une ancienne révision du document !
Installation de Grafana
Création — Nicolas THOREZ 2021/09/02 14:53
Mise à jour — Nicolas THOREZ 2022/11/27 18:33
Présentation
Grafana est un outil permettant l'unification, l'uniformisation et la visualisation de données collectés. Il permet de gérer des alertes ce qui en fait un outil très intéressant dans le cadre des opérations de maintient en conditions opérationnelles d'une infrastructure. Pour son bon fonctionnement, Grafana va être aider de InfluxDB et de Telegraf dans les rôles suivants :
Grafana: Tableau de bord pour la visualisation des données.InfluxDB: Base de données de type Time Series, utile en terme de performances.Telegraf: Agent de collecte de données sur les postes clients.
Références :
Prérequis
InfluxDB, Telegraf et Grafana nécessitent certains paquets, il faut donc s'assurer de les installer avant :
apt install -y gnupg2 curl software-properties-common
InfluxDB
Environnement
Cette procédure a été réalisée et testé sur une VM en Debian 11, hébergée par un serveur Proxmox 7.0.Droits
Cette procédure nécessite les droitsroot. Par conséquent, faîtes attention à ce que vous faîtes et rappelons-le, les sauvegardes et snapshots de VM sont toujours utiles.Installation
- On commence par ajouter le dépôt avant de mettre à jour notre base :
add-apt-repository "deb https://repos.influxdata.com/debian bullseye stable" apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 684A14CF2582E0C5 apt update
- On peut maintenant télécharger et installer
InfluxDB:
apt install -y influxdb
- Le service
influxdbnécessite l'écoute du port8086. Il nous faut donc ouvrir ce port :
<shx bash>iptables -A INPUT -p tcp –dport 8086 -m state –state NEW,ESTABLISHED,RELATED -j ACCEPT</sxh>
- On peut désormais activer et lancer le service :
systemctl enable influxdb systemctl start influxdb systemctl status influxdb
Paramétrage
- On va maintenant créer la base de données (
influx_bddpour l'exemple) :
influx -execute "CREATE DATABASE influx_bdd"
- On crée l'utilisateur et on lui donne les droits sur la base :
influx -execute "CREATE USER influx_user WITH PASSWORD 'P@ssw0rd'" influx -execute "GRANT ALL ON influx_bdd TO influx_user"
- On règle la rétention de données :
influx -execute "CREATE RETENTION POLICY "a_year" ON "influx_bdd" DURATION 52w REPLICATION 1 DEFAULT"
Telegraf
- On installe le paquet à partir des dépôts déjà configurés :
apt install -y telegraf
- On configure l'agent en éditant le fichier
/etc/telegraf/telegraf.conf. Ce fichier contient énormément de données, toutes ne vous seront pas obligatoirement utiles. Vous aurez cependant besoin de spécifier :- Section
[agent](facultatif) :logtarget = "file": Active les logs locaux.logfile = "/var/log/telegraf/telegraf.log": Fichier de destination pour l'écriture des logs.logfile_rotation_interval = "24h": Age du fichier log avant rotation.logfile_rotation_max_size = "1GB": Taille maximale du fichier log avant rotation.logfile_rotation_max_archives = 5: Nombre de fichier de log à conservé.
- Section
outputs.influxdb (obligatoire)urls = ["http://xxx.xxx.xxx.xxx:8086"]: Adresse du serveurinfluxdb.database = "influx_bdd": Nom de la base.username = "influx_user": Utilisateur pour la connexion.password = "P@ssw0rd": Mot de passe pour la connexion.
- Sections
inputs.*- On active toutes les sections
inputsqui nous intéresse.
- Une fois les paramétrages terminés, on active le service :
systemctl enable telegraf systemctl start telegraf
Grafana
Installation
- Une fois les agents installés sur tous les serveurs à monitorer, on peut passer à
Grafana. On commence donc par l'ajout du dépôt :
curl -fsSL https://packages.grafana.com/gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/grafana.gpg add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
- On installe le paquet :
apt update && apt -y install grafana
- Le service nécessite l'accès au port
3000, on paramètre donc le pare-feu en ce sens :
-A INPUT -p tcp --dport 3000 -m state --state NEW,ESTABLISHED,RELATED -j SHYRKA
- On peut désormais activer et lancer le service :
systemctl enable grafana-server systemctl start grafana-server
Paramétrages
- On accède donc à l'interface de
grafanasur le port3000du serveur. - Il nous faut commencer par définir le mot de passe administrateur. Par défaut, le compte utilisateur est
adminet son mot de passeadmin:
- On renseigne le nouveau mot de passe et on clique sur
Submit:
- On doit ajouter la source de données
influxdb. On va donc cliquer sur l'icône des paramètres puisData sources:
- On clique sur
Add data source:
- Il y a de nombreuses sources possibles. On recherche donc
infludbet on clique sur la source :
- On renseigne :
URL: l'adresse et le port du serveurinfluxdb.Database: le nom de la base.User: l'utilisateur pour la connexion.Password: le mot de passe de l'utilisateur.
- Une fois terminé, on clique sur
Save & test:
- Si tout est correct, le système nous l'indique :
- On peut désormais créer le tableau de données ou
dashboard. Il est possible de le créer de toute pièce (option+ New dashboard) mais le plus simple est d'en importer un. Le site Grafana - Dashboards en propose de nombreux. Du coup, on va cliquer sur l'ongletDashboardspuis+ Import:
- On entre le numéro du
dashboardà importer et on clique surLoad:
- On indique la source de données et on clique sur
Import:
- On accède alors à notre
dashbord. Il ne nous reste plus qu'à l'enregistrer :
- On clique donc sur
Save:












Discussion