Einführung in Kafka Tools
Kafka Tools ist eine Sammlung verschiedener Tools, mit denen wir unseren Kafka Cluster verwalten können. Die Tools basieren hauptsächlich auf der Befehlszeile, es stehen jedoch auch Tools auf der Benutzeroberfläche zur Verfügung, die heruntergeladen und installiert werden können.
Wir können Kafka-Werkzeuge verwenden, um verschiedene Operationen durchzuführen, wie zum Beispiel:
- Listen Sie die verfügbaren Kafka-Cluster und deren Broker, Themen und Konsumenten auf.
- Kann die Nachrichten von verschiedenen Themen in der Standardausgabe drucken. Die auf der Benutzeroberfläche basierenden Tools bieten definitiv eine bessere Lesbarkeit.
- Fügen Sie Themen zu den Brokern hinzu, und löschen Sie sie.
- Fügen Sie neue Nachrichten in die Partitionen ein.
- Sehen Sie sich alle Offsets unserer Verbraucher an.
- Erstellen Sie Partitionen unserer Themen.
- Listen Sie alle Verbrauchergruppen auf, beschreiben Sie die Verbrauchergruppen, löschen Sie die Verbrauchergruppeninformationen und setzen Sie die Verbrauchergruppenoffsets zurück.
Wenn wir ein UI-basiertes Tool verwenden möchten, können wir das Kafka Tool verwenden, das von der folgenden Webseite heruntergeladen werden kann:
http://www.kafkatool.com/download.html
Diese Anwendung ist kostenlos für den persönlichen Gebrauch verfügbar, für den kommerziellen Gebrauch müssen wir jedoch eine Lizenz erwerben. Das Gute daran ist die Verfügbarkeit für Mac-, Windows- und Linux-Systeme.
Top 3 Arten von Kafka Tools
Kafka-Tools werden in System-Tools und Anwendungs-Tools unterteilt.
1. Systemwerkzeuge
Die Systemprogramme können mit der folgenden Syntax ausgeführt werden.
Syntax:
bin/kafka-run-class.sh package.class - - options
Einige der Systemprogramme lauten wie folgt:
- Kafka-Migrationstool: Dieses Tool wird zum Migrieren von Kafka Broker von einer Version zu einer anderen verwendet.
- Consumer Offset Checker: Mit diesem Tool können Consumer Group, Topic, Partitions, Off-Set, logSize, Owner für den angegebenen Themensatz und Consumer Group angezeigt werden.
- Mirror Maker: Mit diesem Tool können Sie einen Kafka-Cluster auf einen anderen spiegeln.
2. Replikationstools
Hierbei handelt es sich im Grunde genommen um hochwertige Designwerkzeuge, die für Langlebigkeit und Verfügbarkeit sorgen.
Einige der Replikationstools sind:
- Werkzeug "Thema erstellen": Dieses Werkzeug wird zum Erstellen von Themen mit der Standardanzahl von Partitionen und dem Replikationsfaktor verwendet.
- List Topic Tool: Hiermit werden die Informationen für eine bestimmte Themenliste aufgelistet . Das Tolle an diesem Tool ist, dass es, wenn in der Befehlszeile noch kein Thema verfügbar ist, den Zookeeper auffordert, zuerst die Themenliste abzurufen und dann die Informationen darüber auszudrucken. Es werden verschiedene Felder wie Themenname, Partitionen, Leiter, Replikate usw. aufgelistet.
- Tool zum Hinzufügen von Partitionen : Mit diesem Tool können Sie einem Thema Partitionen hinzufügen, die für das Wachstum des Datenvolumens im Thema erforderlich sind. Beachten Sie jedoch, dass wir beim Erstellen des Themas die Partitionen angeben müssen. Mit diesem Tool können wir manuelle Replikate für die hinzugefügten Partitionen hinzufügen.
3. Verschiedene Werkzeuge
Lassen Sie uns nun einige verschiedene Tools diskutieren:
ein. Kafka-Topics-Tool
Dieses Tool dient zum Erstellen, Auflisten, Ändern und Beschreiben von Themen.
Beispiel: bin/kafka-topics.sh --zookeeper zk_host:port/chroot --create --topic topic_name --partitions 30 --replication-factor 3 --config x=y
: bin/kafka-topics.sh --zookeeper zk_host:port/chroot --create --topic topic_name --partitions 30 --replication-factor 3 --config x=y
b. Kafka-Console-Consumer-Tool
Mit diesem Tool können Daten aus Kafka-Themen gelesen und in die Standardausgabe geschrieben werden
Beispiel: bin/kafka-console-consumer --zookeeper zk01.example.com:8080 --topic topic_name>/code>
c. Kafka-Konsolen-Hersteller Tool
Mit diesem Tool können Daten aus der Standardausgabe in ein Kafka-Thema geschrieben werden.
Beispiel: bin/kafka-console-producer --broker-list kafka03.example.com:9091 --topic topic_name
d. Kafka-Verbrauchergruppen Tool
Mit diesem Tool können Sie alle Verbrauchergruppen auflisten, eine Verbrauchergruppe beschreiben, Verbrauchergruppeninformationen löschen oder Verbrauchergruppenoffsets zurücksetzen. Dieses Tool wird hauptsächlich zum Beschreiben von Verbrauchergruppen und zum Debuggen von Problemen mit dem Verbraucherversatz verwendet.
Beispiel: Anzeigen von Offsets in einem ungesicherten Cluster: bin/kafka-consumer-groups --new-consumer --bootstrap-server broker01.example.com:9092 --describe --group group_name
Kafka-Architektur
Verschiedene Komponenten von Kafka Tools
Die Hauptkomponenten von Kafka sind wie folgt:
1. Broker
Jeder Knoten in einem Kafka-Cluster ist ein Broker, der die Daten speichert. In der Regel gibt es mehrere Broker, um die Last richtig auszugleichen. Ein Broker speichert Nachrichten in Form von Themen, auf die Produzenten (zum Schreiben) und Konsumenten (zum Lesen) zugreifen können. Themen werden erstellt, um die Daten einer Anwendung von denen einer anderen Anwendung zu trennen. Da Broker staatenlos sind, benötigen sie die Hilfe von Zookeeper, um ihren Clusterstatus aufrechtzuerhalten. Ein Broker kann Nachrichten-TBs verarbeiten, ohne die Leistung zu beeinträchtigen. Die Wahl des Kafka-Brokerführers erfolgt durch den Zookeeper.
2. Produzent
Es ist die Einheit, die Nachrichten an die Broker weiterleitet. Es kann mehrere Produzenten geben, die Daten mit sehr hoher Geschwindigkeit und unabhängig voneinander erzeugen. Die Produzenten erhalten keine Bestätigung von den Brokern und senden Daten zu einer Rate, die von den Brokern gehandhabt werden kann. Sie können Broker suchen und Nachrichten senden, sobald die Broker beginnen. Der Produzent ist dafür verantwortlich, auszuwählen, welche Nachricht welcher Partition innerhalb des Themas zugewiesen werden soll. Dies kann in einem Round-Robin-Verfahren erfolgen, um einfach die Last auszugleichen, oder es kann gemäß einer semantischen Partitionsfunktion erfolgen (beispielsweise basierend auf einem Schlüssel in der Nachricht).
3. Tierpfleger
Es ist die Einheit, die die Makler verwaltet und koordiniert. Der Tierpfleger benachrichtigt einen Erzeuger oder einen Verbraucher, wenn ein Makler hinzukommt oder ausfällt. Jeder Broker sendet regelmäßig Heartbeat-Anfragen an den Tierpfleger, solange er noch lebt. Der Tierpfleger hält auch Informationen über die Themen und Verbrauchervergleiche bereit.
4. Verbraucher
Es ist die Einheit, die die Nachrichten aus den Themen liest. Ein Verbraucher kann mehr als ein Thema abonnieren und lesen. Ein Consumer kann parallel mit anderen Consumer arbeiten (in diesem Fall wird jede Partition nur von einem Consumer gelesen) und eine Consumer-Gruppe bilden. Es funktioniert nicht synchron mit den Produzenten. Der Consumer muss mithilfe des Partitions-Offsets festlegen, wie viele Nachrichten er gelesen hat. Wenn ein Konsument einen bestimmten Partitions-Offset akzeptiert, bedeutet dies, dass die vorherigen Nachrichten in der Partition bereits konsumiert wurden.
Fazit
In diesem Artikel haben wir erfahren, wie wir mit verschiedenen Kafka-Tools unseren Kafka-Cluster effektiv verwalten können. Wir haben auch die verschiedenen Komponenten des Kafka-Ökosystems kennengelernt und wie sie miteinander interagieren.
Empfohlene Artikel
Dies ist eine Anleitung zu Kafka-Tools. Hier werden die Typen von Kafka-Werkzeugen, verschiedene Komponenten von Kafka sowie die Kafka-Architektur erläutert. Sie können auch den folgenden Artikel lesen, um mehr zu erfahren -
- Top Kafka-Anwendungen
- Erklärung der Big Data-Architektur
- Top Data Science-Tools
- Unterschiede zwischen Kafka vs Spark