Geekflare est soutenu par notre public. Nous pouvons gagner des commissions d'affiliation en achetant des liens sur ce site.
Partager sur:

Top 9 des outils de surveillance Kubernetes Open Source

Scanner de sécurité des applications Web Invicti – la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

Choisissez le bon outil pour une surveillance réussie de Kubernetes!

Kubernetes est une plate-forme open source prête pour la production, conçue avec l'expérience acquise par Google dans l'orchestration de conteneurs, associée aux meilleures idées du public. Il est prévu d'automatiser le déploiement, la mise à l'échelle et l'exploitation des conteneurs d'applications.

Avec la façon moderne de créer et d'exécuter des applications, vos stratégies de contrôle et d'observabilité doivent évoluer, de même que les outils que vous utilisez. Le traditionnel outils de surveillance des infrastructures peut ne pas être suffisant et vous avez besoin d'un système de surveillance Kubernetes spécialisé, comme indiqué ci-dessous.

Certains aident avec les journaux et d'autres avec les métriques. Certains offrent une interface pour faire fonctionner Kubernetes à vol d'oiseau. Certains sont natifs de Kubernetes, tandis que d'autres sont plus agnostiques.

Explorons les outils suivants pour surveiller Kubernetes.

Prometheus + Grafana

Prométhée est l'un des outils de surveillance les plus populaires et les meilleurs utilisés avec Kubernetes. Cet outil est développé au début par SoundCloud et plus tard donné à la CNCF. Google Borg Monitor l'inspire.

