我正在嘗試使用 docker 在 kafka 中使用三個節點來啟動多個集群,我在我的 docker-compose 檔案中遵循了這種方法,但這是錯誤的,我無法啟動我在 docker-compose 檔案中撰寫的 Kafka,請告訴我真正的 docker-compose 檔案或使用 docker 在 Kafka 中建立多個集群(具有三個節點)的真正方法
version: '2'
services:
zookeeper-1:
image: confluentinc/cp-zookeeper:latest
environment:
ZOOKEEPER_SERVER_ID: 1
ZOOKEEPER_CLIENT_PORT: 22101
ZOOKEEPER_TICK_TIME: 2000
ZOOKEEPER_INIT_LIMIT: 5
ZOOKEEPER_SYNC_LIMIT: 2
ZOOKEEPER_SERVERS: localhost:22000:23000;localhost:32000:33000;localhost:42000:43000
network_mode: host
extra_hosts:
- "moby:127.0.0.1"
zookeeper-2:
image: confluentinc/cp-zookeeper:latest
environment:
ZOOKEEPER_SERVER_ID: 2
ZOOKEEPER_CLIENT_PORT: 32181
ZOOKEEPER_TICK_TIME: 2000
ZOOKEEPER_INIT_LIMIT: 5
ZOOKEEPER_SYNC_LIMIT: 2
ZOOKEEPER_SERVERS: localhost:22888:23888;localhost:32888:33888;localhost:42888:43888
network_mode: host
extra_hosts:
- "moby:127.0.0.1"
zookeeper-3:
image: confluentinc/cp-zookeeper:latest
environment:
ZOOKEEPER_SERVER_ID: 3
ZOOKEEPER_CLIENT_PORT: 42181
ZOOKEEPER_TICK_TIME: 2000
ZOOKEEPER_INIT_LIMIT: 5
ZOOKEEPER_SYNC_LIMIT: 2
ZOOKEEPER_SERVERS: localhost:22888:23888;localhost:32888:33888;localhost:42888:43888
network_mode: host
extra_hosts:
- "moby:127.0.0.1"
kafka-1:
image: confluentinc/cp-zookeeper:latest
network_mode: host
depends_on:
- zookeeper-1
- zookeeper-2
- zookeeper-3
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: localhost:22181,localhost:32181,localhost:42181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:19092
kafka-2:
image: confluentinc/cp-zookeeper:latest
network_mode: host
depends_on:
- zookeeper-1
- zookeeper-2
- zookeeper-3
environment:
KAFKA_BROKER_ID: 2
KAFKA_ZOOKEEPER_CONNECT: localhost:22181,localhost:32181,localhost:42181
KAFKA_ADVERTISED_LISTENER: PLAINTEXT://localhost:29092
extra_hosts:
- "moby:127.0.0.1"
kafka-3:
image: confluentinc/cp-zookeeper:latest
network_mode: host
depends_on:
- zookeeper-1
- zookeeper-2
- zookeeper-3
environment:
KAFKA_BROKER_ID: 3
KAFKA_ZOOKEEPER_CONNECT: localhost:22181,localhost:32181,localhost:42181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:39092
extra_hosts:
- "moby:127.0.0.1"
uj5u.com熱心網友回復:
我通過以下鏈接解決了我的問題:
https://github.com/conduktor/kafka-stack-docker-compose
我的問題是關于如何使用 docker-compose 在 Kafka 中擁有多個節點(Kafka 中的多個集群),我使用了這個專案:Single Zookeeper / Multiple Kafka,來自該存盤庫并運行此命令來使用它:
docker-compose -f zk-single-Kafka-single.yml up
之后,您可以使用此命令檢查哪些容器已啟動:
sudo docker ps
和輸出名稱是:
kafka-stack-docker-compose_kafka2_1
kafka-stack-docker-compose_kafka3_1
kafka-stack-docker-compose_kafka1_1
動物園1
用他們的 ID 和 STATUS 和 ...
uj5u.com熱心網友回復:
您的配置是錯誤的:每個 zk 節點都有一個行程(名為 QuorumPeerMain),它在默認埠2181上偵聽客戶端,并在埠2888:3888上相互通信。因此,當嘗試定義動物園管理員法定人數時,請將其定義為zk1:[port],zk2:[port],...
zookeeper-1:
ZOOKEEPER_CLIENT_PORT: 2181
...
...
zookeeper-2:
ZOOKEEPER_CLIENT_PORT: 2181
...
...
zookeeper-3:
ZOOKEEPER_CLIENT_PORT: 2181
并在 Kafka 屬性中:
KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181
按照此鏈接:使用 Docker 設定 Apache Kafka 的指南
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/388093.html
下一篇:在sqlite中本地洗掉特殊字符
