Blog Alphorm Logo de blog informatique spécialisé en technologie et solutions IT
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
En cours de lecture : Configurer Docker Discovery avec Prometheus
Agrandisseur de policeAa
Blog AlphormBlog Alphorm
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
Search
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
Suivez-nous
© Alphorm 2024 - Tous droits réservés
DevOps

Configurer Docker Discovery avec Prometheus

L'Équipe Alphorm Par L'Équipe Alphorm 22 janvier 2025
Partager
13e lecture en min
Partager

La surveillance manuelle des conteneurs Docker peut être fastidieuse et sujette à des erreurs.

Sans une méthode automatisée, les administrateurs doivent fréquemment mettre à jour les configurations pour suivre les changements des conteneurs.

Cet article vous montre comment utiliser Docker Service Discovery dans Prometheus pour une surveillance automatique et efficace des conteneurs.

Table de matière
Accès au prometheus.yml pour Docker SDConfigurer Docker SD dans PrometheusRedémarrage après config PrometheusVérifier cibles Docker dans PrometheusTester Node Exporter avec DockerFAQConclusion

Formation Superviser une infrastructure avec Prometheus

Devenez expert dans la supervision d'infrastructures avec Prometheus.

Découvrir cette formation
Formation Superviser une infrastructure avec Prometheus

Dans cette section, nous allons configurer Prometheus pour détecter automatiquement les cibles Docker en utilisant Docker Service Discovery (Docker SD) . Cette méthode permet à Prometheus de détecter et de surveiller les conteneurs Docker répondant à certains critères, sans nécessiter de configuration manuelle des cibles.

Accès au prometheus.yml pour Docker SD

Pour débuter, ouvrez le fichier de configuration de Prometheus, prometheus.yml. C’est dans ce fichier que nous ajouterons les paramètres nécessaires pour la détection automatique des cibles Docker.

Configuration de prometheus.yml sous Linux via terminal
				
					
 sudo vi /etc/prometheus/prometheus.yml

				
			

Ajout de la Configuration Docker SD

Ajoutez maintenant la section scrape_configs dans le fichier prometheus.yml. Cette configuration permet à Prometheus de détecter les conteneurs Docker répondant aux critères spécifiés, tels que l’intervalle de rafraîchissement et les labels des conteneurs.

				
					
 scrape_configs:
- job_name: 'docker_node_exporter'
docker_sd_configs:
- host: 'unix:///var/run/docker.sock' # Chemin vers le socket Docker
refresh_interval: 15s # Intervalle de rafraîchissement des cibles
filters:
- name: 'label'
values: ['prometheus=true'] # Filtrer les conteneurs ayant le label prometheus=true

				
			

Configurer Docker SD dans Prometheus

Voici un aperçu de chaque paramètre pour mieux comprendre leur rôle dans la détection des conteneurs Docker par Prometheus :

  • job_name :Définit un nom descriptif pour cette tâche de collecte, ici docker_node_exporter.
  • docker_sd_configs :Spécifie les paramètres pour la découverte des conteneurs Docker.host: Définit le chemin du socket Docker, généralement situé à unix:///var/run/docker.sock.refresh_interval: Spécifie la fréquence à laquelle Prometheus met à jour les cibles Docker (ici toutes les 15 secondes).filters: Filtre les conteneurs Docker pour surveiller uniquement ceux ayant le label prometheus=true, limitant ainsi la surveillance aux conteneurs pertinents.

Enregistrez et fermez le fichier une fois la configuration terminée.

Redémarrage après config Prometheus

Après avoir modifié le fichier prometheus.yml, redémarrez Prometheus pour appliquer les nouvelles configurations. Utilisez les commandes suivantes si vous gérez Prometheus comme un service :

				
					
 sudo systemctl stop prometheus
sudo systemctl start prometheus

				
			
Astuce : Si vous exécutez Prometheus en local ou sans service, lancez simplement Prometheus avec la commande suivante dans le répertoire d’installation :
				
					
 ./prometheus

				
			

Vérifier cibles Docker dans Prometheus

Pour confirmer que Prometheus détecte les conteneurs Docker, ouvrez votre navigateur et allez à l’adresse suivante :
http://localhost:9090/targets .

Si aucune cible n’apparaît, vérifiez qu’au moins un conteneur Docker est en cours d’exécution avec le label prometheus=true.

Tester Node Exporter avec Docker

Afin de visualiser une cible dans l’interface Prometheus, exécutez un conteneur Docker Node Exporter avec le label requis :

  1. Télécharger l’image Node Exporter de Prometheus :
				
					
 docker run --rm prom/node-exporter

				
			
  1. Exécuter le conteneur avec le label requis :
				
					
 docker run --rm --label prometheus=true prom/node-exporter

				
			