Eh bien, Prometheus stocke toutes ses données sous forme de séquence temporelle. En un mot, ce qui fait que Prométhée se démarque parmi d'autres bases de données chronologiques est ses mécanismes d'alerte intégrés, son modèle de données multidimensionnel, son modèle pull vs push, PromQL (le langage d'interrogation Prometheus) et, bien sûr, la communauté sans cesse croissante.

Certaines autres fonctionnalités de Prometheus comprennent:

  • Pas de dépendance au stockage distribué;
  • Les cibles sont découvertes via la découverte de services ou la configuration statique.
  • PromQL, un langage de requête flexible pour profiter de cette dimensionnalité
  • Les nœuds de serveur unique sont autonomes
  • La collecte de séries chronologiques s'effectue via un modèle pull sur HTTP
  • La diffusion de séries chronologiques est prise en charge via une passerelle intermédiaire
  • Un modèle de données multidimensionnel avec des données de séries chronologiques analysées par nom de métrique et paires clé / valeur
  • Et, plusieurs formes de prise en charge de graphiques et de tableaux de bord

La meilleure façon d'apprendre Prométhée est de installez-le sur votre serveur de développement et jouer avec. Ils ont une excellente documentation, mais si vous recherchez un apprentissage basé sur la vidéo, consultez ceci Cours Udemy.

Vous pouvez utiliser Kube Prométhée, qui offre une surveillance des clusters de bout en bout. Vous pouvez également utiliser Mesures de l'état du Kube pour exposer l'état des objets.

Et pour visualiser les données, vous pouvez utiliser grafana.

grafana est utilisé pour visualiser les métriques mais aussi un outil d'alerte. Grafana peut émettre une alerte sur Slack, webhook, courrier électronique ou d'autres canaux de communication. Une autre raison clé est la source de vos données: Grafana peut interroger plusieurs entités simultanément.

Vous pouvez interroger les métriques Prometheus de Grafana et les visualiser, créer un tableau de bord et définir des alertes selon vos besoins. Grafana a un plug-in pour Kubernetes et a obtenu une belle tableau de bord.

En combinant Prometheus et Grafana, vous pouvez atteindre un excellent niveau de surveillance Kubernetes pour votre système de production.

Checkmk

La dernière version de Checkmk comprend une surveillance Kubernetes entièrement remaniée, qui vous permet d'analyser et de surveiller instantanément les interrelations dynamiques des infrastructures de conteneurs. Cela permet une surveillance approfondie de tous vos objets Kubernetes et est très simple à utiliser.

Vous n'avez pas besoin d'expérience préalable avec les infrastructures dynamiques et pouvez configurer la surveillance Kubernetes en quelques minutes. Checkmk ajoute automatiquement tous vos objets Kubernetes et peut surveiller les actifs Kubernetes tels que les clusters, les codes, les déploiements, les pods, les volumes, les espaces de noms, les daemonSets et les statefulSets.

La surveillance fournit toutes les données pertinentes dans des tableaux de bord préconfigurés. Cela vous permet de détecter les goulots d'étranglement et les anomalies dans la consommation des ressources en quelques minutes. Vous pouvez également créer vos propres vues personnalisées. Naviguez à travers plusieurs vues en cliquant simplement sur les différents éléments.

checkmk-kubernetes-surveillance

Le moyen le plus simple de déployer Checkmk dans Kubernetes consiste à utiliser un référentiel helm. tribe29 fournit un modèle que les utilisateurs peuvent adapter à leur propre environnement. Vous pouvez suivre ceci tutoriel vidéo pour Kubernetes et commencer par un essai gratuit de Checkmk Enterprise Edition.

Checkmk ne s'arrête pas là, bien sûr. Avec plus de 2,000 XNUMX plug-ins prêts à l'emploi, vous pouvez surveiller n'importe quel aspect de votre infrastructure informatique avec un seul outil. Allez au fond des problèmes et analysez l'interrelation entre votre système hôte Kubernetes et vos conteneurs orchestrés, par exemple. Avec Checkmk, vous obtenez des informations approfondies sur le processeur, la mémoire, la bande passante du réseau et d'autres mesures.

La visualisation des données et la communication des alertes sont adaptables aux besoins d'équipes diverses. Checkmk peut également s'intégrer à d'autres outils de surveillance tels que Prometheus, ntop ou Datadog. Vous disposez de toutes les informations au même endroit et pouvez vous assurer que les informations sont automatiquement partagées.

checkmk-kubernetes-monitoring-2

Certaines des autres fonctionnalités de Checkmk incluent :

  • Alerte intelligente qui comprend les capacités d'autoréparation de Kubernetes et met en évidence les conditions critiques uniquement lorsqu'une action est vraiment nécessaire
  • Puissant Collecteur de clusters Kubernetes pour obtenir toutes les données dont vous avez besoin
  • Prend en charge le cryptage TLS pour sécuriser votre surveillance

Checkmk est extrêmement évolutif grâce à son noyau de surveillance hautes performances et à sa capacité à prendre en charge la surveillance distribuée.

Kubewatch

Kubewatch est un observateur Kubernetes qui publie des notifications d'événements dans un canal Slack. Cet outil vous permet de déterminer les ressources que vous devez surveiller. Il est créé dans Golang et utilise une bibliothèque cliente Kubernetes pour se connecter à un serveur d'API Kubernetes. Cette bibliothèque sert de facteur de base pour l'observation des événements Kubernetes.

kubewatch est simple à configurer et peut être déployé à l'aide de la barre ou du déploiement du système. Plus clairement, kubewatch verra les modifications requises sur les ressources Kubernetes spécifiques que vous cherchez à surveiller - déploiements, ensembles de démons, pods, services, ensembles de répliques, services, contrôleurs de réplication, secrets et cartes de configuration.

Jaeger

Le traçage distribué se développe régulièrement dans la surveillance et le dépannage des environnements Kubernetes.  Jaeger est un système de traçage, qui est publié par Uber Technologies. Il est utilisé pour surveiller les transactions et le dépannage dans les systèmes distribués complexes.

Jaeger propose une instrumentation basée sur OpenTracing pour Java, Python, Node et C ++. Il utilise un échantillonnage initial cohérent avec des probabilités individuelles par service / point de terminaison et prend en charge plusieurs backends de stockage - Cassandra, Elasticsearch, Kafka et la mémoire.

Certaines des autres fonctionnalités de Jaeger comprennent:

  • Surveillance distribuée des transactions
  • Propagation de contexte distribuée
  • Optimisation des performances / latence
  • Analyse de la cause fondamentale
  • Analyse de la dépendance des services

cAdvisor

cAdvisor est conçu pour assembler, traiter et exporter des informations sur l'utilisation des ressources et la production sur les conteneurs en cours d'exécution. Il est également développé dans Kubernetes et intégré dans le binaire Kubelet. Il est simple à utiliser (il expose les métriques Prometheus prêtes à l'emploi) mais pas assez robuste pour être reconnu comme une solution de surveillance complète.

Contrairement à d'autres, cAdvisor n'est pas déployé par pod mais au niveau du nœud. Il déterminera automatiquement tous les conteneurs exécutés sur un système et collectera des métriques système telles que la mémoire, le processeur, le réseau, etc.

cAdvisor est un outil de base, et voici quelques-unes de ses fonctionnalités.

  • Prise en charge native des conteneurs Docker et aide d'autres types de conteneurs.
  • Prend en charge l'exportation des statistiques vers divers plugins de stockage, par exemple. InfluxDB etc.,
  • Il fournit l'utilisation globale de la machine en analysant le conteneur «racine» sur la machine.
  • Prise en charge de l'exécution autonome en dehors du Docker ou de tout autre conteneur également.
  • cAdvisor fonctionne par nœud. Il détecte automatiquement tous les conteneurs du nœud donné et collecte les statistiques d'utilisation du processeur, du système de fichiers et du réseau. Vous pouvez afficher les métriques sur l'interface utilisateur Web, qui exporte des informations en direct sur tous les conteneurs du système.

Telepresence

La téléprésence vous permet d'exécuter un service particulier localement tout en connectant ce service à un cluster Kubernetes distant. Cela permet aux développeurs travaillant sur des opérations multi-services d'adopter n'importe quel outil installé localement pour vérifier / déboguer / modifier votre service. Par exemple, vous pouvez exécuter un débogueur ou un IDE.

Il permet également aux développeurs de développer rapidement en local un service particulier, même si ce service dépend de services distincts dans le cluster. Faites une transition vers votre service, économisez et vous pouvez instantanément repérer le nouveau service en action.

La téléprésence est un environnement de développement local impressionnant pour les services exécutés dans Kubernetes. La partie de débogage en direct est unique et évolue assez rapidement. Voici quelques-unes de ses fonctionnalités supplémentaires.

  • Autorisez le code exécuté dans le conteneur à se connecter à un IDE ou à un débogueur s'exécutant sur l'hôte.
  • La téléprésence utilise une image proxy spécifique à OpenShift lorsqu'elle observe un cluster OpenShift.
  • La téléprésence prend également en charge le trafic de transfert vers et depuis d'autres conteneurs du pod.
  • La téléprésence utilise un répertoire accessible par Docker comme répertoire temporaire.

Weave Scope

Weave Scope est un outil de dépannage et de surveillance pour Kubernetes. Il crée des topologies logiques de votre application et de votre infrastructure, ce qui vous facilite la prise en compte, la surveillance et le contrôle de votre application conteneurisée basée sur des microservices.

Il donne une vue descendante de votre application ainsi que de votre infrastructure complète. Il vous autorise à déterminer en temps réel tout problème avec votre application conteneurisée distribuée, lors de son déploiement sur un fournisseur de cloud.

Certaines des fonctionnalités du Weave Scope incluent:

  • Prise en charge de tout style de déploiement (local, hébergé ou hybride) et possibilité de collecter et de signaler des métriques d'hôte / conteneur
  • Agréger les métriques, les événements et les étiquettes de Kubernetes
  • Métriques contextuelles en temps réel
  • Les nœuds peuvent être filtrés par gestion du processeur et de la mémoire afin que vous puissiez identifier rapidement les conteneurs utilisant le plus de ressources.

Zabbix

Avec Zabbix, il est possible de créer des types de données pratiquement illimités à partir du système. Des systèmes de surveillance en temps réel hautes performances qui vous permettent de contrôler simultanément des dizaines de milliers de serveurs, de machines virtuelles et de périphériques réseau.

Outre la sauvegarde des données, les fonctionnalités de visualisation sont des moyens accessibles et extrêmement flexibles de déterminer les données à des fins d'alarme.

Certaines des fonctionnalités de Zabbix incluent:

  • Analyse des causes principales
  • Zabbix aide à conserver les données au format JSON, de sorte que de nombreuses applications peuvent également l'utiliser.
  • Surveillance en temps réel
  • Le proxy Zabbix est fortement recommandé pour les systèmes de production à grande échelle.
  • Rapports détaillés
  • La découverte de bas niveau vérifie automatiquement les nouveaux nœuds sans aucune difficulté.
  • Hautement configurable et extensible.

Zabbix est important et pas seulement Kubernetes, mais également apte à surveiller les métriques d'infrastructure et d'application. Si vous souhaitez apprendre Zabbix, consultez ceci parcours brillant.

Kubernetes Dashboard

Pas exactement un outil de surveillance, mais Tableau de bord Kubernetes est une interface utilisateur polyvalente pour Kubernetes dans laquelle vous pouvez gérer et dépanner le cluster Kubernetes.

tableau de bord kubernetes

Si vous ne disposez d'aucun outil de surveillance, Dashboard serait un bon début. Vérifiez guide d'installation.

Conclusion

Choisir le bon Outils Kubernetes est cruciale. Mais devinez quoi? Surtout est disponible GRATUITEMENT pour essayer, alors pourquoi ne pas essayer pour voir ce qui fonctionne pour votre surveillance Kubernetes?

Bonne surveillance et dépannage!

Merci à nos commanditaires
Plus de bonnes lectures sur DevOps
Alimentez votre entreprise
Certains des outils et services pour aider votre entreprise à se développer.
  • Invicti utilise Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.
    Essayez Brightdata
  • Semrush est une solution de marketing numérique tout-en-un avec plus de 50 outils de référencement, de médias sociaux et de marketing de contenu.
    Essayez Semrush
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.
    Essayez Intruder