Prometheus est une puissante solution de surveillance du système dotée d'une base de données chronologique. Ici, dans ce tutoriel, nous apprenons à installer Prometheus sur Debian 11 Bullseye Linux.
L'idée clé derrière la mise en œuvre de Prometheus est d'avoir un environnement, un système dédié de surveillance, d'alerte et de tendance. Dans le monde d'aujourd'hui où les entreprises sont confrontées à des difficultés pour configurer et contrôler plusieurs systèmes ; l'outil de surveillance Prometheus, avec une solution de configuration universelle, les entreprises peuvent programmer indépendamment et également documenter le code de contrôle pour la technologie de contrôle respective (système d'exploitation, API, niveau d'E / S, etc.).
Principaux avantages de l'utilisation de Prometheus :
- Réduit la complexité de la planification de projet
- Gagnez du temps et des efforts en automatisant les choses
- Plusieurs modes de visualisation des données.
- Navigateur d'expressions intégré, intégration Grafana et langage de modèle de console.
- Autoriser le pontage des données tierces
- PromQL permet de découper en tranches et en dés les données de séries chronologiques collectées
- Système d'alerte
- Prometheus enregistre et documente les stratégies de contrôle respectives
- Une expertise complète n'est plus requise pour la mise en œuvre, la mise en service ou le déploiement.
- Toutes les normes peuvent être gérées de manière centralisée, quels que soient le fabricant et le type d'appareil.
Étapes pour installer Prometheus sur Debian 11 Bullseye Linux
Les étapes indiquées ici ont été effectuées sur Debian 11 mais peuvent être utilisées pour Debian 10 Buster, Ubuntu 20.04 ou Linux 22.04.
1. Ajouter un nouvel utilisateur système
Au lieu d'installer Prometheus sous notre utilisateur actuel, nous créons un nouvel utilisateur système pour limiter certains droits.
Commençons par ajouter un groupe appelé Prometheus :
sudo groupadd --system prometheus
Maintenant, ajoutez un utilisateur et attribuez-le au groupe créé ci-dessus sans droits de connexion.
sudo useradd -s /sbin/nologin --system -g prometheus prometheus
2. Créer un répertoire d'utilisateurs pour Prometheus
Créez des dossiers dans lesquels nous enregistrerons les fichiers nécessaires à l'exécution de Prometheus.
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
3. Télécharger Prometheus Monitoring pour Debian 11
Outre l'installation Docker facile à utiliser, le binaire Prometheus est également disponible au format archive à télécharger et à installer pour une utilisation sur Debian ou un autre Linux. Pour la dernière version, l'utilisateur peut visiter sa page de téléchargement de site Web. ou utilisez la méthode de la ligne de commande :
curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest|grep browser_download_url|grep linux-amd64|cut -d '"' -f 4|wget -qi -Une fois le fichier sur votre système, extrayez-le :
Remarque :Remplacez le Prometheus-2.32.1.linux-amd64 fichier avec la version que vous avez téléchargée.
Pour répertorier tous les fichiers du répertoire actuel :
lstar -xvf prometheus-2.32.1.linux-amd64.tar.gzDéplacez les fichiers extraits vers le répertoire que nous avons créé :
sudo mv prometheus-2.32.1.linux-amd64 /etc/prometheusAccordez maintenant l'autorisation d'accès aux répertoires à l'utilisateur Prometheus créé :
sudo chown prometheus:prometheus /etc/prometheussudo chown prometheus:prometheus /var/lib/prometheussudo chown -R prometheus:prometheus /etc/prometheus/consolessudo chown -R prometheus:prometheus /etc/prometheus/console_libraries
4. Configurer les fichiers et le script Prometheus
Configurons certains de ses scripts et outils en les copiant dans le répertoire bin de l'utilisateur système.
sudo cp /etc/prometheus/prometheus /usr/local/bin/sudo cp /etc/prometheus/promtool /usr/local/bin/
5. Installer le service Prometheus Systemd sur Debian 11
Une fois que l'installation et la configuration ci-dessus sont terminées pour configurer Prometheus sur Debian ou Ubuntu, créons un fichier de service Systemd pour cet outil de surveillance, afin qu'il puisse démarrer et s'exécuter automatiquement en arrière-plan en tant que service système.
Créez un fichier, si nano n'est pas alors vous pouvez l'obtenir -
sudo apt install nano -y
sudo nano /etc/systemd/system/prometheus.serviceCopiez-collez les lignes données dans le fichier :
[Unit]Description=PrometheusDocumentation=https://prometheus.io/docs/introduction/overview/Wants=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.targetEnregistrer le fichier en appuyant sur Ctrl+O , appuyez sur Entrée touche, puis utilisez Ctrl+X pour quitter le fichier.
6. Démarrer et activer Prometheus
Une fois le fichier de service créé, démarrons le service en arrière-plan et activons-le pour qu'il s'exécute automatiquement au démarrage du système ou en cas de plantage.
sudo systemctl daemon-reloadsudo systemctl enable --now prometheusVérifiez l'état du service :
statut systemctl prometheus
7. Accéder à l'interface Web
Comme nous avons confirmé que le service de ce service de surveillance fonctionne avec succès sur notre système, accédons à son interface Web.
Ouvrez n'importe quel navigateur pouvant accéder à l'adresse IP de Debian 11 ou de tout autre serveur Linux similaire que vous utilisez.
Pointez sur
http://server-ip-address:9090
Remarque : Remplacer,
server-ip-address
avec l'adresse IP réelle de votre serveur. Assurez-vous également que le 9090 est ouvert dans le pare-feu :sudo ufw allow 9090
8. Rechercher une métrique et trouver un graphique
Après avoir suivi les étapes précédentes, vous auriez déjà l'interface Web de Prometheus. Maintenant, dans le champ de recherche, tapez les « métriques » que vous souhaitez rechercher. En savoir plus sur la documentation officielle .
9. Comment installer Node_exporter Prometheus sur Linux
Surveillez d'autres matériels du système Linux en configurant Prometheus Node Exporter dessus.
Eh bien, jusqu'à présent, nous n'avons installé que le serveur , alors que pour obtenir les métriques d'autres systèmes cibles nous devons déclarer leur adresse IP dans le prometheus.yml fichier pour obtenir les métriques des systèmes sources. Nous verrons cela plus tard ici.
Disons que nous avons cinq systèmes dans le réseau à surveiller.
Tout d'abord, installez Node_Exporter dans les cinq systèmes Linux que vous souhaitez surveiller en envoyant leurs métriques au serveur Prometheus. Où, Node Exporter est destiné à exporter les métriques de la machine de la même manière que d'autres exportateurs sont disponibles pour les serveurs fonctionnant avec MySQL, haproxy_exporter, graphite_exporter, etc.
Par conséquent, nous devons configurer Node_Exporter pour collecter les métriques à l'aide des commandes données ; il en sera de même pour tous les Linux, qu'ils soient basés sur RPM ou sur Debian.
1. Télécharger l'exportateur de nœuds
curl -s https://api.github.com/repos/prometheus/node_exporter/releases/latest| grep browser_download_url|grep linux-amd64|cut -d '"' -f 4|wget -qi -2. Extrayez le fichier téléchargé :
tar -xvf node_exporter-*.linux-amd64.tar.gz3. Déplacez le fichier de service d'exportation de nœud vers bin :
sudo mv node_exporter-*.linux-amd64/node_exporter /usr/local/bin/4. Créez un utilisateur pour exécuter le service Node Exporter
sudo useradd -rs /bin/false node_exporter5. Créer un fichier de service Systemd :
Pour exécuter l'exportateur de nœud en tant que service système d'arrière-plan, créez un fichier de service :
sudo nano /etc/systemd/system/node_exporter.serviceCopiez et collez les lignes suivantes :
[Unit]Description=Node ExporterAfter=network.target[Service]User=node_exporterGroup=node_exporterType=simpleExecStart=/usr/local/bin/node_exporter[Install]WantedBy=multi-user.target
Enregistrer le fichier- Ctrl+O appuyez sur Entrée et quitter - Ctrl+X .
Remarque :Si vous utilisez RedHat, AlmaLinux, Rocky Linux ou un autre similaire en tant que machine cible pour supprimer les métriques, définissez d'abord SELinux en mode permissif.
sudo setenforce permissive
6. Démarrer et activer le service
Maintenant, laissez-le s'exécuter en arrière-plan :
sudo systemctl daemon-reloadsudo systemctl enable --now node_exporterVérifier l'état :
statut systemctl node_exporter
7. Ouvrir le port 9100 dans le pare-feu
1. Pour Debian ou Ubuntu
sudo ufw allow 91002. Pour Redhat, AlmaLinux, Rocky Linux et autres systèmes basés sur RPM :
sudo firewall-cmd --zone=public --add-port=9100/tcp --permanentsudo firewall-cmd --reload
7. Ajouter l'adresse IP de la machine cible dans le serveur prometheus.yml
Maintenant, accédez à nouveau à votre serveur Debian ou Ubuntu en exécutant la ligne de commande du serveur Prometheus et modifiez son fichier YML.
Disons que vous avez cinq systèmes à surveiller à l'aide de Prometheus puis éditez son fichier YML qui est :
sudo nano /etc/prometheus/prometheus.ymlEt la fin du fichier ajouter
- job_name :'node_exporter_metrics' scrape_interval :5s static_configs :- cibles :['192.168.1.37 :9100','192.168.1.36 :9100','192.168.1.37 :9100']Dans les Cibles, ajoutez les adresses IP au format donné des machines que vous souhaitez surveiller.
Enregistrez le fichier en appuyant sur Ctrl+O , appuyez sur Entrée , pour quitter Ctrl+X .
1. Vérifiez que Prometheus YMKL est valide ou non
Maintenant, pour confirmer si le fichier YML que nous avons modifié est valide sans aucune erreur de syntaxe.
promtool vérifie la configuration /etc/prometheus/prometheus.yml
2. Redémarrez le serveur Prometheus
sudo systemctl redémarrer prometheusN'oubliez pas non plus de vérifier l'état du service :
statut systemctl prometheus
8. Surveiller la machine cible dans l'interface utilisateur Web Prometheus
Accédez à l'interface Web, pour cela, ouvrez à nouveau le navigateur et pointez-le sur
http:server-ip-adderess:9090/targets
Maintenant, vous pouvez commencer à surveiller et à récupérer les métriques de toutes les machines Target Linux ajoutées. Donc, c'était le tutoriel rapide sur la configuration du serveur Prometheus sur Debian 11 bullseye avec les machines cibles pour récupérer les données de métriques.