GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Prometheus sur CentOS 8 / RHEL 8

Prométhée est un outil open source de surveillance, d'interrogation et d'alerte. Construit à l'origine par Soundcloud en 2012, cet outil riche en fonctionnalités a été adopté par plusieurs entreprises pour surveiller leur infrastructure informatique et s'assurer que tous les systèmes fonctionnent correctement. Prometheus vous permet d'interroger et d'extraire des métriques de séries chronologiques telles que l'utilisation du processeur et de la mémoire via le protocole HTTP et visualisez-les sur des graphiques en temps réel. Vous pouvez également configurer Prometheus pour envoyer des alertes en cas d'indisponibilité d'un nœud ou d'un service et l'intégrer à d'autres outils de surveillance tiers tels que Grafana pour une meilleure visualisation des données. Dans ce guide, nous examinerons l'installation de Prometheus sur le système CentOS 8/RHEL 8.

Étape 1) Création d'un utilisateur et d'un groupe Prometheus

Pour commencer, nous allons créer un utilisateur système pour Prometheus. Exécutez la commande ci-dessous pour y parvenir.

[[email protected] ~]# useradd -m -s /bin/false prometheus[[email protected] ~]# id prometheusuid=1002(prometheus) gid=1002(prometheus) groups=1002(prometheus)[[ e-mail protégé] ~]#

Comme vous l'avez peut-être remarqué, l'utilisateur du système n'a aucune autorisation de connexion comme spécifié dans l'option /bin/false

Étape 2) Création de répertoires de configuration pour Prometheus

Une fois l'utilisateur pour Prometheus créé, nous allons ensuite créer des répertoires de configuration dans les répertoires /etc et /var qui stockeront les fichiers et les données de configuration de Prometheus. Exécutez donc les commandes ci-dessous :

[[email protected] ~]# mkdir /etc/prometheus[[email protected] ~]# mkdir /var/lib/prometheus

Définissez la propriété sur /var/lib/prometheus

[[email protected] ~]# chown prometheus /var/lib/prometheus/

Étape 3) Téléchargement du fichier tar Prometheus

Avec les répertoires en place, nous pouvons maintenant télécharger le Prometheus. Pour obtenir la dernière version, rendez-vous sur la page de téléchargement pour obtenir la dernière version pour votre environnement. Au moment de la rédaction de cet article, la dernière version était la v 2.14.0. Sinon, exécutez simplement la commande ci-dessous

[[email protected] ~]# dnf install wget -y[[email protected] ~]# wget https://github.com/prometheus/prometheus/releases/download/v2.14.0/prometheus-2.14.0 .linux-amd64.tar.gz -P /tmp

Une fois le téléchargement terminé, extrayez le fichier tarball comme indiqué

[[email protected] tmp]# tar -zxpvf prometheus-2.14.0.linux-amd64.tar.gz

Cela vous laissera avec un répertoire appelé prometheus-2.14.0.linux-amd64

Utilisez la commande tree pour afficher la structure des répertoires,

Le répertoire extrait contient 2 fichiers binaires prometheus &promtool et que nous devons copier dans le chemin /usr/local/bin.

Alors, accédez au répertoire extrait et copiez-les à l'aide de la commande :

[[email protected] ~]# cd /tmp/prometheus-2.14.0.linux-amd64[[email protected] prometheus-2.14.0.linux-amd64]# cp prometheus /usr/local/bin 

Faites de même avec l'autre fichier binaire

[[email protected] prometheus-2.14.0.linux-amd64]# cp promtool /usr/local/bin

Étape 4) Création d'un fichier de configuration pour Prometheus

Pour commencer avec la configuration, créez un fichier /etc/prometheus/prometheus.yml et collez la configuration dans le fichier

[[email protected] ~]# vi /etc/prometheus/prometheus.yml# Global configglobal :  scrape_interval :     15s # Définir l'intervalle de grattage à toutes les 15 secondes. La valeur par défaut est toutes les 1 minute. evaluation_interval:15s # Évalue les règles toutes les 15 secondes. La valeur par défaut est toutes les 1 minute. scrape_timeout :15s  # scrape_timeout est défini sur la valeur globale par défaut (10 s).# Une configuration de scrape contenant exactement un point de terminaison à scraper :# Ici, c'est Prometheus lui-même.scrape_configs :  # Le nom de la tâche est ajouté en tant qu'étiquette `job=` à toutes les séries temporelles extraites de cette configuration. - job_name :'prometheus'    # metrics_path par défaut sur '/metrics'    # scheme par défaut sur 'http'. static_configs :    - cibles :['localhost:9090']

