Présentation de "" Monitoring Tool "" pour surveiller Docker

image.png

Les données peuvent être très puissantes et utiles sous toutes leurs formes. Les données collectées fournissent toujours des informations incroyables pour vous aider à prendre des décisions d'optimisation, de détection / tolérance des pannes et de développement de nouvelles fonctionnalités. Ces données peuvent provenir d'une entreprise, d'un ensemble d'applications logicielles ou d'un conteneur.

Les conteneurs font désormais partie intégrante de l'architecture logicielle moderne, permettant aux bases de données, à des parties d'applications et même à des applications entières d'être hébergées dans un environnement autonome indépendant du serveur hôte. Par conséquent, une surveillance adéquate du conteneur est absolument essentielle pour que les applications hébergées par le conteneur restent saines et efficaces.

Aujourd'hui, Docker est la force dominante dans le monde des conteneurs, représentant plus de 83% de tous les conteneurs de production en 2018. En raison de sa popularité, la surveillance des conteneurs Docker peut entraîner des problèmes de sélection en raison de la variété des outils disponibles. Choisissez parmi eux, chacun avec ses propres forces et faiblesses.

Pour de nombreux cas d'utilisation, MetricFire est une excellente option pour surveiller les conteneurs Docker. Je vais. MetricFire est une plate-forme qui propose des versions hébergées de Graphite, Prometheus et Grafana. Construit sur ces outils open source, MetricFire est hautement personnalisable et fournit des outils agiles bien connus dans les communautés DevOps et SRE. De plus, le prix est raisonnable. Réservez MetricFire gratuitement ici (https://www.metricfire.com/demo-japan/?utm_source=blog&utm_medium=Qiita&utm_campaign=Japan&utm_content=Docker%20Monitoring%20Tools) et commencez à surveiller votre conteneur Docker dès aujourd'hui Veuillez nous contacter si vous avez des questions ou avez besoin de le faire.

Le but de cet article est de fournir des détails sur les outils de surveillance Docker populaires, ainsi que des moyens de vous aider à déterminer le meilleur outil avec des cas d'utilisation.

MetricFire Construit sur les logiciels open source Prometheus, Graphite et Grafana, MetricFire est prêt à surveiller instantanément votre conteneur Docker avec des tableaux de bord et des plugins par défaut prêts à l'emploi. MetricFire est essentiellement un service qui fournit une version hébergée d'un projet open source, donc MetricFire peut faire pratiquement tout ce qu'un projet open source peut faire. Il comprend toutes les adaptations et plug-ins développés dans toute la communauté.

image.png

MetricFire est intégré à cAdvisor, Prometheus et Kubernetes pour surveiller les conteneurs Docker. C'est devenu l'outil ultime pour. En raison de la grande communauté d'adeptes derrière les outils open source, la technologie derrière Metric Fire est également constamment développée et évoluée.

Donc, si vous choisissez MetricFire comme outil de surveillance Docker, vous n'avez pas à vous soucier de l'obsolescence de votre technologie de surveillance en raison du développement rapide de Docker et Kubernetes.

MetricFire a un essai gratuit de 14 jours, donc d'abord Réservez une démo gratuite Veuillez nous contacter à propos de votre cas d'utilisation.

Docker CLI(docker stats) Jetons un coup d'œil à la commande dockerstats, qui est un outil de surveillance fourni par docker lui-même. L'exécution de cette commande dans le terminal renvoie un flux de données en direct pour exécuter le conteneur et fournit des métriques de base qui couvrent la consommation de ressources du conteneur.

Ces mesures incluent l'ID de conteneur, le processeur, la mémoire et l'utilisation du réseau pour les différents conteneurs en cours d'exécution existants. Si vous souhaitez répertorier les métriques pour un seul conteneur au lieu de tous les conteneurs en cours d'exécution, ajoutez simplement l'ID de conteneur de ce conteneur à la fin de la commande. Voici un exemple:

image.png

Dans l'exemple ci-dessus, nous récupérons la métrique uniquement pour le conteneur dont l'ID de conteneur est fb649db2dc20. Utilisez l'option --no-stream pour désactiver les statistiques de streaming afin que seul le premier résultat soit extrait.

Si vous exécutez cette commande sans cet indicateur, ces métriques continueront d'être interrogées et affichées jusqu'à ce que vous arrêtiez manuellement le processus. D'autres indicateurs utiles pour cette commande peuvent être trouvés dans la documentation du docker.

Cependant, la commande docker stats ne prend en charge aucune forme de visualisation de données. Affichez simplement la métrique sous forme de données brutes dans le terminal. Cela vous aide à voir l'état et l'état de votre conteneur en un coup d'œil, mais ce n'est pas très utile dans les situations où vous avez besoin d'une surveillance détaillée ou d'un tableau de bord de surveillance visuelle. Grafana est recommandé pour une surveillance à long terme avec une bonne visualisation.

cAdvisor cAdvisor est un outil de surveillance de conteneurs open source géré par Google. Avec la prise en charge intégrée de Docker, ou littéralement d'autres types de conteneurs, vous pouvez utiliser cAdvisor pour collecter des données sur pratiquement n'importe quel type de conteneur en cours d'exécution. Il se compose d'un seul démon d'exécution qui collecte, traite, agrège et exporte des informations sur les conteneurs en cours d'exécution.

