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

Comment installer et configurer Prometheus sur CentOS 7

Prometheus est une boîte à outils open source initialement conçue chez SoundCloud pour la surveillance et l'alerte. La boîte à outils est désormais un projet open source autonome et maintenu indépendamment de toute entreprise.

La boîte à outils collecte des métriques à partir de cibles surveillées en supprimant les points de terminaison HTTP sur ces cibles. La plupart des composants Prometheus sont en Go. Certains écrits en Java, Python et Ruby.

Prometheus fonctionne bien pour enregistrer n'importe quelle série chronologique numérique. Il s'adapte à la fois à la surveillance centrée sur la machine et à la surveillance de l'architecture orientée services à haute dynamique. En plus de faciliter son exécution et son intégration dans votre environnement, Prometheus offre un modèle de données et un langage de requête riches.

Le tutoriel suivant montre les étapes pour installer Prometheus sur CentOS.

Installer et configurer Prometheus sur CentOS 7

Connectez-vous au terminal en tant que root et lancez les commandes ci-dessous.

Étape 1 - Mettre à jour le système

yum update -y

Étape 2 :  Désactiver SELinux

Ouvrez la configuration SELinux et modifiez le fichier :

vim /etc/sysconfig/selinux

Remplacez "SELINUX=enforcing" par "SELINUX=disabled".

Enregistrez et quittez le fichier. Redémarrez ensuite le système.

reboot

Étape 3 : Télécharger le package Prometheus

Accédez à la page de téléchargement officielle de Prometheus et copiez l'URL du fichier "tar" Linux.

Exécutez la commande suivante pour télécharger le package. Collez l'URL copiée après wget dans la commande ci-dessous :

wget https://github.com/prometheus/prometheus/releases/download/v2.8.1/prometheus-2.8.1.linux-amd64.tar.gz

Étape 4 - Configurer Prometheus

Ajouter un utilisateur Prometheus.

useradd --no-create-home --shell /bin/false prometheus

Créez les répertoires nécessaires.

mkdir /etc/prometheus
mkdir /var/lib/prometheus

Modifiez le propriétaire des répertoires ci-dessus.

chown prometheus:prometheus /etc/prometheus
chown prometheus:prometheus /var/lib/prometheus

Allez maintenant à l'emplacement de téléchargement de Prometheus et extrayez-le.

tar -xvzf prometheus-2.8.1.linux-amd64.tar.gz

Renommez-le selon vos préférences.

mv prometheus-2.8.1.linux-amd64 prometheuspackage

Copiez les binaires "prometheus" et "promtool" du dossier "prometheuspackage" vers "/usr/local/bin".

cp prometheuspackage/prometheus /usr/local/bin/
cp prometheuspackage/promtool /usr/local/bin/

Changez la propriété en utilisateur Prometheus.

chown prometheus:prometheus /usr/local/bin/prometheus
chown prometheus:prometheus /usr/local/bin/promtool

Copiez les répertoires "consoles" et "console_libraries" du "prometheuspackage" vers "/etc/prometheus folder"

cp -r prometheuspackage/consoles /etc/prometheus
cp -r prometheuspackage/console_libraries /etc/prometheus

Changer la propriété en utilisateur Prometheus

chown -R prometheus:prometheus /etc/prometheus/consoles
chown -R prometheus:prometheus /etc/prometheus/console_libraries

Ajouter et modifier le fichier de configuration Prometheus.

Les configurations doivent être ajoutées au  "/etc/prometheus/prometheus.yml"

Nous allons maintenant créer le fichier prometheus.yml.

vim /etc/prometheus/prometheus.yml

Ajoutez la configuration suivante au fichier.

global:
  scrape_interval: 10s

scrape_configs:
  - job_name: 'prometheus_master'
    scrape_interval: 5s
    static_configs:
      - targets: ['localhost:9090']

enregistrer et quitter le fichier

Modifiez le propriétaire du fichier.

chown prometheus:prometheus /etc/prometheus/prometheus.yml

Configurez le fichier de service Prometheus.

vim /etc/systemd/system/prometheus.service

Copiez le contenu suivant dans le fichier.