Après avoir lancé ce conteneur, revenez à l’interface Prometheus (http://localhost:9090/targets) pour vérifier que le conteneur node-exporter est bien détecté et que son statut est UP.*

Capture d'écran de Prometheus Targets

Conclusion

Votre Prometheus est maintenant configuré pour détecter et surveiller automatiquement les conteneurs Docker ayant le label prometheus=true. Ce processus simplifie la gestion des cibles, surtout dans des environnements où les conteneurs sont dynamiques et éphémères.

Formez-vous gratuitement avec Alphorm !

Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.

Démarrer gratuitement
illustration processus de paiement en ligne avec étapes claires et convivialité

FAQ

Comment configurer Docker Service Discovery dans Prometheus ?
Pour configurer Docker Service Discovery dans Prometheus, commencez par ouvrir le fichier prometheus.yml. Ajoutez-y une section scrape_configs spécifiant les paramètres pour détecter les conteneurs Docker. Définissez l’intervalle de rafraîchissement et utilisez des filtres pour cibler les conteneurs avec le label prometheus=true. Une fois configuré, redémarrez Prometheus pour appliquer les modifications. Cette méthode permet à Prometheus de surveiller automatiquement les conteneurs Docker sans configuration manuelle.
Quels paramètres inclure dans prometheus.yml pour Docker SD ?
Dans le fichier prometheus.yml, incluez la section scrape_configs avec le job_name, les docker_sd_configs, l’host pour le socket Docker, le refresh_interval pour actualiser les cibles, et des filtres pour cibler les conteneurs pertinents. Par exemple, utilisez host: ‘unix:///var/run/docker.sock’ et refresh_interval: 15s pour un intervalle de 15 secondes. Les filtres étiquettent les conteneurs avec prometheus=true pour une détection ciblée par Prometheus.
Comment vérifier que Prometheus détecte les conteneurs Docker ?
Pour vérifier la détection des conteneurs Docker par Prometheus, accédez à l’interface Prometheus en visitant http://localhost:9090/targets. Assurez-vous qu’au moins un conteneur Docker avec le label prometheus=true est en cours d’exécution. Si aucun n’apparaît, vérifiez la configuration du fichier prometheus.yml et assurez-vous que les conteneurs sont correctement étiquetés et en marche.
Comment lancer un conteneur Node Exporter pour le tester avec Prometheus ?
Pour tester la détection de conteneurs avec Prometheus, commencez par télécharger l’image Node Exporter de Prometheus en exécutant docker run –rm prom/node-exporter. Ensuite, lancez le conteneur avec le label prometheus=true en utilisant la commande docker run –rm –label prometheus=true prom/node-exporter. Retournez sur l’interface Prometheus pour vérifier que le conteneur est détecté et que son statut est UP.
Pourquoi est-il important de redémarrer Prometheus après modification du fichier prometheus.yml ?
Il est crucial de redémarrer Prometheus après avoir modifié le fichier prometheus.yml pour appliquer les nouvelles configurations. Sans redémarrage, Prometheus ne prendra pas en compte les changements effectués, ce qui peut empêcher la détection correcte des conteneurs Docker. Redémarrez le service avec sudo systemctl stop prometheus suivi de sudo systemctl start prometheus pour assurer une surveillance efficace.

Conclusion

Votre Prometheus est maintenant prêt pour la surveillance automatisée des conteneurs Docker avec le label prometheus=true. Cette configuration simplifie la gestion des cibles dans des environnements dynamiques. Quelles autres fonctionnalités de Prometheus souhaitez-vous explorer pour optimiser vos processus de surveillance ?

ÉTIQUETÉ : Prometheus
Facebook
Twitter
LinkedIn
Email
WhatsApp
Par L'Équipe Alphorm
Démocratiser la Connaissance Informatique pour Tous !
Suivre :
L'Équipe Alphorm, c'est la démocratisation de la connaissance informatique. Passionnés et dévoués, nous sommes là pour vous guider vers le succès en rendant la technologie accessible à tous. Rejoignez notre aventure d'apprentissage et de partage. Avec nous, le savoir IT devient une ressource inspirante et ouverte à tous dans un monde numérique en constante évolution.

Derniers Articles

  • Techniques pour gérer les fichiers texte en C#
  • Créer et lire un fichier CSV avec C#
  • JSON : Comprendre et Utiliser Efficacement
  • Créer une Base SQLite dans C#
  • Lecture des données SQLite simplifiée
Laisser un commentaire Laisser un commentaire

Laisser un commentaire Annuler la réponse

Vous devez vous connecter pour publier un commentaire.

Blog Alphorm
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
En cours de lecture : Configurer Docker Discovery avec Prometheus

© Alphorm - Tous droits réservés