Ces informations peuvent être exportées à partir de l'interface utilisateur intégrée pour visualisation, ou exportées vers une plate-forme de surveillance plus grande pour analyse et visualisation. Cependant, alors que cAdvisor collecte une grande quantité de métriques dans le conteneur qu'il surveille, il n'affiche que des données générales sur certains aspects des performances du conteneur, tels que l'utilisation de la mémoire et du processeur, ce qui limite considérablement l'interface utilisateur Web. Je suis. Voici un exemple du tableau de bord cAdvisor.

image.png

Utilisez le plug-in de stockage pour accéder aux métriques détaillées collectées par cAdvisor. Vous pouvez exporter vers un système de surveillance ou de stockage plus grand et procéder à partir de là. Pour plus d'informations sur l'utilisation de cAdvisor pour surveiller les conteneurs Docker, consultez cet article (https://qiita.com/TomoEndo/items/4aa2d9889c49148a3d7f). Pensez également à intégrer cAdvisor à MetricFire. Cela vous donne le meilleur des deux mondes.

Prometheus Prometheus est un système de surveillance et d'alerte open source très populaire. Contrairement à la plupart des outils de surveillance qui utilisent un mécanisme basé sur push pour collecter les métriques (l'agent sur le conteneur surveillé collecte et envoie la métrique), Prometheus utilise un mécanisme basé sur l'extraction (interrogation).

Dans les systèmes d'extraction, le conteneur / serveur expose les points de terminaison métriques à Prometheus, et Prometheus récupère les données métriques de ces points finaux à des intervalles configurables.

Prometheus traite et agrège ensuite ces données pour les afficher à l'aide du navigateur d'expressions intégré (https://www.metricfire.com/blog/prometheus-dashboards) ou [Grafana]. Autorisez les outils de visualisation tels que (https://www.metricfire.com/blog/grafana-dashboards-from-basic-to-advanced) à créer des tableaux de bord perspicaces.

Prometheus propose un grand nombre de bibliothèques clientes qui, associées à un mécanisme d'interrogation, permettent une grande variété d'intégrations côté client.

Fondamentalement, tout ce que vous devez faire pour importer les métriques dans Prometheus est d'utiliser la bibliothèque cliente appropriée dans votre code d'application et de définir et d'exposer ces métriques à l'aide de points de terminaison HTTP dans votre instance d'application (bibliothèque cliente). Les métriques créées à l'aide sont appelées métriques personnalisées).

Un tutoriel complet peut être trouvé ici, y compris un exemple d'importation de métriques Redis DB dans Prometheus. Prometheus peut gratter ces métriques et les visualiser à l'aide d'un navigateur d'expression ou d'un visualiseur tel que Grafana. Voici un exemple du navigateur d'expression Prometheus.

image.png

Vous pouvez utiliser ces bibliothèques clientes pour surveiller les applications s'exécutant dans un conteneur Docker en incluant les bibliothèques appropriées et en publiant les métriques personnalisées que vous souhaitez publier, mais vous pouvez utiliser ces bibliothèques pour: Il n'est pas possible d'obtenir les métriques d'un conteneur Docker comme celui-ci. Par exemple, l'utilisation du processeur ou de la mémoire du conteneur.

Cela a été possible en utilisant un exportateur de conteneurs qui exporte les métriques de conteneurs Docker directement vers Prometheus. Cependant, la méthode d'exportateur de conteneur est obsolète et utilise désormais cAdvisor pour surveiller les métriques de conteneur et les exposer à Prometheus comme décrit ci-dessus.

Choisir Prometheus vient avec le compromis d'avoir à faire beaucoup de configuration et de maintenance. Si vous souhaitez donner la priorité aux instances Prometheus simples et prêtes à l'emploi et ignorer ces goulots d'étranglement de configuration et de maintenance, l'outil géré Hosted Prometheus de MetricFire Hosted Prometheus Free Demo (https: //www.metricfire) Inscrivez-vous à .com / demo-japan /? Utm_source = blog & utm_medium = Qiita & utm_campaign = Japan & utm_content = Docker% 20Monitoring% 20Tools) et parlez directement avec votre équipe.

Sommaire

Compte tenu de l'architecture conteneurisée et de la popularité générale de Docker, il existe plusieurs autres options de surveillance. Ceux-ci incluent Datadog, Sysdig, SolarWinds, NewRelic, SignalFx et plus encore.

Chacun a ses forces et ses faiblesses et son architecture est différente. Certains sont basés sur des agents et certains sont hébergés dans le cloud. Choisir parmi un grand nombre d'options peut être difficile, mais celle que vous choisissez dépend en grande partie de votre cas d'utilisation ou de votre objectif ultime.

Si vous avez besoin d'aide pour prendre une décision, contactez MetricFire en réservant une démo (https://www.metricfire.com/demo-japan/?utm_source=blog&utm_medium=Qiita&utm_campaign=Japan&utm_content=Docker%20Monitoring%20Tools) S'il vous plaît. Nous sommes des experts de la surveillance et sommes là pour vous guider vers les meilleurs paramètres de surveillance pour vous. Bonne surveillance!

Recommended Posts

Présentation de "" Monitoring Tool "" pour surveiller Docker
[Pour les nouveaux venus] Introduction de JUnit
Surveillance des conteneurs CI / CD Docker
Installer docker, docker-compose pour debin10
Construction d'environnement avec Docker pour les débutants
[Folio LSP] Roughly Docker (pour les débutants)
Mémo d'exécution Docker compilé pour moi
[Docker] Option de configuration non prise en charge pour services.app:'node '
Docker pour Mac Slow: Countermeasure II
Commandes liées à Docker (notes commémoratives pour vous-même)