Cela ne surveillera que votre système local (serveur Prometheus).

Ensuite, ajustez le pare-feu comme suit pour autoriser les connexions externes au serveur via le port 9090

[[email protected] ~]# firewall-cmd --add-port=9090/tcp --permanentsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]# 

Étape 5) Création d'un fichier de service Systemd pour le serveur Prometheus

Pour que nous puissions gérer Prometheus en tant que service à l'aide de systemd, nous devons créer un fichier système pour celui-ci. Alors, créez le fichier comme indiqué et collez le contenu,

[[email protected] ~]# vi /etc/systemd/system/prometheus.service[Unit]Description=Prometheus Time Series Collection and Processing ServerWants=network-online.targetAfter=network-online.target[Service]User =prometheusGroup=prometheusType=simpleExecStart=/usr/local/bin/prometheus \    --config.file /etc/prometheus/prometheus.yml \    --storage.tsdb.path /var/lib/prometheus/ \    --web.console .templates=/etc/prometheus/consoles \    --web.console.libraries=/etc/prometheus/console_libraries[Install]WantedBy=multi-user.target

Pour que les modifications prennent effet, rechargez le systemctl,

[[email protected] ~]# systemctl daemon-reload

Maintenant, démarrez et activez Prometheus pour qu'il s'exécute au démarrage

[[email protected] ~]# systemctl start prometheus[[email protected] ~]# systemctl enable prometheus

Juste pour être certain que Prometheus est en cours d'exécution, exécutez la commande :

[[email protected] ~]# systemctl status prometheus

À partir de la sortie affichée, nous pouvons clairement voir que Prometheus fonctionne comme prévu, sans erreur. Vous pouvez également utiliser l'utilitaire netstat pour vérifier si le service écoute sur le port 9090.

[[email protected] ~]# netstat -tunlp

C'est génial! Prometheus fonctionne sur le port 9090 comme prévu. Maintenant, dirigez-vous vers votre navigateur pour parcourir l'adresse IP de votre serveur, comme indiqué

http://ip-serveur:9090

Cliquez sur le 'Statut ' puis cliquez sur 'Cibles '

Votre système sera affiché comme indiqué

Étape 6) Installer et configurer node_exporter

Exportateur de nœud est un utilitaire qui collecte et expédie une vaste gamme de mesures du système Linux telles que le processeur, l'utilisation de la mémoire, les systèmes de fichiers et les statistiques du réseau. Dans cette section, nous allons installer node_exporter sur le serveur Prometheus et sur un hôte Linux CentOS 8 distant et surveiller les métriques système sur les deux hôtes.

Sur le nœud Prometheus, nous allons créer un utilisateur système pour node_exporter.

[[email protected] ~]# useradd -m -s /bin/false node_exporter

Ensuite, dirigez-vous vers la page de téléchargements de Prometheus et téléchargez l'archive tar node_exporter ou utilisez ci-dessous wget pour commander pour le télécharger à partir de la ligne de commande,

[[email protected] ~]# wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz

Après avoir téléchargé le fichier node_exporter, procédez et extrayez-le comme indiqué

[[email protected] ~]# tar -zxpvf node_exporter-0.18.1.linux-amd64.tar.gz

Vous pouvez vérifier le contenu du dossier extrait à l'aide de la commande tree comme indiqué

[[email protected] ~]# arbre node_exporter-0.18.1.linux-amd64

Ensuite, copiez le fichier binaire appelé node_exporter vers le chemin /usr/local/bin

[[email protected] ~]# cp node_exporter-0.18.1.linux-amd64/node_exporter /usr/local/bin

Ensuite, définissez les autorisations de fichier du fichier node_exporter qui a été copié comme indiqué

[[email protected] ~]# chown node_exporter:node_exporter /usr/local/bin/node_exporter

Ensuite, nous devons configurer node_exporter pour qu'il s'exécute en tant que service. Alors, continuez et créez un fichier de service systemd comme indiqué

[[email protected] ~]# vi /etc/systemd/system/node_exporter.service

Collez ensuite la configuration ci-dessous et enregistrez le fichier

[Unit]Description=Prometheus Node ExporterWants=network-online.targetAfter=network-online.target[Service]User=node_exporterGroup=node_exporterType=simpleExecStart=/usr/local/bin/node_exporter[Install]WantedBy=multi-utilisateur .target

Pour que les modifications prennent effet, rechargez systemd manager avec la commande :

