Débloquez une surveillance puissante du système : votre guide sur Prometheus et Grafana
La surveillance est un composant essentiel de toute configuration d’infrastructure. Prometheus et Grafana sont de puissants outils open source qui fonctionnent ensemble pour fournir des capacités de surveillance et de visualisation robustes. Ce tutoriel vous guide tout au long de la configuration de Prometheus sur un serveur et de Grafana sur un autre, en créant un système de surveillance distribué.
Dans ce tutoriel, vous allez apprendre :
- Comment installer et configurer Prometheus sur un serveur Linux dédié
- Comment installer et configurer Grafana sur un serveur Linux séparé
- Comment connecter Grafana à Prometheus pour la visualisation de données
- Comment importer et créer des tableaux de bord pour la surveillance de vos systèmes
Configuration logicielle requise et conventions de ligne de commande Linux
La surveillance visuelle simplifiée : configuration de Prometheus et Grafana sur des serveurs Linux distincts
Ce
tutoriel met en place un système de surveillance distribué avec Prometheus sur un serveur collectant des métriques et Grafana sur un autre serveur visualisant ces métriques. Assurez-vous que les deux serveurs peuvent communiquer entre eux sur le réseau, avec les ports requis (9090 pour Prometheus et 3000 pour Grafana) correctement configurés dans les paramètres de votre pare-feu.
Prometheus sert de puissante base de données de séries chronologiques et de système de surveillance qui extrait des métriques à partir de cibles configurées, tandis que Grafana fournit une couche de visualisation belle et flexible. En les configurant sur des serveurs distincts, vous pouvez répartir la charge du système et créer une architecture plus évolutive.
Instructions étape par étape
Installer Prometheus sur le serveur 1 : utilisez le référentiel de packages pour installer Prometheus
sudo apt update sudo apt install prometheusVérifier l’installation de Prometheus : Assurez-vous que le service fonctionne correctement
sudo systemctl status prometheus sudo systemctl status prometheus-node-exporterCes commandes vérifient si Prometheus et Node Exporter (qui a été automatiquement installé en tant que dépendance) fonctionnent correctement. Vous devez voir un message indiquant que les deux services sont actifs et en cours d’exécution. Si l’un ou l’autre des services n’est pas en cours d’exécution, vous pouvez le démarrer avec
sudo systemctl start [service-name].Configurer Prometheus : Ajuster la configuration par défaut
sudo nano /etc/prometheus/prometheus.ymlLe fichier de configuration par défaut est déjà configuré pour surveiller Prometheus lui-même et doit déjà inclure Node Exporter comme cible puisqu’ils ont été installés ensemble. Vérifiez que votre configuration inclut les deux cibles :
global: scrape_interval: 15s scrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090'] - job_name: 'node' static_configs: - targets: ['localhost:9100']Si la configuration de l’exportateur de nœuds n’est pas déjà incluse, ajoutez-la comme indiqué ci-dessus.
Redémarrez ensuite Prometheus pour appliquer les modifications suivantes :
sudo systemctl restart prometheusConfigurer le pare-feu pour Prometheus : autoriser les connexions externes à Prometheus
sudo ufw allow 9090/tcpInstaller Grafana sur le serveur 2 : Ajouter le dépôt de Grafana et installer le paquet
sudo apt install -y apt-transport-https software-properties-common wget wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add - echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list sudo apt update sudo apt install -y grafanaDémarrer et activer Grafana : Activer le service Grafana
sudo systemctl enable --now grafana-serverCette commande permet à la fois à Grafana de démarrer automatiquement au démarrage et de démarrer le service immédiatement. Vérifiez que Grafana fonctionne avec
sudo systemctl status grafana-server.Configurer le pare-feu pour Grafana : Autoriser les connexions externes à Grafana
sudo ufw allow 3000/tcpConnectez Grafana à Prometheus : Connectez-vous à Grafana et ajoutez Prometheus en tant que source de données
Accédez à Grafana dans votre navigateur Web àl’adresse http://[grafana-server-ip] :3000. Connectez-vous avec les informations d’identification par défaut (nom d’utilisateur : admin, mot de passe : admin) et procédez comme suit :- Cliquez sur « Connexions » dans le menu latéral de gauche
- Cliquez sur « Connexions » dans le menu latéral de gauche.
- Cliquez sur « Ajouter une nouvelle connexion » ou « Sources de données »
- Sélectionnez « Prometheus »
- Définissez l’URL sur
http://[prometheus-server-ip] :9090 (remplacez-lapar l’adresse IP réelle de votre serveur Prometheus) - Cliquez sur « Enregistrer et tester » pour vérifier la connexion
Ces commandes mettent à jour les listes de paquets et installent Prometheus à partir des dépôts officiels. Le gestionnaire de paquets gérera toutes les dépendances (y compris l’exportateur de nœuds), la création d’utilisateurs et la configuration initiale pour que Prometheus soit rapidement opérationnel. Cette approche est beaucoup plus simple que l’installation manuelle et garantit que les futures mises à jour seront gérées via le système de paquets.
Cette commande ouvre le port 9090 dans le pare-feu, permettant à Grafana sur l’autre serveur de se connecter à Prometheus. Si vous utilisez une autre solution de pare-feu, ajustez la commande en conséquence.
Comme Grafana n’est pas disponible dans les dépôts standard, nous devons d’abord ajouter leur dépôt officiel. Ces commandes installent les dépendances nécessaires, ajoutent le référentiel Grafana, puis installent Grafana à partir de ce référentiel.
Cette commande ouvre le port 3000 dans le pare-feu, permettant aux utilisateurs d’accéder à l’interface web de Grafana. Le port par défaut de Grafana est 3000, mais cela peut être modifié dans le fichier de configuration si nécessaire.
Importez des tableaux de bord existants : tirez parti des tableaux de bord créés par la communauté
Grafana dispose d’une riche bibliothèque de tableaux de bord prédéfinis que vous pouvez facilement importer :
- Cliquez sur « Tableaux de bord » dans la barre latérale gauche
Cela importera un tableau de bord complet de surveillance du système spécialement conçu pour les métriques de l’exportateur de nœuds. Vous verrez immédiatement des mesures telles que l’utilisation du processeur, l’utilisation de la mémoire, les E/S du disque et le trafic réseau sans avoir à configurer des panneaux individuels, comme dans la capture d’écran présentée dans le tutoriel.
Créez votre propre tableau de bord (facultatif) : créez un tableau de bord personnalisé adapté à vos besoins
Pour créer un tableau de bord personnalisé qui se concentre sur des indicateurs spécifiques qui vous intéressent :
- Cliquez sur « Tableaux de bord » dans la barre latérale gauche
node_memory_MemFree_bytes dans la liste déroulanteLa création de vos propres tableaux de bord vous permet de vous concentrer sur les indicateurs spécifiques qui comptent le plus pour votre infrastructure et de les organiser de la manière la plus adaptée à vos besoins de surveillance.
Lors de l’installation de
Prometheus via apt sur les systèmes Debian/Ubuntu, Node Exporter est automatiquement installé en tant que dépendance. Cela vous permet de surveiller les métriques système dès le départ sans étapes supplémentaires. Vous pouvez le vérifier en vérifiant sudo systemctl status prometheus-node-exporter. Le gestionnaire de paquets gère toute la configuration nécessaire à l’intégration de ces composants en douceur.
Conclusion
Vous avez réussi à mettre en place un système de surveillance distribué avec Prometheus collectant des métriques sur un serveur et Grafana les visualisant sur un autre. Cette configuration constitue la base d’une surveillance complète de votre infrastructure. L’approche d’installation basée sur les packages simplifie le processus tout en vous donnant la possibilité de configurer le système en fonction de vos besoins. Avec Node Exporter automatiquement installé en même temps que Prometheus, vous avez immédiatement accès aux métriques système détaillées sans configuration supplémentaire. Vous pouvez étendre ce système en ajoutant d’autres exportateurs pour surveiller divers services, en créant des alertes pour les conditions critiques et en concevant des tableaux de bord personnalisés pour différents aspects de votre environnement.
Foire aux questions (FAQ)
Comment puis-je surveiller des serveurs supplémentaires avec cette configuration ?
Pour surveiller des serveurs supplémentaires, installez Node Exporter sur chaque serveur que vous souhaitez surveiller à l’aide de
sudo apt install prometheus-node-exporter. Mettez ensuite à jour votre configuration Prometheus en ajoutant chaque serveur en tant que cible dans lenode_exportertâche. Par exemple:- job_name: 'node_exporter' static_configs: - targets: ['localhost:9100', 'server2:9100', 'server3:9100']Comment puis-je configurer des alertes dans Prometheus et Grafana ?
Pour les alertes Prometheus, vous devez installer Alertmanager avec
sudo apt install prometheus-alertmanager, définir les règles d’alerte dans/etc/prometheus/rules.ymlet le référencer dans votre configuration Prometheus. Pour les alertes Grafana, accédez au panneau de tableau de bord pour lequel vous souhaitez créer une alerte, cliquez sur le titre du panneau, sélectionnez « Modifier », puis cliquez sur l’onglet « Alerte ». À partir de là, vous pouvez définir des conditions pour l’alerte et spécifier des canaux de notification tels que l’e-mail, Slack ou PagerDuty.Comment puis-je mettre à jour Prometheus et Grafana lorsque de nouvelles versions sont publiées ?
Puisque vous avez installé Prometheus à partir des dépôts standard, exécutez simplement
sudo apt updatesuivide sudo apt upgradepour mettre à jour Prometheus et les autres packages système. Pour Grafana, qui a été installé à partir de son propre dépôt, les mêmes commandes fonctionneront tant que le dépôt Grafana restera dans votre liste de sources. Les deux services redémarreront automatiquement après les mises à jour si nécessaire. Consultez toujours les notes de mise à jour pour les mises à jour de version majeures, car elles peuvent nécessiter des modifications de configuration.Quels sont les ID de tableau de bord utiles que je peux importer dans Grafana ?
Voici quelques tableaux de bord populaires pour la surveillance des systèmes avec Prometheus et Node Exporter :
- ID 1860 : Node Exporter Full – Métriques système complètes
- ID 11074 : Exportateur de nœuds pour Prometheus – Tableau de bord moderne au design épuré
- ID 3662 : Vue d’ensemble de Prometheus 2.0 – Pour la surveillance de Prometheus lui-même
- ID 9578 : Métriques du serveur d’exportation de nœuds – Axé sur les indicateurs clés de santé du serveur
- ID 9096 : Prometheus Stats – Surveillance détaillée de Prometheus
Comment puis-je sécuriser mes instances Prometheus et Grafana ?
Pour sécuriser Prometheus, envisagez de configurer un proxy inverse avec une authentification de base (à l’aide de Nginx ou Apache), d’implémenter un cryptage TLS et de configurer des règles de pare-feu strictes pour limiter l’accès. Pour Grafana, modifiez immédiatement le mot de passe administrateur par défaut, configurez l’authentification utilisateur appropriée (LDAP, OAuth, etc.), activez HTTPS en configurant les paramètres dans
/etc/grafana/grafana.iniet envisagez d’utiliser les rôles d’utilisateur intégrés de Grafana pour restreindre l’accès aux tableaux de bord et aux sources de données. De plus, mettez régulièrement à jour Prometheus et Grafana via votre gestionnaire de paquets pour corriger les vulnérabilités de sécurité.Comment puis-je surveiller des applications spécifiques au-delà des métriques système ?
Pour surveiller des applications spécifiques, vous devrez installer des exportateurs Prometheus supplémentaires. De nombreuses applications courantes ont des exportateurs dédiés disponibles dans les dépôts. Par exemple:
- MySQL/MariaDB :
sudo apt install prometheus-mysqld-exporter
- MySQL/MariaDB :
- PostgreSQL :
sudo apt install prometheus-postgres-exporter - Nginx :
sudo apt install prometheus-nginx-exporter - Apache :
sudo apt install libapache2-mod-prometheus
N’oubliez pas de remplacer « serveur2 » et « serveur3 » par les noms d’hôte ou les adresses IP réels, et assurez-vous que le pare-feu de chaque serveur autorise les connexions au port 9100.
Pour importer l’un de ces tableaux de bord, allez sur l’icône « + » dans Grafana, sélectionnez « Importer », entrez l’ID du tableau de bord, sélectionnez votre source de données Prometheus et cliquez sur « Importer ».
Après avoir installé l’exportateur approprié, ajoutez-le en tant que cible dans votre configuration Prometheus et redémarrez Prometheus. Ensuite, importez ou créez des tableaux de bord dans Grafana qui utilisent les métriques de ces exportateurs.






