Skip to main content

Kafka Service

Mit diesem SCCM Manager Plug-in wird der Kafka Message Service konfiguriert. Es ermöglicht auch das Einsehen der Statusinformationen.

Mit den Buttons Start, Stopp, und Neustart wird der Service gesteuert. Über die Combobox daneben können die einzelnen Konfigurationen ausgewählt werden.

KafkaServiceStarten_thumb_580_0.png

Dieses Video zeigt die Grundkonfiguration des Kafka Service:

Video fehlt hier: kafka_service_first_start

Kafka Message

Die Kafka-Messages die von dem Produzer aus der Producer-Inbox gelesen werden, haben folgende Namenskonventionen: topicname_id.json

Topicname und Id müssen immer mit einem Unterstrich getrennt werden, der Topicname darf trotzdem Unterstriche enthalten.

Service Konfiguration

Damit der Kafka Service funktionsfähig ist müssen einige Konfigurationen vorgenommen werden. Die wichtigsten Konfigurationen sind hier aufgeführt.

Für mehr Informationen besuchen Sie die offizielle Apache Kafka Dokumentation

Kafka-Service-Config_thumb_580_0.png

Eigenschaft Beschreibung
Enable Consumer Aktiviert den Consumer Service.
Enable Producer Aktiviert den Producer Service.
Consumer Config Instance Gewählte Konfigurationsinstanz (nur lesend)
Consumer Topic Legt das Thema für den Empfang von Nachrichten fest.
Producer Config Instance Gewählte Konfigurationsinstanz (nur lesend)
Producer File Types Legt die Dateitypen fest, um die zu sendenden Nachrichten zu identifizieren. Trennen Sie mehrere Typen mit Pipe. Beispiel: json|xml
Producer Path Legt den Posteingangspfad für neu zu sendende Nachrichten fest.
Producer Processing Max Retieres Legen Sie die maximalen Wiederholungsversuche bei Auftreten eines Fehlers fest.
Producer Processing Retry Timeout Legen Sie das Zeitlimit für die Wiederholung fest, wenn ein Fehler auftritt.
Consumer Konfiguration

Kafka-Consumer-Config_thumb_580_0.png

Eigenschaft Beschreibung
Api Version Request

Fordert die unterstützten API-Versionen des Brokers an, um die Funktionalität an die verfügbaren Protokollfunktionen anzupassen.

Wenn auf „false“ gesetzt, oder wenn der Api-Version-Request fehlschlägt, wird die Fallback-Version `broker.version.fallback` verwendet.

Auto Offset Reset

Aktion, die ausgeführt werden soll, wenn kein anfänglicher Offset im Offset-Speicher vorhanden ist oder der gewünschte Offset außerhalb des Bereichs liegt:

'smallest','earliest' - setzt den Offset automatisch auf den kleinsten Offset zurück

'largest','latest' - setzt den Offset automatisch auf den größten Offset zurück

'error' - löst einen Fehler aus, der durch Konsumieren von Nachrichten und Prüfen von 'message->err' ermittelt wird.

Bootstrap Servers Anfängliche Liste von Brokern als CSV-Liste von Broker-Host oder Host:Port. Die Anwendung kann auch `rd_kafka_brokers_add()` verwenden, um den Broker während der Laufzeit hinzuzufügen.
Client Id Die Client-ID.
Enable Auto Commit Aktiviert/deaktiviert automatisches Festlegen von Offsets im Hintergrund.
Enable Auto Offset Store

Aktiviert/deaktiviert die Speicherung des Offsets der letzten Nachricht, die empfangen wurde.

Der Offset-Speicher ist ein interner Speicher für den nächsten Offset, der für jede Partition (automatisch) übertragen wird.

Enable Partition Eof Aktiviert/deaktiviert das Senden der RD_KAFKA_RESP_ERR__PARTITION_EOF Message, wenn der Verbraucher das Ende einer Partition erreicht.
Groud Id String der Client-Gruppen-ID. Alle Clients mit der gleichen group.id gehören zur gleichen Gruppe.
Isolation Level Steuert, wie transaktional geschriebene Nachrichten gelesen werden sollen: `read_committed` - gibt nur transaktionale Nachrichten zurück, die bestätigt wurden. `read_uncommitted` - gibt alle Nachrichten zurück, auch Transaktionsnachrichten, die abgebrochen wurden.
Max Poll Interval Ms Maximal zulässige Zeit zwischen Aufrufen zum Konsumieren von Nachrichten für High-Level-Consumer. Wenn dieses Intervall überschritten wird, gilt der Konsument als fehlgeschlagen und die Gruppe wird neu ausbalanciert, um die Partitionen einem anderen Mitglied der Konsumentengruppe neu zuzuweisen.
Secruity Protocol Protokoll, das für die Kommunikation mit Brokern verwendet wird.
Session Timeout Ms

