web-dev-qa-db-fra.com

Surveillance de l'interface utilisateur pour Apache kafka - gestionnaire de kafka vs moniteur de kafka

Je suis nouveau à Kafka. Nous voulons surveiller et gérer les sujets liés au kafka. Nous avons essayé différents outils de surveillance open source tels que 

  1. kafka-monitor
  2. kafka-manager

Les deux outils sont bons. Mais nous sommes incapables de prendre une décision qui devrait être incluse dans notre pile de déploiement. Lequel est le meilleur et pourquoi et dans quel scénario?

"kafka manager" de yahoo ressemble à l'ancien et "kafka monitor" de LinkedIn est le plus récent

Kafka Monitor-  enter image description here

9
Mr.Pramod Anarase

Landoop 
Landoop améliore Kafka avec l’interface utilisateur, la lecture en continu du moteur SQL et la surveillance des grappes. Il permet une surveillance plus rapide des pipelines de données Kafka.

Ils fournissent un menu fixe tout-en-un gratuit ( LENSES Box ) pouvant servir à un seul courtier pour un maximum de 25 millions de messages. Notez que cela est recommandé pour les environnements de développement.

Confluent
Une autre option est Confluent Enterprise qui est une distribution Kafka pour les environnements de production. Il inclut également Control Center , qui est un système de gestion pour Apache Kafka qui permet la surveillance et la gestion de clusters à partir d'une interface utilisateur.

Yahoo Kafka Manager
Kafka Manager est un outil de surveillance de Kafka offrant moins de fonctionnalités que les outils susmentionnés.

KafDrop
KafDrop est une interface utilisateur permettant de surveiller les clusters Apache Kafka. L'outil affiche des informations telles que les courtiers, les sujets, les partitions et vous permet même de visualiser des messages. C'est une application légère qui s'exécute sur Spring Boot et nécessite très peu de configuration.

LinkedIn Burrow
Burrow est un compagnon de surveillance pour Apache Kafka qui fournit une vérification du décalage client en tant que service sans qu'il soit nécessaire de spécifier des seuils. Il surveille les compensations engagées pour tous les consommateurs et calcule le statut de ces consommateurs à la demande. Un point de terminaison HTTP est fourni pour demander l’état à la demande, ainsi que pour fournir d’autres informations sur le cluster Kafka. Il existe également des notificateurs configurables pouvant envoyer l'état par courrier électronique ou via des appels HTTP à un autre service.

Outil Kafka 
Kafka Tool est une application graphique permettant de gérer et d’utiliser les clusters Apache Kafka. Il fournit une interface utilisateur intuitive qui permet de visualiser rapidement les objets d'un cluster Kafka ainsi que les messages stockés dans les rubriques du cluster. Il contient des fonctionnalités destinées à la fois aux développeurs et aux administrateurs.


Si vous ne pouvez pas acheter de licences, optez pour Yahoo Kafka Manager, LinkedIn Burrow ou KafDrop. Les produits Confluent et Landoop sont les meilleurs sur le marché, mais malheureusement, ils nécessitent une licence. 

30

Si vous souhaitez payer pour les licences et le support de cluster Kafka, vous pouvez utiliser Confluent Control Center

Vous pouvez également utiliser les exportateurs JMX de Datadog et/ou Prometheus/Influxdb (avec les tableaux de bord Grafana) pour visualiser les contrôles de l’ensemble du système (processeur, réseau, mémoire, etc.). Beaucoup plus d’informations que ce que vous obtenez uniquement. en surveillant les processus Kafka avec les outils Kafka 

2
cricket_007

Dans mon entreprise, nous avons utilisé le produit Yahoo, nous avons étudié le produit LinkedIn et plusieurs autres mentionnés. Mon entreprise a finalement choisi d’utiliser Prometheus + Grafana. Tout le monde l'aime et je le recommande vivement.

Prometheus + Grafana présente deux grands avantages. La première est qu'il effectue une métrique complète de métrages Kafka: ingestion + visualisation + alertes mais cela ne se limite pas à Kafka. Alors que nos besoins initiaux consistaient uniquement à surveiller Kafka, nous voulions également des métriques sur les serveurs HTTP + trafic, l'utilisation du serveur (cpu/ram/disk) et des métriques personnalisées au niveau de l'application. Prométhée gère tout ce qui précède. Deuxièmement, Prometheus + Grafana sont de très haute qualité, bien conçus et faciles à utiliser. De nombreux autres produits dans cet espace sont anciens et compliqués à utiliser. Prometheus + Grafana sont excellents, ils sont très personnalisables, polis et faciles à utiliser. Grafana a une interface JavaScript très flashy + fonctionnelle qui vous permet de créer exactement les tableaux de bord personnalisés que vous voulez. Prometheus possède un moteur de collecte de mesures métriques, un moteur de stockage, un langage de requête et un système d’alerte très sophistiqués. Quelque chose comme Yahoo Kafka Manager a des fonctionnalités beaucoup plus limitées dans toutes ces catégories.

Si vous voulez essayer Prométhée, vous devez faire deux choses:

1) installez + configurez l'exportateur JMX-> Prometheus sur vos courtiers Kafka: https://github.com/prometheus/jmx_exporter

2) Configurez un serveur Prometheus pour collecter des métriques + et un tableau de bord Grafana pour afficher les graphiques souhaités.

Je dirais aussi que c'est juste pour la surveillance + les tableaux de bord + l'alerte. Pour les fonctions de gestion, vous avez toujours besoin d'autres outils.

0
clay