Recherche de site Web

Installez Glances, InfluxDB et Grafana pour surveiller CentOS 7


Glances est un outil de surveillance open source gratuit, moderne, multiplateforme, en temps réel et de type htop, doté de fonctionnalités avancées. Il peut fonctionner dans différents modes : en mode autonome, en mode client/serveur et en mode serveur web.

InfluxDB est une base de données de séries temporelles open source et évolutive pour les métriques, les événements et les analyses en temps réel.

Grafana est un outil multiplateforme open source, riche en fonctionnalités, puissant, élégant et hautement extensible pour la surveillance et l'analyse des métriques, avec des tableaux de bord magnifiques et personnalisables. Il s'agit de facto d'un logiciel d'analyse de données.

Dans cet article, nous expliquerons comment installer et configurer Glances, InfluxDB et Grafana pour surveiller les performances d'un CentOS 7. serveur.

Étape 1 : Installer Glances dans CentOS 7

1. Commencez par installer la dernière version stable de glances (v2.11.1) à l'aide de PIP. Si vous n'avez pas pip, installez-le comme suit, y compris les en-têtes Python requis pour l'installation de psutil.

yum install python-pip python-devel	

2. Une fois que vous avez PIP et les en-têtes Python, exécutez la commande suivante pour installer la dernière version stable de glances. et vérifiez la version.

pip install glances
glances -V

Glances v2.11.1 with psutil v5.4.7

Alternativement, si glances est déjà installé, vous pouvez le mettre à niveau vers la dernière version à l'aide de la commande suivante.

pip install --upgrade glances

3. Vous devez maintenant lancer looks via systemd pour qu'il fonctionne en tant que service. Créez une nouvelle unité en créant un fichier appelé glances.service dans /etc/systemd/system/.

vim /etc/systemd/system/glances.service

Copiez et collez la configuration suivante dans le fichier glances.service. L'option --config spécifie le fichier de configuration, l'option --export-influxdb indique à Glicks d'exporter les statistiques vers un serveur InfluxDB et l'option --disable-ip désactive le module IP.

[Unit]
Description=Glances
After=network.target influxd.service

[Service]
ExecStart=/usr/bin/glances --config /home/admin/.config/glances/glances.conf --quiet --export-influxdb --disable-ip
Restart=on-failure
RestartSec=30s
TimeoutSec=30s

[Install]
WantedBy=multi-user.target

Enregistrez le fichier et fermez-le.

4. Rechargez ensuite la configuration du gestionnaire systemd, démarrez le service Coups d'oeil, affichez son état et activez-le pour démarrer automatiquement au moment du démarrage.

systemctl daemon-reload 
systemctl start glances.service
systemctl status glances.service
systemctl enable glances.service

5. Ensuite, vous devez télécharger le fichier de configuration des regards fourni par le développeur à l'aide de la commande wget, comme indiqué.

mkdir ~/.config/glances/
wget https://raw.githubusercontent.com/nicolargo/glances/master/conf/glances.conf -P ~/.config/glances/ 

6. Afin d'exporter les statistiques Glances vers une base de données InfluxDB, vous avez besoin de la bibliothèque Python InfluxdDB, que vous peut l'installer à l'aide de la commande pip.

sudo pip install influxdb

Étape 2 : installer InfluxDB dans CentOS 7

7. Ensuite, vous devez ajouter le référentiel InfluxDB Yum pour installer la dernière version du package InfluxDB comme indiqué.

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo
[influxdb]
name = InfluxDB Repository - RHEL $releasever
baseurl = https://repos.influxdata.com/rhel/$releasever/$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
EOF

8. Après avoir ajouté le référentiel à la configuration YUM, installez le package InfluxDB en exécutant.

yum install influxdb

9. Ensuite, démarrez le service InfluxDB via systemd, confirmez qu'il est en cours d'exécution en affichant son état et activez-le pour démarrer automatiquement au démarrage du système.

systemctl start influxdb
systemctl status influxdb
systemctl enable influxdb

10. Par défaut, InfluxDB utilise le port TCP 8086 pour la communication client-serveur via l'API HTTP d'InfluxDB, vous devez ouvrir ce port dans votre pare-feu à l'aide du pare-feu-cmd.

