Guide d'installation de Prometheus et node_exporter
15 min de lecture - 29 mai 2026

Installer Prometheus et node_exporter, configurer les cibles de scrape, mettre en place les services systemd et sécuriser votre pile de surveillance. Pas à pas pour Linux.
Configuration de la surveillance des serveurs Prometheus et node_exporter
Prometheus collecte et stocke des métriques chronologiques. node_exporter expose des données au niveau du système, telles que l'utilisation du CPU, de la mémoire et du disque, afin que Prometheus puisse les collecter. Ce guide couvre l'installation des deux, la configuration des cibles de collecte, l'exécution de node_exporter en tant que service systemd et la sécurisation de l'accès.
Installation de node_exporter
Téléchargez la dernière version stable depuis la page officielle des versions GitHub. En mai 2026, il s'agit de la version 1.11.1. Remplacez amd64 par arm64 si nécessaire.
wget https://github.com/prometheus/node_exporter/releases/download/v1.11.1/node_exporter-1.11.1.linux-amd64.tar.gz
Vérifiez la somme de contrôle SHA256 par rapport à la valeur indiquée sur la page des versions, puis extrayez et installez :
tar -xzvf node_exporter-1.11.1.linux-amd64.tar.gz
sudo mv node_exporter-1.11.1.linux-amd64/node_exporter /usr/local/bin/
Créez un utilisateur système dédié sans répertoire personnel ni shell de connexion :
sudo useradd --no-create-home --shell /bin/false node_exporter
sudo chown node_exporter:node_exporter /usr/local/bin/node_exporter
Testez-le en exécutant /usr/local/bin/node_exporter directement, puis vérifiez la sortie :
curl http://localhost:9100/metrics
Vous devriez voir des lignes préfixées par node_, comprenant des métriques telles que node_cpu_seconds_total et node_memory_MemAvailable_bytes. Par défaut, node_exporter expose environ 500 séries chronologiques.
Exécuter node_exporter en tant que service systemd
L'exécution de node_exporter depuis le terminal convient pour les tests, mais le service s'arrête lorsque vous fermez la session. Créez un fichier d'unité à l'emplacement /etc/systemd/system/node_exporter.service:
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/node_exporter
[Install]
WantedBy=multi-user.target
Activez et démarrez le service :
sudo systemctl daemon-reload
sudo systemctl enable node_exporter
sudo systemctl start node_exporter
Vérifiez qu'il est en cours d'exécution avec sudo systemctl status node_exporter. La sortie devrait afficher active (running).
Si Prometheus s'exécute sur le même hôte, liez node_exporter uniquement à localhost en modifiant la ExecStart ligne :
ExecStart=/usr/local/bin/node_exporter --web.listen-address="127.0.0.1:9100"
Configuration de Prometheus pour récupérer les données de node_exporter
Ouvrez /etc/prometheus/prometheus.yml et ajoutez une tâche sous scrape_configs:
scrape_configs:
- job_name: 'node_exporter'
scrape_interval: 15s
static_configs:
- targets: ['localhost:9100']
labels:
env: 'production'
Le job_name identifie la source dans les requêtes et les tableaux de bord. targets indique l'hôte et le port sur lesquels node_exporter est à l'écoute. Des étiquettes telles que env vous aident à filtrer les métriques ultérieurement.
Vérifiez la configuration avant de redémarrer :
promtool check config /etc/prometheus/prometheus.yml
Si la validation réussit, rechargez Prometheus sans interruption de service :
sudo systemctl reload prometheus
Ouvrez http://<your-prometheus-ip>:9090, allez dans Status > Targets et vérifiez que la tâche node_exporter affiche un statut UP (vert). Exécutez une requête rapide telle que node_cpu_seconds_total dans le navigateur d'expressions pour vérifier que les données circulent.
Sécurisation de votre pile de surveillance
N'exposez jamais les ports 9090 ou 9100 à l'Internet public. Sous Ubuntu/Debian, limitez l'accès de node_exporter à l'adresse IP de votre serveur Prometheus :
sudo ufw allow from <prometheus-ip> to any port 9100
Sur CentOS/RHEL avec firewalld :
firewall-cmd --permanent --add-port=9100/tcp
Pour l'interface web de Prometheus, placez-la derrière un proxy inverse tel que Nginx avec une authentification de base et TLS. Un VPN maillé tel que Tailscale est une autre option si vous avez besoin d'un accès depuis plusieurs emplacements sans exposer directement les ports.
Meilleures pratiques de surveillance et prochaines étapes
Utilisez node_memory_MemAvailable_bytes au lieu de MemFree pour les alertes de mémoire. MemAvailable Tenez compte des tampons et du cache pour obtenir une image plus précise de l'espace réellement disponible.
Désactivez les collecteurs dont vous n'avez pas besoin (wifi, nfs, bcache) à l'aide du --no-collector.<name> indicateur pour réduire le bruit.
Pour les alertes d'espace disque, la predict_linear fonction PromQL vous permet de prévoir quand un volume sera plein en fonction des tendances actuelles. Définir une fenêtre de prévision de 7 jours permet de détecter les fuites lentes avant qu'elles ne se transforment en pannes.
Pour surveiller plusieurs serveurs, installez node_exporter sur chaque machine et ajoutez leurs adresses IP à la targets liste dans prometheus.yml. Pour les environnements plus importants, passez à la découverte de services basée sur des fichiers plutôt que de coder en dur les adresses IP.
L'ajout de Grafana vous offre des tableaux de bord visuels. Le tableau de bord Node Exporter Full (ID 1860) est un bon point de départ. Alertmanager achemine les alertes critiques vers Slack, par e-mail ou via PagerDuty.
Les serveurs dédiés et les offres VPS de FDC prennent en charge Prometheus et node_exporter dès leur installation. Consultez les options de serveurs dédiés de FDC.
Dépannage
| Problème | Cause probable | Commande à vérifier |
|---|---|---|
| Le service ne démarre pas | Chemin d'accès ou autorisations incorrects | journalctl -u node_exporter -xe |
| Les métriques ne sont pas accessibles | Le pare-feu bloque le port 9100 ou l'adresse de liaison est incorrecte | ss -lntp | grep 9100 |
| Cible hors service dans Prometheus | Problème réseau ou adresse IP cible incorrecte dans prometheus.yml | curl -I http://<target-ip>:9100/metrics |
| Métriques spécifiques manquantes | Collecteur désactivé par défaut | node_exporter --help |

Guide d'installation de Prometheus et node_exporter
Installer Prometheus et node_exporter, configurer les cibles de scrape, mettre en place les services systemd et sécuriser votre pile de surveillance. Pas à pas pour Linux.
15 min de lecture - 29 mai 2026
XDP et eBPF pour le traitement des paquets Linux
14 min de lecture - 27 mai 2026