
Installation de Telegraf + InfluxDB + Chronograf + Grafana
Il est temps de donner un peu d’avance à Telegraf, J’ai quelques articles en attente qui pourraient être intéressants, Donc, si vous pensez que ce n’est pas grave, Aujourd’hui, nous allons voir comment assembler la base, InfluxDB pour stocker les métriques, Chronograf comme visionneuse native; et, Comment pourriez-vous ne pas, Grafana, Parce que nous savons tous que c’est le meilleur visualiseur de métriques et que nous ferons de la magie.
Ce que j’ai dit, Nous utiliserons ce document comme base initiale pour certains articles que nous publierons sur le blog afin d’exploiter notre système de surveillance. La pile TICK (Télégraf, InfluxDB, Chronograf et Kapacitor) Il peut s’avérer utile d’adopter et d’étendre notre environnement de surveillance, personnellement pour la visualisation de certaines métriques en temps réel, et à cette fin, l’agent Telegraf collectera les données qui nous intéressent, il les stockera dans notre InfluxDB et nous pourrons les visualiser dans Chronograf. Bien que ce qui a été dit, personnellement, je suis beaucoup plus fan de Grafana pour toute son élasticité, mais Chronograf peut s’avérer utile pour apprendre le langage Flux. Puisque c’est bien, InfluxDB 1.x utilisait InfluxQL comme langage de requête et depuis la version 2.x, Flux est utilisé, Et certains d’entre nous ont du mal à changer 🙂
Avec Telegraf, nous serons en mesure de collecter des métriques à partir de l’ordinateur sur lequel nous installons l’agent ou également sur des ordinateurs distants où il ne peut pas être installé, Par exemple, sur un interrupteur, et nous consultons ces types de machines via SNMP. L’idée finale est d’avoir des tableaux de bord Grafana qui nous montrent les données que nous collectons, Et j’insiste, Pour moi, le point fort est de pouvoir avoir des données avec des intervalles de 1 deuxième.
Installation d’InfluxDB
InfluxDB est une base de données de séries de données TSDB (Base de données de séries chronologiques), Libre, beaucoup plus efficace dans le stockage et le traitement de ce type de données. Au moment de la publication de l’article, nous avions la version 2.1, avec les commandes suivantes, télécharger le dépôt InfluxDB et installer InfluxDB, en plus de lever le service et de vérifier son état (ah, Cet article est basé sur un Ubuntu 20.04):
wget -qO- https://repos.influxdata.com/influxdb.key | GPG --Dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdb.gpg > /exportation dev/null DISTRIB_ID=$(lsb_release -oui); exportation DISTRIB_CODENAME=$(lsb_release -sc) ÉCHO "Deb [signed-by=/etc/apt/trusted.gpg.d/influxdb.gpg] https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} étable" | sudo tee /etc/apt/sources.list.d/influxdb.list > /dev/null sudo apt-get update && Sudo apt-get install influxdb2 sudo systemctl start influxdb sudo systemctl status influxdb sudo systemctl enable influxdb
Ensuite, nous allons installer l’interface de ligne de commande Influx, pour configurer plus tard au minimum InfluxDB et bon, en tant que client CLI de ligne de commande pour la gestion si nécessaire.
wget https://dl.influxdata.com/influxdb/releases/influxdb2-client-2.2.0-linux-amd64.tar.gz tar xvzf influxdb2-client-2.2.0-linux-amd64.tar.gz sudo cp influxdb2-client-2.2.0-linux-amd64/influx /usr/local/bin/ rm -rf influxdb2-client-2.2.0-linux-amd64/
Vamos a configurar InfluxDB con influx CLI, con 'sudo influx setup’ crearemos el usuario, contraseña, Primera Organización, y primer bucket para almacenar, La retención de datos para este bucket, y confirmamos:
Configuration de Sudo Influx > Bienvenue chez InfluxDB 2.0! ? Veuillez saisir votre nom d’utilisateur principal influx_user ? Veuillez saisir votre mot de passe ************** ? Veuillez saisir à nouveau votre mot de passe ************** ? Saisissez le nom de votre organisation principale : Open Services, IT. ? Saisissez le nom de votre compartiment principal Monitor ? Veuillez saisir votre période de conservation en heures, ou 0 pour une infinité 0 ? Configuration avec ces paramètres? Nom d’utilisateur: influx_user Organisation: Open Services IT Bucket: Période de rétention du moniteur: Infini (o/N) et
Puits, Quelques notes maintenant, pour vérifier notre organisation et son identité, Courir:
sudo influx org list ID Nom x4473x3a36x4d008 Ouvrir Services IT
Et si nous voulons lister notre Token:
sudo influx liste d’authentification
ID Description Token User Name User ID Permissions 08xx775x1706000 influx_user's Token Ts...Q== influx_user 08xx1253x3060 [lire:/Autorise...
Installation de Chronograf
Pour installer Chronograf, le visualiseur InfluxDB, Nous le ferons aussi vite:
wget https://dl.influxdata.com/chronograf/releases/chronograf_1.9.1_amd64.deb sudo dpkg -i chronograf_1.9.1_amd64.deb sudo systemctl status chronograf sudo systemctl enable chronograf
Nous lançons l’assistant de configuration, Cliquez sur “Démarrer”,
Et nous remplissons les données suivantes:
- URL de connexion: IP ou nom d’hôte et port InfluxDB (Faire défaut 8086), Il peut s’agir de HTTP://127.0.0.1:8086 s’il s’agit de la même machine.
- Nom de la connexion: Nous donnons un nom à la connexion.
- Organisation: Nous indiquons le nom de l’organisation InfluxDB.
- Jeton: Collez le jeton d’accès.
- Nom de la base de données Telegraf: Optionnel, si nous voulons un autre nom BD, Par défaut, il s’appellera 'Telegraf'.
Cliquez sur “Ajouter une connexion” et nous terminons l’assistant de connexion.
Installation de Telegraf
Puits, évidemment, cela dépendra de l’OS où nous devons installer Telegraf, puisque nous pouvons l’installer sur Windows, Mac, Ubuntu, Centos, RedHat, Debian, Conteneurs… Donc, si vous avez besoin, Découvrez leur Site officiel. Cet exemple concerne les systèmes Ubuntu/Debian:
wget -qO- https://repos.influxdata.com/influxdb.key | sudo tee /etc/apt/trusted.gpg.d/influxdb.asc >/dev/null source /etc/os-release echo "Deb https://repos.influxdata.com/${ID} ${VERSION_CODENAME} étable" | sudo tee /etc/apt/sources.list.d/influxdb.list sudo apt-get update sudo apt-get install -y telegraf
Le fichier de configuration de Telegraf se trouve dans '/etc/telegraf/telegraf.conf’ Et si nous l’éditons, nous aurons des possibilités infinies d’obtenir des données, Équipe à domicile (ou à partir d’une autre télécommande si nécessaire). Et c’est ce que nous verrons dans les prochains articles, Donc, ce que je vous laisse ici, c’est la configuration commune, qui dira à Telegraf d’envoyer les données à notre InfluxDB, Ainsi, les paramètres de sortie seraient au moins les suivants:
... [[outputs.influxdb_v2]] URL = ["HTTP://DIRECCION_IP_INFLUXDB:8086"] # organisation requise = "Open Services IT" seau = "Moniteur" jeton = "T... Q==" ...
Et rien, Commencé, activer et afficher l’état du service Telegraf avec:
Sudo systemctl enable telegraf sudo systemctl restart telegraf sudo systemctl status telegraf
Et si on revenait à notre Chronograf, et explorez nos indicateurs de seau, Nous pourrons commencer à visualiser que cela collecte déjà des données!
Installation de Grafana
Oh, bien, Venez finir, c’est du gérondif… si nous voulons, sur la même machine, nous pouvons monter Grafana, et créer un connecteur contre InfluxDB pour bien que, visualiser, Traiter les données et faire de la magie, Affichage des données sur les cartes, pat, Fromages, Graphiques à barres. Lignes…
sudo apt-get install -y apt-transport-https sudo apt-get install -y software-properties-common wget wget -q -O - https://packages.grafana.com/gpg.key | Sudo apt-key add - ÉCHO "Deb https://packages.grafana.com/oss/deb principale stable" | sudo tee -a /etc/apt/sources.list.d/grafana.list sudo apt-get update sudo apt-get install -y grafana
Et rien, Commencé, activer et afficher l’état du service Grafana avec:
Sudo systemctl start grafana-server sudo systemctl status grafana-server sudo systemctl enable grafana-server
Si nous accédons à http avec un navigateur://DIRECCION_IP_GRAFANA:3000 Nous validerons avec le nom d’utilisateur et le mot de passe admin par défaut, que nous devrions s’il vous plaît changer au fur et à mesure que nous nous connectons.
La prochaine chose sera que, créer un connecteur contre InfluxDB pour visualiser les données que nous y stockons à l’avenir, Nous allons “Configuration” > “Sources des données” > “Ajouter une source de données”.
Voir l’annonce, C’est génial où nous pouvons visualiser les données… Imaginez les bases de données internes que vous avez dans l’entreprise… Allez, je suis foutu, nous recherchons InfluxDB et le sélectionnons.
Et nous avons créé le connecteur, Indiquant:
- Nom: Nom de la connexion.
- Langage de requête: Flux
- URL: HTTP://DIRECCION_IP_INFLUXDB:8086
- Organisation: Le nom de l’organisation InfluxDB
- Jeton: Collez le jeton d’accès.
- Compartiments par défaut: Nous indiquons le seau que nous utiliserons.
Et nous cliquons sur “Sauvegarder & Test”, Si nous avons bien suivi toutes les étapes, Cela connectera!
Et si nous créions un nouveau tableau de bord, nous créons un nouveau Panel, nous indiquons par exemple une série temporelle, C’est, L’affichage linéaire typique. Et nous avons mis la consultation Flux, Nous pourrons voir les données! Il est maintenant temps de jouer avec les options d’affichage, Autre type de panneau… et bien sûr, Commencez à nourrir ceci! Si nous ne connaissons pas Flux, le plus simple sera de copier les requêtes depuis Chronograf. Ou… importer directement des tableaux de bord dans Grafana à partir de personnes qui ont déjà travaillé 🙂 dessus Et nous verrons de nombreux exemples, Vous verrez à quel point c’est cool…
Je vous dirais beaucoup de choses, Mais il est trop tard, C’est un long post et nous allons voir dans de futurs articles de nombreuses idées qui ne manqueront pas d’attirer votre attention. Si vous vous ennuyez, jetez un coup d’œil à bourrer qui peut être ajouté à Grafana…
Ce que j’ai dit, Merci beaucoup si vous êtes arrivés jusqu’ici, Merci de partager sur les réseaux sociaux, pour les goûts et les trucs, qu’il 🙂 faut être reconnaissant
Succès!