firewall-cmd --add-port=8086/tcp --permanent
firewall-cmd --reload

11. Ensuite, vous devez créer une base de données dans InfluxDB pour stocker les données à partir de coups d'œil. La commande influx incluse dans les packages InfluxDB est le moyen le plus simple d'interagir avec la base de données. Exécutez donc influx pour démarrer la CLI et vous connecter automatiquement à l'instance InfluxDB locale.

influx

Exécutez les commandes suivantes pour créer une base de données appelée coups d'œil et afficher les bases de données disponibles.

Connected to http://localhost:8086 version 1.6.2
InfluxDB shell version: 1.6.2
> CREATE DATABASE glances
> SHOW DATABASES
name: databases
name
----
_internal
glances
> 

Pour quitter le shell InfluxQL, tapez exit et appuyez sur Entrée.

Étape 3 : Installer Grafana dans CentOS 7

12. Maintenant, installez Grafana depuis son dépôt officiel YUM, commencez par ajouter la configuration suivante à /etc/yum.repos.d/grafana.repo fichier de référentiel .

[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/7/$basearch
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

13. Après avoir ajouté le référentiel à la configuration YUM, installez le package Grafana en exécutant.

yum install grafana

14. Une fois que vous avez installé Grafana, rechargez la configuration du gestionnaire systemd, démarrez le serveur grafana, vérifiez si le service est opérationnel en affichant son état et activez-le automatiquement. démarrer au moment du démarrage.

systemctl daemon-reload 
systemctl start grafana-server 
systemctl status grafana-server 
systemctl enable grafana-server

15. Ensuite, ouvrez le port 3000 sur lequel le serveur Grafana écoute, dans votre pare-feu à l'aide du pare-feu-cmd.

firewall-cmd --add-port=3000/tcp --permanent
firewall-cmd --reload

Étape 4 : Surveiller les métriques du serveur CentOS 7 via Grafana

16. À ce stade, vous pouvez utiliser l'URL suivante pour accéder à l'interface Web Grafana, qui redirigera vers la page de connexion, utilisez les informations d'identification par défaut pour vous connecter.

URL: http://SERVER_IP:3000
Username: admin 
Password: admin

Il vous sera demandé de créer un nouveau mot de passe. Une fois cela fait, vous serez redirigé vers le tableau de bord d'accueil, comme indiqué dans la capture d'écran ci-dessous.

17. Ensuite, cliquez sur Créez votre première source de données, qui doit être une base de données InfluxDB. Sous Paramètres, saisissez un nom approprié, par exemple Glances Import, puis utilisez les valeurs suivantes pour les deux autres variables importantes (URL HTTP et Base de données InfluxDB), comme indiqué dans la capture d'écran.

HTTP URL: http://localhost:8086
InfluxDB Details - Database: glances

Cliquez ensuite sur Enregistrer et tester pour vous connecter à la source de données. Vous devriez recevoir un retour indiquant « La source de données fonctionne ».

18. Vous devez maintenant importer le tableau de bord Glances. Cliquez sur le plus (+) et accédez à Importer comme indiqué dans la capture d'écran.

17. Vous aurez besoin soit de l'URL ou de l'ID du tableau de bord Glances, soit de télécharger son fichier .JSON que vous pouvez trouver sur Grafana.com. Dans ce cas, nous utiliserons le Glances Dashboard créé par le développeur de Glances, son URL est https://grafana.com/dashboards/2387 ou son ID est 2387.

18. Une fois le tableau de bord Grafana chargé, sous options, recherchez les regards et choisissez une source de données InluxDB (Glances Import) que vous avez créée précédemment, puis cliquez sur Importer comme indiqué dans la capture d'écran suivante.

19. Après avoir importé avec succès le tableau de bord Glances, vous devriez pouvoir regarder des graphiques montrant les métriques de votre serveur telles que fournies par Glances via influxdb.

C'est tout pour le moment! Dans cet article, nous avons expliqué comment surveiller le serveur CentOS 7 avec Glances, InfluxDB et Grafana. Si vous avez des questions ou des informations à partager, utilisez le formulaire de commentaires ci-dessous pour le faire.