[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/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

Enregistrez et le fichier de sortie.

Rechargez le service systemd.

systemctl daemon-reload

Démarrez le service Prometheus.

systemctl start prometheus

Vérifiez l'état du service.

systemctl status prometheus

Ajouter des règles de pare-feu.

firewall-cmd --zone=public --add-port=9090/tcp --permanent

Recharger le service de pare-feu.

systemctl reload firewalld

Étape 5 - Accéder à l'interface Web Prometheus

Utilisez l'URL suivante pour accéder à l'interface utilisateur.

http://Server-IP:9090/graph

Ensuite, vous pouvez voir l'interface suivante.

Étape 6 - Surveiller le serveur Linux à l'aide de Prometheus

Tout d'abord, vous devez configurer l'exportateur de nœud Prometheus sur un serveur Linux.

Copiez l'URL de l'exportateur de nœud depuis la page de téléchargement officielle.

Collez l'URL copiée après wget dans la commande suivante :

wget https://github.com/prometheus/node_exporter/releases/download/v0.17.0/node_exporter-0.17.0.linux-amd64.tar.gz

Extrayez le package téléchargé.

tar -xvzf node_exporter-0.17.0.linux-amd64.tar.gz

Créez un utilisateur pour l'exportateur de nœud.

useradd -rs /bin/false nodeusr

Déplacez le binaire vers "/usr/local/bin" à partir du package extrait téléchargé.

mv node_exporter-0.17.0.linux-amd64/node_exporter /usr/local/bin/

Créez un fichier de service pour l'exportateur de nœud.

vim /etc/systemd/system/node_exporter.service

Ajoutez le contenu suivant au fichier.

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=nodeusr
Group=nodeusr
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target

Enregistrez et quittez le fichier.

Rechargez le démon système.

systemctl daemon-reload

Démarrer le service d'exportation de nœuds.

systemctl start node_exporter

Ajoutez une règle de pare-feu pour autoriser l'exportateur de nœud.

 firewall-cmd --zone=public --add-port=9100/tcp --permanent

Recharger le service de pare-feu.

systemctl restart firewalld

Activer l'exportateur de nœud au démarrage du système.

systemctl enable node_exporter

Affichez l'URL de l'exportateur du nœud de navigation des métriques.

http://IP-Address:9100/metrics

Ajoutez une cible d'exportateur de nœud configurée sur le serveur Prometheus.

Connectez-vous au serveur Prometheus et modifiez le fichier prometheus.yml

Modifier le fichier :

vim /etc/prometheus/prometheus.yml

Ajoutez les configurations suivantes sous la configuration scrape.

 - job_name: 'node_exporter_centos'
    scrape_interval: 5s
    static_configs:
      - targets: ['10.94.10.209:9100']

Le fichier devrait ressembler à ceci.

Redémarrez le service Prometheus.

systemctl restart prometheus

Connectez-vous à l'interface Web du serveur Prometheus et vérifiez les cibles.

http://Prometheus-Server-IP:9090/targets

Vous pouvez cliquer sur le graphique et interroger n'importe quelle métrique de serveur et cliquer sur exécuter pour afficher la sortie. Il affichera la sortie de la console.

Navigateur de requête :

Sortie console :

Cliquez sur le graphique pour afficher.

Étape 7 - Surveiller le serveur MySQL à l'aide de Prometheus

Connectez-vous à MySQL et exécutez les requêtes suivantes.

CREATE USER 'mysqlexporter'@'localhost' IDENTIFIED BY 's56fsg#4W2126&dfk' WITH max_user_connections 2;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysqlexporter'@'localhost';
FLUSH PRIVILEGES;

Téléchargez mysqld_exporter depuis la page de téléchargement officielle.

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz

Extrayez le fichier téléchargé.

tar -xvzf mysqld_exporter-0.11.0.linux-amd64.tar.gz

Ajouter un utilisateur pour mysqld_exporter.

useradd -rs /bin/false mysqld_exporter

Copiez le fichier mysqld_exporter dans /usr/bin.

 mv mysqld_exporter-0.11.0.linux-amd64/mysqld_exporter /usr/bin

Modifier le propriétaire du fichier.

chown mysqld_exporter:mysqld_exporter /usr/bin/mysqld_exporter

Créez les dossiers nécessaires.

mkdir -p /etc/mysql_exporter

Créez un fichier de mot de passe MySQL pour mysqld_exporter.

vim /etc/mysql_exporter/.my.cnf

Ajoutez les configurations suivantes au fichier.

[client]
user=mysqlexporter
password=sdfsg#4W2126&gh

Enregistrez et quittez le fichier.

Changer de propriétaire.

chown -R mysqld_exporter:mysqld_exporter /etc/mysql_exporter

Accordez l'autorisation nécessaire.

chmod 600 /etc/mysql_exporter/.my.cnf

Créez un fichier de service.

vim /etc/systemd/system/mysql_exporter.service

Ajoutez le contenu suivant au fichier.

[Unit]
Description=MySQL Server fosslinux
After=network.target

[Service]
User=mysqld_exporter
Group=mysqld_exporter
Type=simple
ExecStart=/usr/bin/mysqld_exporter \
--config.my-cnf="/etc/mysql_exporter/.my.cnf"
Restart=always

[Install]
WantedBy=multi-user.target

Rechargez le démon système.

 systemctl daemon-reload

Activez mysql_exporter au démarrage du système.

systemctl enable mysql_exporter

Démarrer le service.

systemctl start mysql_exporter

Affichez les statistiques à l'aide de l'URL suivante.

http://Server_IP:9104/metrics

Allez maintenant sur le serveur Prometheus et modifiez le fichier prometheus.yml.

 vim /etc/prometheus/prometheus.yml

Ajoutez le contenu suivant au fichier.

- job_name: 'mysql_exporter_fosslinux'
    scrape_interval: 5s
    static_configs:
      - targets: ['10.94.10.204:9104']

Redémarrez Prometheus.

 systemctl restart prometheus

Vous pouvez voir les cibles ajoutées en cliquant sur les cibles sous le statut.

http://IP:9090/targets

Vous pouvez maintenant sélectionner la requête à l'aide du navigateur de requêtes et obtenir le résultat du serveur MySQL.

Il s'agit de l'installation et de la configuration du serveur Prometheus sur CentOS 7. J'espère que vous avez apprécié ce didacticiel. Faites-nous part de vos commentaires dans les commentaires ci-dessous.


Cent OS
  1. Comment installer et configurer Nginx sur CentOS 7

  2. Comment installer et configurer samba sur RHEL 8 / CentOS 8

  3. Comment installer et configurer Redis sur CentOS 7

  4. Comment installer et configurer GitLab sur CentOS 7

  5. Comment installer et configurer CyberPanel sur CentOS 8

Comment installer et configurer ownCloud sur CentOS 7

Comment installer et configurer Samba sur CentOS 8

Comment installer et configurer Fail2ban sur CentOS 8

Comment installer et configurer HAproxy sur CentOS 6

Comment installer Prometheus sur CentOS 8

Comment installer et configurer GlusterFS sur CentOS 7/CentOS 8