Comment installer la pile TIG (Telegraf, InfluxDB et Grafana) sur Ubuntu 18.04 LTS

InfluxDB est une base de données de séries chronologiques open-source écrite en Go. Optimisée pour un stockage rapide et à haute disponibilité, elle est utilisée comme magasin de données pour tout cas d’utilisation impliquant de grandes quantités de données horodatées, notamment la surveillance DevOps, les données de journal, les métriques d’application, les données de capteurs IoT et les analyses en temps réel.

Telegraf est un agent permettant de collecter, traiter, agréger et écrire des métriques. Il prend en charge divers plugins de sortie tels que influxdb, Graphite, Kafka, OpenTSDB, etc.

Grafana est une suite open source de visualisation et de surveillance des données. Elle offre une prise en charge de Graphite, Elasticsearch, Prometheus, influxdb et de nombreuses autres bases de données. L’outil fournit un magnifique tableau de bord et des analyses métriques, avec la possibilité de gérer et de créer ton propre tableau de bord pour tes apps ou la surveillance des performances de ton infrastructure.

Dans ce tutoriel, je vais te montrer comment installer et configurer la pile TIG (Telegraf, influxdb et Grafana) en utilisant un seul serveur Ubuntu 18.04. Nous utiliserons la pile TIG pour surveiller les charges du système telles que le réseau, la mémoire RAM, le temps de fonctionnement, etc.

Conditions préalables

  • Ubuntu 18.04
  • Privilèges de racine

Ce que nous allons faire ?

  1. Installer InfluxDB
  2. Créer une base de données et un utilisateur InfluxDB
  3. Installer l’agent Telegraf
  4. Configurer Telegraf
  5. Installer Grafana
  6. Configurer la source de données Grafana
  7. Configurer le tableau de bord Grafana

Étape 1 – Installer InfluxDB

Dans cette première étape, nous allons installer la base de données de séries chronologiques influxdb sur le système Ubuntu. Nous installerons à la fois ‘influxdb’ et ‘telegraf’ à partir du même dépôt ‘influxdata’, les deux logiciels ayant été créés par la même organisation.

Ajoute la clé influxdata.

sudo curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -

Ajoute le référentiel influxdata.

source /etc/lsb-release
echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Mets maintenant à jour le référentiel et installe le paquet ‘influxdb’ en utilisant la commande apt ci-dessous.

sudo apt update
sudo apt install influxdb -y

Installe InfluxDB

Une fois l’installation terminée, démarre le service influxdb et active-le pour qu’il se lance chaque fois au démarrage du système.

sudo systemctl start influxdb
sudo systemctl enable influxdb

Vérifie maintenant les ports ouverts sur le système.

netstat -plntu

Vérifie les ports ouverts avec netstat

Et assure-toi que les ports influxdb ‘8088’ et ‘8086’ sont dans l’état ‘LISTEN’.

Étape 2 – Crée la base de données et l’utilisateur InfluxDB

Afin de stocker toutes les données des agents telegraf, nous devons configurer la base de données et l’utilisateur influxdb.

InfluxDB fournit l’outil CLI appelé ‘influx’ pour interagir avec un serveur InfluxDB. La commande ‘influx’ est semblable à ‘mysql’ sur MySQL, et ‘mongo’ sur la base de données MongoDB.

Exécute la commande ‘influx’ ci-dessous.

influx

Tu es maintenant connecté au serveur influxdb par défaut sur le port ‘8086’.

Crée une nouvelle base de données et un nouvel utilisateur ‘telegraf’ avec le mot de passe ‘hakase-ndlr’ en exécutant les requêtes influxdb ci-dessous.

create database telegraf
create user telegraf with password 'hakase-ndlr'

Vérifie maintenant la base de données et l’utilisateur.

show databases
show users

Assure-toi que tu as bien la base de données et l’utilisateur nommés ‘telegraf’ sur le serveur influxdb.

Créer une base de données et un utilisateur InfluxDB

Étape 3 – Installe l’agent Telegraf

Telegraf a été créé par ‘influxdata’, la même organisation qui a créé influxdb. Donc lorsque nous ajoutons la clé et le référentiel influxdata au système, cela signifie que nous pouvons installer les deux applications.

Installe le paquet telegraf à l’aide de la commande apt ci-dessous.

sudo apt install telegraf -y

Une fois l’installation terminée, démarre le service telegraf et active-le pour qu’il se lance à chaque fois au démarrage du système.

sudo systemctl start telegraf
sudo systemctl enable telegraf

L’agent telegraf est en place et fonctionne, vérifie-le à l’aide de la commande ci-dessous.

sudo systemctl status telegraf

Installer l'agent télégraphique

Étape 4 – Configurer Telegraf

Telegraf est un agent piloté par des plugins et possède 4 types de plugins de concept.

  1. Utilise les ‘Input Plugins’ pour collecter les métriques.
  2. Utilise les ‘Plugins de traitement’ pour transformer, décorer et filtrer les métriques.
  3. Utilise les ‘Plugins d’agrégation’ pour créer et agréger les métriques.
  4. Et utilise les ‘Plugins de sortie’ pour écrire les métriques vers diverses destinations, y compris influxdb.

Dans cette étape, nous allons configurer Telegraf pour qu’il utilise les plugins d’entrée de base pour collecter les mesures du système du serveur et utiliser influxdb comme plugin de sortie.

Va dans le répertoire ‘/etc/telegraf’ et renomme le fichier de configuration par défaut.

cd /etc/telegraf/
mv telegraf.conf telegraf.conf.default

