Skip to content

InfluxDB & Grafana

grafInfluxBanner-Vous voulez superviser vos serveurs tel un chasseur à l’affût du moindre pic de CPU ? Grâce à Grafana et InfluxDB couplé à Telegraf nous allons superviser les métriques système de notre ou nos serveurs (CPU, RAM, Disques…) et créer de supers Dashboards pour superviser le tout !

Voici les étapes de la mis en place de ce stack :

-Installation d’InfluxDB
-Installation de Grafana
-Installation de Telegraf
-Création du premier Dashboard

I – Installation d’InfluxDB

InfluxDB est une base de données orientée “séries temporelles”, totalement adaptée au stockage de métriques. Le stockage interne s’appuie sur la base clé-valeur.
Nous n’avons pas besoin d’en savoir beaucoup plus, nous allons directement l’installer sur un serveur Debian :
wget https://s3.amazonaws.com/influxdb/influxdb_0.9.4.2_amd64.deb
dpkg -i influxdb_0.9.4.2_amd64.deb
service influxdb start

Maintenant qu’InfluxDB est installé et démarré, on va lancer le shell d’InfluxDB :

/opt/influxdb/influx

On va maintenant pouvoir créer notre base qui va recevoir les métriques de nos serveurs :

CREATE DATABASE Servers;
CREATE USER admin WITH PASSWORD 'password';
GRANT ALL ON Servers TO admin;

Ca y’est, InfluxDB est prêt à stocker nos données !

II – Installation de Grafana

On peut ensuite installer l’Interface qui nous permettra de visualiser nos données, Grafana.

Pour  cela on récupère le paquet deb sur leur site et on l’installe :

wget https://grafanarel.s3.amazonaws.com/builds/grafana_2.5.0_amd64.deb
dpkg -i grafana_2.5.0_amd64.deb
service grafana-server start

Si il n’y a pas eu d’erreur, vous devriez pouvoir joindre Grafana sur le port 3000 :

http://IpServeur:3000/
grafana_login

Le login par défaut est admin:admin.

On arrive donc sur un interface un peu vide, normal on a encore rien configuré !

On va donc ajouter une source de données (Data sources) :

grafana_addsource

On rentre donc les informations de notre instance InfluxDB :

grafan_source

On peut également tester la connexion pour être sur !

Ainsi, Grafana est directement relié à InfluxDB, cependant il manque une chose, nos données !

III – Installation de Telegraf

Telegraf est un service léger en GO qui va « shipper » des métriques vers InfluxDB,

Pour l’installer, on récupère la dernière version sur leur dépot GitHub :

wget get.influxdb.org/telegraf/telegraf_0.2.0_amd64.deb
dpkg -i telegraf_0.2.0_amd64.deb

On va maintenant éditer le fichier de configuration /etc/opt/telegraf/telegraf.conf :

[agent]
 interval = "10s"
 debug = false
 hostname = "hostname"
 utc = true
 precision = "s"
[outputs]
[outputs.influxdb]
 url = "http://IpServer:8086" 
 database = "Servers"
 username = "admin"
 password = "password"

On va maintenant démarrer Telegraf :

service telegraf start

Si tout s’est bien passé, Telegraf devrait envoyer ses métriques dans InfluxDB.

IV – Création du premier Dashboard

On va donc revenir sur l’interface de Grafana et vérifier que les données arrivent bien,

Pour cela, on va créer un Dashboard depuis ce menu :

grafana_createdash

On peut désormais ajouter notre premier Graph :

grafana_add_graff

On va éditer le graph (au niveau de son titre) :

grafana_edit_graph

Maintenant, il suffit de sélectionner les données qu’on souhaite avoir dans notre graph, sous forme de requête :

grafana_request

Et voilà, comme par magie, vous avez votre premier graph :

grafana_firstgraph

Il suffit de répéter cela de manière à créer un Dashboard sympa, voici un des miens :

dashboard_grafana

Vous pouvez également créer plein de Dashboards, lié à différents services par exemple.

Si vous avez la moindre question sur l’installation de ce stack de supervision, n’hésitez pas !

Published inDevOpsLinuxMonitoring

2 Comments

  1. Bonjour,

    Ton fichier telegraf.conf ne contient que les lignes que tu as cités ? Je n’ai pas encore regardé comment il était constitué (je découvre la solution Telegraf, InfluxDB et Grafana) mais j’avais l’impression qu’il fallait indiquer ce que l’on voulait monitorer.

    • valentin valentin

      De base, sans rien préciser, Telegraf envoie les métriques de bases. Tu peux ensuite rajouter dans la configuration plein de plugins tel que Docker, Elasticsearch … Pour cela, je te conseille de visiter leur Github : https://github.com/influxdata/telegraf

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Proudly hosted with Open-sources Softwares.