[[email protected] ~]# systemctl daemon-reload

Ensuite, démarrez et activez le service node_exporter

[[email protected] ~]# systemctl start node_exporter[[email protected] ~]# systemctl enable node_exporter

Juste pour être sûr que le service est en cours d'exécution, exécutez :

[[email protected] ~]# statut systemctl node_exporter

Juste pour être sûr que le service est en cours d'exécution, utilisez l'utilitaire netstat pour vérifier s'il écoute sur le port 9100 comme prévu par défaut.

[[email protected] ~]# netstat -pnltu | grep 9100tcp6       0      0 :::9100       :::*          ÉCOUTER      3472/node_exporter[[email protected] ~]#

Parfait! Le service Node_exporter fonctionne comme prévu.

Ensuite, ouvrez le port 9100 dans le pare-feu comme indiqué

[[email protected] ~]# firewall-cmd --add-port=9100/tcp  --permanentsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]# 

Répétez également les étapes décrites pour le système Linux CentOS 8 distant.

Enfin, vous devez ajouter la cible node_exporter au fichier prometheus.yml. Ajoutez les lignes ci-dessous pour définir node_exporter pour le serveur Prometheus

[[email protected] ~]# vi /etc/prometheus/prometheus.yml--------- - job_name :'node_exporter'   static_configs :  - cibles :['localhost:9100']

Redémarrez le service Prometheus

[[email protected] ~]# systemctl redémarrer prometheus

Encore une fois, accédez à votre navigateur, cliquez sur "Statut ' et cliquez sur 'Cibles '

Assurez-vous d'observer un nouveau point de terminaison sur le navigateur appelé node_exporter pour le serveur Prometheus

Pour ajouter un point de terminaison pour le système Linux distant retournez à prometheus.yml fichier et ajoutez la ligne ci-dessous

– cibles :[‘192.168.10.90:9100’]

La section node_exporter devrait maintenant ressembler à ceci

 - nom_travail :'node_exporter'   static_configs :  - cibles :['localhost:9100']   - cibles :['192.168.10.90:9100']

Enregistrez les modifications et redémarrez le service Prometheus

[[email protected] ~]# systemctl redémarrer prometheus

Actualisez le navigateur et notez le deuxième point de terminaison qui a été ajouté pour le système CentOS Linux distant.

Pour vous assurer que vous recevez des métriques, à partir de vos nœuds configurés. utilisez simplement la commande curl comme suit :

# curl http://node-ip:9100/metrics

Par exemple, pour afficher les métriques du serveur Prometheus, exécutez :

[[email protected] ~]# curl http://localhost:9100/metrics

Pour l'hôte CentOS 8 distant, j'ai exécuté la commande :

[[email protected] ~]# curl http://192.168.10.90:9100/metrics

Cela peut également être réalisé en ouvrant un navigateur et en parcourant l'URL

http://192.168.10.90:9100/metrics

Vous pouvez également choisir de représenter graphiquement les métriques que vous souhaitez. Accédez simplement à la page d'accueil du serveur Prometheus et cliquez sur le menu déroulant intitulé "insérer une métrique au curseur" '.

Sélectionnez la métrique que vous souhaitez représenter graphiquement,

Cliquez sur "Exécuter ' et cliquez sur le bouton 'graphique ’ onglet juste en dessous pour faire apparaître le graphique

Et cela nous amène à la fin de ce sujet. Vous avez installé et configuré avec succès Prometheus pour surveiller les métriques système sur votre serveur et votre hôte distant. Dans notre prochain guide, nous intégrerons Prometheus à Grafana pour une meilleure visualisation et analyse des métriques. N'hésitez pas à nous faire part de vos commentaires et à partager l'article avec un ami.


Cent OS
  1. Comment installer phpMyAdmin sur RHEL 8 / CentOS 8

  2. Comment installer P7Zip sur RHEL 8 / CentOS 8

  3. Comment installer ntfs-3g sur RHEL 8 / CentOS 8

  4. Comment installer PHP-mbstring sur RHEL 8 / CentOS 8

  5. Comment installer phantomjs sur RHEL 8 / CentOS 8

Comment installer Docker CE sur RHEL 8 / CentOS 8

Comment installer Katello sur CentOS 7.x

Comment installer VirtualBox 5.1 sur CentOS 7 / RHEL 7 / Fedora 26

Comment installer Docker CE sur CentOS 8 / RHEL 8

Comment installer VirtualBox 6.0 sur CentOS 8 / RHEL 8

Comment installer Prometheus sur CentOS 8