Kafka-Konnektor
Übersicht
Abschnitt betitelt „Übersicht“Der Kafka-Konnektor liest von und schreibt zu Apache-Kafka-Topics, mit optionaler SASL/PLAIN-Authentifizierung.
Konnektor-Typen:
KafkaReader- Nachrichten aus einem Topic als Teil einer Konsumentengruppe konsumierenKafkaWriter- Nachrichten an ein Topic produzieren
Kafka Reader
Abschnitt betitelt „Kafka Reader“Aus einem Topic unter Verwendung einer Konsumentengruppe konsumieren:
{ "type": "KafkaReader", "config": { "brokers": ["localhost:9092"], "topic": "sensor-events", "groupId": "meddle-consumers" }}Mit SASL/PLAIN-Authentifizierung
Abschnitt betitelt „Mit SASL/PLAIN-Authentifizierung“{ "type": "KafkaReader", "config": { "brokers": [ "kafka-1.example.com:9092", "kafka-2.example.com:9092", "kafka-3.example.com:9092" ], "topic": "factory.events", "groupId": "meddle-factory-consumers", "username": "kafka_user", "password": "kafka_password" }}Kafka Writer
Abschnitt betitelt „Kafka Writer“Nachrichten an ein Topic produzieren:
{ "type": "KafkaWriter", "config": { "brokers": ["localhost:9092"], "topic": "processed-events" }}Mit SASL/PLAIN-Authentifizierung
Abschnitt betitelt „Mit SASL/PLAIN-Authentifizierung“{ "type": "KafkaWriter", "config": { "brokers": [ "kafka-1.example.com:9092", "kafka-2.example.com:9092" ], "topic": "factory.processed", "username": "kafka_user", "password": "kafka_password" }}Konfigurationsparameter
Abschnitt betitelt „Konfigurationsparameter“- brokers: Liste der Bootstrap-Broker-Adressen (
host:port) - topic: Kafka-Topic-Name
- groupId: (Reader) Konsumentengruppen-Kennung
- username: (Optional) SASL/PLAIN-Benutzername
- password: (Optional) SASL/PLAIN-Passwort
Konsumentengruppen
Abschnitt betitelt „Konsumentengruppen“Die groupId steuert, wie Kafka-Partitionen über Reader verteilt werden:
- Mehrere Reader mit der gleichen
groupIdteilen sich Partitionen für horizontale Skalierung. - Mehrere Reader mit unterschiedlichen
groupId-Werten erhalten jeweils eine vollständige Kopie des Topic-Streams. - Offsets werden pro Konsumentengruppe committed; Neustarts setzen vom letzten committeten Offset fort.
Partitionierung
Abschnitt betitelt „Partitionierung“Der Writer verwendet den LeastBytes-Balancer, der Nachrichten über Partitionen verteilt, um die pro-Broker-Last zu minimieren. Nachrichten innerhalb einer einzelnen Meddle-Pipeline landen nicht garantiert auf derselben Partition.
Authentifizierung
Abschnitt betitelt „Authentifizierung“- Die Authentifizierung wird nur aktiviert, wenn sowohl
usernameals auchpasswordbereitgestellt werden. - Der Konnektor verwendet SASL/PLAIN. In der Produktion mit TLS auf der Netzwerkschicht (Broker-Konfiguration) kombinieren.