Crée maintenant une autre configuration ‘telegraf.conf’ en utilisant l’éditeur vim.

vim telegraf.conf

Colle les configurations ci-dessous.

# Global Agent Configuration
[agent]
  hostname = "hakase-tig"
  flush_interval = "15s"
  interval = "15s"


# Input Plugins
[[inputs.cpu]]
    percpu = true
    totalcpu = true
    collect_cpu_time = false
    report_active = false
[[inputs.disk]]
    ignore_fs = ["tmpfs", "devtmpfs", "devfs"]
[[inputs.io]]
[[inputs.mem]]
[[inputs.net]]
[[inputs.system]]
[[inputs.swap]]
[[inputs.netstat]]
[[inputs.processes]]
[[inputs.kernel]]

# Output Plugin InfluxDB
[[outputs.influxdb]]
  database = "telegraf"
  urls = [ "http://127.0.0.1:8086" ]
  username = "telegraf"
  password = "hakase-ndlr"

Sauvegarde et quitte.

Configurer Telegraf

Remarque :

Telegraf fournit la commande telegraf pour gérer la configuration, y compris générer la configuration elle-même, exécute la commande comme ci-dessous.

telegraf config -input-filter cpu:mem:disk:swap:system -output-filter influxdb > telegraf.conf
cat telegraf.conf

Configuration du télégraphe

Redémarre le service telegraf et vérifie qu’il n’y a pas d’erreur.

sudo systemctl restart telegraf

Maintenant, teste les paramètres de telegraf à l’aide de la commande ci-dessous.

sudo telegraf -test -config /etc/telegraf/telegraf.conf --input-filter cpu
sudo telegraf -test -config /etc/telegraf/telegraf.conf --input-filter net
sudo telegraf -test -config /etc/telegraf/telegraf.conf --input-filter mem

Test config

La configuration d’InfluxDB et de Telegraf est terminée.

Étape 6 – Installer Grafana

Dans cette étape, nous allons installer le magnifique tableau de bord Grafana pour la visualisation des données.

Ajoute la clé et le référentiel Grafana.

sudo curl https://packagecloud.io/gpg.key | sudo apt-key add -
echo 'deb https://packagecloud.io/grafana/stable/debian/ stretch main' > /etc/apt/sources.list.d/grafana.list

Mets à jour le référentiel et installe le paquet grafana à l’aide de la commande apt ci-dessous.

sudo apt update
sudo apt install grafana -y

Installer Grafana

Une fois l’installation terminée, démarre le service grafana et active-le pour qu’il se lance à chaque fois au démarrage du système.

sudo systemctl start grafana-server
sudo systemctl enable grafana-server

Le serveur grafana est en place et fonctionne sur le port par défaut ‘3000’, vérifie-le à l’aide de netstat.

netstat -plntu

Tu obtiendras le résultat ci-dessous.

Vérifier les ports

Étape 7 – Configurer la source de données Grafana

Ouvre ton navigateur Web et tape l’adresse IP du serveur avec le port 3000.

http://192.168.33.15:3000/

Connecte-toi avec l’utilisateur par défaut ‘admin’ et le mot de passe ‘admin’.

Connecte-toi à Grafana

La page permettant de modifier le mot de passe par défaut va s’afficher. Saisis ton nouveau mot de passe et clique sur le bouton ‘Enregistrer’.

Définir un nouveau mot de passe

Et tu seras redirigé vers le tableau de bord Grafana par défaut.

Clique sur le bouton ‘Ajouter une source de données’ pour ajouter la source de données influxdb.

Tableau de bord Grafana

Saisis les détails des configurations du serveur influxdb.

  • Nom : influxdb
  • Type : influxdb
  • URL : http://localhost:8086/

Définir les détails de l'influxdb

Fais défiler jusqu’à la page inférieure et tape les détails des paramètres de la base de données influxdb.

  • Base de données : telegraf
  • Utilisateur : telegraf
  • Mot de passe : « hakase-ndlr ».

Paramètres de la base de données

Clique sur le bouton « Enregistrer et tester » et vérifie que tu obtiens le résultat « La source de données fonctionne ».

La source de données InfluxDB a été ajoutée au serveur Grafana.

Étape 8 – Configurer le tableau de bord Grafana

Après avoir ajouté l’influxdb comme source de données au serveur Grafana, dans cette étape, nous allons importer le tableau de bord Grafana basé sur notre configuration des plugins d’entrée Telegraf.

Grafana fournit le référentiel pour les plugins et les tableaux de bord grafana.

Pour importer le tableau de bord grafana, clique sur le menu ‘+’ dans le panneau de gauche et clique sur ‘Importer’.

Configurer le tableau de bord Grafana

Ouvre maintenant l’exemple de tableau de bord Grafana depuis l’URL‘https://grafana.com/dashboards/5955‘ et clique sur le bouton ‘Copier l’ID dans le presse-papiers’.

Colle l’identifiant du tableau de bord.

Importe la configuration du tableau de bord

Et tu seras redirigé automatiquement vers la configuration du tableau de bord.

Dans la section des options, clique sur InfluxDB et choisis ton serveur Influxdb, puis clique sur le bouton ‘Importer’.

Importation du serveur Influxdb

Et voici quelques captures d’écran du tableau de bord importé.

Tableau de bord importé 1

Tableau de bord importé 2

L’installation de la pile TIG (Telegraf, InfluxDB et Grafana) sur Ubuntu 18.04 s’est terminée avec succès.

Référence

Vous aimerez aussi...