Zeitüberschreitung für Client-Gruppensitzungen und Fehlererkennung.

Der Consumer sendet periodische Heartbeats (heartbeat.interval.ms), um dem Broker seine Betriebsbereitschaft anzuzeigen. Wenn der Broker innerhalb des Sitzungs-Timeouts keine Heartbeats für ein Gruppenmitglied empfängt, entfernt der Broker den Consumer aus der Gruppe und löst einen Neuabgleich aus.

Statistics Interval Ms

librdkafka Statistik -Message Sendeintervall. Der Wert 0 deaktiviert das Senden.

Producer Konfiguration

Kafka-Producer-Config_thumb_580_0.png

Eigenschaft Beschreibung
Api Version Request

Fordert die unterstützten API-Versionen des Brokers an, um die Funktionalität an die verfügbaren Protokollfunktionen anzupassen.

Wenn auf „false“ gesetzt, oder der Api-Version-Request fehlschlägt, wird die Fallback-Version `broker.version.fallback` verwendet.

Bootstrap Servers Anfängliche Liste von Brokern als CSV-Liste von Broker-Host oder Host:Port. Die Anwendung kann auch `rd_kafka_brokers_add()` verwenden, um den Broker während der Laufzeit hinzuzufügen.
Client Id Die Client-ID.
Enable Idempotence Aktiviert/deaktiviert, dass Nachrichten genau einmal und in der ursprünglichen Erzeugungsreihenfolge erfolgreich erzeugt werden.
Linger Ms

Wartezeit in Millisekunden, die gewartet wird bis sich die Nachrichten in der Producer-Warteschlange angesammelt haben und als Nachrichtenstapel (MessageSets) an den Broker den gesendet werden.

Ein höherer Wert ermöglicht die Akkumulation größerer und effektiverer (weniger Overhead, verbesserte Komprimierung) Nachrichtenstapel auf Kosten einer erhöhten Latenzzeit bei der Nachrichtenübermittlung.

Message Send Max Retires Anzahl der Wiederholungsversuche beim Senden einer fehlgeschlagenen Nachricht.
Message Timeout Ms Lokale Zeitüberschreitung für Nachrichten. Dieser Wert gilt nur lokal und begrenzt die Zeit, die eine produzierte Nachricht auf die erfolgreiche Zustellung wartet. Bei dem Wert 0 ist die Wartezeit unbegrenzt. Ein Zustellungsfehler tritt auf, wenn entweder die Anzahl der Wiederholungsversuche oder die Zeitüberschreitung der Nachricht überschritten wird.
Partitioner

`random` - zufällige Verteilung

`consistent` - CRC32 hash of key (Empty und NULL Keys sind einer einzelnen Partition zugewiesen)

`consistent_random` - CRC32 hash of key (Empty und NULL Keys werden zufällig partitioniert)

`murmur2` - Java Producer compatible Murmur2 hash of key (NULL Keys werden einer einzelnen Partition zugewiesen)

`murmur2_random` - Java Producer kompatible Murmur2 hash of key (NULL Keys werden zufällig partitioniert. Dies ist funktional äquivalent zum Standard-Partitionierer im Java Producer.).

Queue Buffering Max Kbytes Maximal zulässige Gesamtsumme der Nachrichtengröße in der Producer-Warteschlange. Diese Warteschlange wird von allen Topics und Partitionen gemeinsam genutzt. Diese Eigenschaft hat eine höhere Priorität als queue.buffering.max.messages. 
Queue Buffering Max Messages Maximale Anzahl von Nachrichten, die in der Producer-Warteschlange erlaubt sind. Diese Warteschlange wird von allen Themen und Partitionen gemeinsam genutzt.
Security Protocol Protokoll, das für die Kommunikation mit Brokern verwendet wird.
Statistics Interval Ms librdkafka Statistik -Message Sendeinterval. Der Wert 0 deaktiviert das Senden.