Apache Kafka: Unterschied zwischen den Versionen
Jochen (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „__TOC__ = Docker = == Bitnami Distribution (bitnami/kafka) == Auf Docker Hub ist eine Distribution von Bitnami [https://hub.docker.com/r/bitnami/kafka hier…“) |
Jochen (Diskussion | Beiträge) |
||
| (3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
__TOC__ | __TOC__ | ||
= Tools = | |||
== kafkacat == | |||
Das Tool [https://github.com/edenhill/kafkacat kafkacat] ist in den Paketquellen der Ubuntu 18.04 Distribution enthalten. | |||
sudo apt install kafkacat | |||
<br/> | |||
= Docker = | = Docker = | ||
| Zeile 6: | Zeile 16: | ||
== Bitnami Distribution (bitnami/kafka) == | == Bitnami Distribution (bitnami/kafka) == | ||
Auf Docker Hub ist eine Distribution von Bitnami [https://hub.docker.com/r/bitnami/kafka hier] zu finden. Das vorgeschlagene Docker Compose File benötigt jedoch Anpassungen, damit ein Kafka Client auf dem Docker Host verwendet werden | Auf Docker Hub ist eine Distribution von Bitnami [https://hub.docker.com/r/bitnami/kafka hier] zu finden. Das dort vorgeschlagene bzw. verlinkte Docker Compose File [https://github.com/bitnami/bitnami-docker-kafka/blob/master/docker-compose.yml docker-compose.yml] benötigt jedoch Anpassungen, damit ein Kafka Client auf dem Docker Host bzw. einem anderen Host verwendet werden kann. Eine detaillierte Beschreibung kann dem Artikel [https://rmoff.net/2018/08/02/kafka-listeners-explained/ Kafka Listeners - Explained] entnommen werden. | ||
Ein Hinweis zum Hostname in der Umgebungsvariablen <code>KAFKA_LISTENERS</code>: Hier kann <code>0.0.0.0</code> zum Binden aller Interfaces angegeben werden oder kein Hostname (siehe zweite Konfiguration unten) zum Binden des Standard-Interface. Siehe auch: <code>listener</code> Setting der Apache Kafka [https://kafka.apache.org/documentation/#brokerconfigs Broker Konfiguration]. | |||
<syntaxhighlight> | <syntaxhighlight> | ||
| Zeile 29: | Zeile 41: | ||
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181 | - KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181 | ||
- ALLOW_PLAINTEXT_LISTENER=yes | - ALLOW_PLAINTEXT_LISTENER=yes | ||
- KAFKA_LISTENERS=MY_LISTENER://:9092 | - KAFKA_LISTENERS=MY_LISTENER://0.0.0.0:9092 | ||
- KAFKA_ADVERTISED_LISTENERS=MY_LISTENER://localhost:9092 | - KAFKA_ADVERTISED_LISTENERS=MY_LISTENER://localhost:9092 | ||
- KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=MY_LISTENER:PLAINTEXT | - KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=MY_LISTENER:PLAINTEXT | ||
Aktuelle Version vom 3. Januar 2020, 18:17 Uhr
Tools
kafkacat
Das Tool kafkacat ist in den Paketquellen der Ubuntu 18.04 Distribution enthalten.
sudo apt install kafkacat
Docker
Bitnami Distribution (bitnami/kafka)
Auf Docker Hub ist eine Distribution von Bitnami hier zu finden. Das dort vorgeschlagene bzw. verlinkte Docker Compose File docker-compose.yml benötigt jedoch Anpassungen, damit ein Kafka Client auf dem Docker Host bzw. einem anderen Host verwendet werden kann. Eine detaillierte Beschreibung kann dem Artikel Kafka Listeners - Explained entnommen werden.
Ein Hinweis zum Hostname in der Umgebungsvariablen KAFKA_LISTENERS: Hier kann 0.0.0.0 zum Binden aller Interfaces angegeben werden oder kein Hostname (siehe zweite Konfiguration unten) zum Binden des Standard-Interface. Siehe auch: listener Setting der Apache Kafka Broker Konfiguration.
version: '3'
services:
zookeeper:
image: 'bitnami/zookeeper:3'
ports:
- '2181:2181'
volumes:
- 'zookeeper_data:/bitnami'
environment:
- ALLOW_ANONYMOUS_LOGIN=yes
kafka:
image: 'bitnami/kafka:2'
ports:
- '9092:9092'
volumes:
- 'kafka_data:/bitnami'
environment:
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_LISTENERS=MY_LISTENER://0.0.0.0:9092
- KAFKA_ADVERTISED_LISTENERS=MY_LISTENER://localhost:9092
- KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=MY_LISTENER:PLAINTEXT
- KAFKA_INTER_BROKER_LISTENER_NAME=MY_LISTENER
depends_on:
- zookeeper
volumes:
zookeeper_data:
driver: local
kafka_data:
driver: local
Ein vereinfachtes Docker Compose File sieht wie folgt aus.
version: '3'
services:
zookeeper:
image: 'bitnami/zookeeper:3'
ports:
- '2181:2181'
volumes:
- 'zookeeper_data:/bitnami'
environment:
- ALLOW_ANONYMOUS_LOGIN=yes
kafka:
image: 'bitnami/kafka:2'
ports:
- '9092:9092'
volumes:
- 'kafka_data:/bitnami'
environment:
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_LISTENERS=PLAINTEXT://:9092
- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092
depends_on:
- zookeeper
volumes:
zookeeper_data:
driver: local
kafka_data:
driver: local