--- categories: monitoring title: Howto Grafana ... * Documentation : [Grafana](https://grafana.com/) permet d'effectuer des requêtes sur des bases de données, pour en afficher des graphes personnalisés. Nous l'utilisons en combinaison avec [collectd](HowtoCollectd) et [InfluxDB](HowtoInfluxDB). ## Installation Grafana n'étant pas disponible sous Debian Bullseye, nous utilisons les dépôts fournis par GrafanaLabs. ~~~ # echo "deb https://packages.grafana.com/oss/deb stable main" > /etc/apt/sources.list.d/grafana.list # wget -O /etc/apt/trusted.gpg.d/grafana.asc https://packages.grafana.com/gpg.key # dos2unix /etc/apt/trusted.gpg.d/grafana.asc # chmod 644 /etc/apt/trusted.gpg.d/grafana.asc # apt update # apt install grafana # systemctl daemon-reload # systemctl enable grafana-server.service # systemctl start grafana-server.service # grafana-server -v Version 8.2.1 (commit: 88622d7f09, branch: HEAD) # systemctl status grafana-server.service ● grafana-server.service - Grafana instance Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; enabled; vendor preset: enabled) Docs: http://docs.grafana.org Main PID: 2400 (grafana-server) Tasks: 35 (limit: 4915) CGroup: /system.slice/grafana-server.service └─2400 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini --pidfile=/var/run/grafana/grafana-server.pid cfg:default.paths.logs=/var/log/grafana cfg:default.paths.data=/var/lib/grafana cfg:default.paths.plugins=/var/lib/grafana/plugins cfg:default.paths.provisioning=/etc/grafana/provisioning ~~~ ## Configuration On modifie le fichier de configuration `/etc/grafana/grafana.ini` afin de n'écouter qu'en local, pour ensuite utiliser un reverse proxy vers 127.0.0.1:3000. On cache également l'affichage de la version utilisée de Grafana. ~~~ [server] http_addr = 127.0.0.1 [auth.anonymous] hide_version = true ~~~ ### Authentification LDAP Modifier la configuration `/etc/grafana/grafana.ini` : ~~~ [auth.ldap] enabled = true config_file = /etc/grafana/ldap.toml allow_sign_up = true ~~~ Puis configurer le fichier `/etc/grafana/ldap.toml` en conséquence. ### Reverse proxy avec sous dossier Si grafana est dans un sous-dossier de la forme `example.com/grafana/` plutôt que `grafana.example.com`, il faut alors l'indiquer dans la configuration : ~~~ [server] root_url = http://localhost:3000/grafana/ ~~~ ### Emplacement des données Les données de Grafana (sources, dashboards, graphes, utilisateurs, …) sont stockées par défaut dans `/var/lib/grafana`. ### Configuration SMTP Pour pouvoir utiliser la fonction "mot de passe oublié", le serveur SMTP doit être configurée : ~~~ [smtp] enabled = true host = localhost:25 skip_verify = true from_address = grafana@example.com from_name = Grafana Example ~~~ ## Utilisation Les identifiants par défaut sont `admin/admin`, et doivent être changés à la première connexion à l'interface. ### Ajouter une source Pour ajouter par exemple une source [InfluxDB](HowtoInfluxDB), avec les données dans une base [collectd](HowtoCollectd) : * Configuration > Data Sources > Add data source * Choisir InfluxDB * Name : Collectd (pour indiquer la source des données et non le nom de la base) * Query Language : InfluxQL * URL : http://localhost:8086 * Access : Server * Database : collectd * User : \ * Password : \ Avec l'authentification configurée ou non selon la configuration d'[InfluxDB](HowtoInfluxDB#authentification) ### Créer un dashboard * Create > Dashboard * Configurer le dashboard en cliquant sur la roue dentée en haut à droite Un dashboard hérite des permissions de son dossier parent. Pour ne pas avoir les permissions par défaut `every viewers can view` et `every editors can edit`, étant donné que les permissions du dossier par défaut _Général_ ne sont pas modifiables, il faut créer un nouveau dossier n'ayant pas ces permissions et y placer les dashboards. Ainsi, les utilisateurs n'auront par défaut pas accès à tous les dashboards. Des dashboards créés par la communauté peuvent être importés depuis ### Créer un graphe * Se rendre dans le dashboard précédemment créé > En haut à droite, choisir Add panel > Choisir le type de graphe * Cliquer sur Panel Title > Edit * Parcourir les onglets pour choisir la source et configurer le graphe