我试图在kafka中使用docker建立多个带有三个节点的集群,并且在我的停靠-撰写文件中遵循了这种方法,但是这是错误的,而且我不能对Kafka -那些我在我的坞-撰写文件中写的那些,请告诉我真正的对接-撰写文件或者真正的方法,在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"
发布于 2021-12-19 13:31:42
我通过以下链接解决了我的问题:
https://github.com/conduktor/kafka-stack-docker-compose
我的问题是,如何通过使用docker-组合在Kafka中拥有多个节点,我使用了这个项:来自存储库的单动物园管理员/多个Kafka,并运行以下命令来使用它:
docker-compose -f zk-single-Kafka-single.yml up
在此之后,您可以使用以下命令来检查哪些容器处于打开状态:
sudo docker ps
产出名称如下:
卡夫卡-堆栈-码头-合成_kafka2_1
卡夫卡-堆栈-码头-合成_kafka3_1
卡夫卡-堆栈-码头-合成_kafka1_1
zoo1
他们的身份和身份..。
发布于 2021-12-19 12:37:54
您的配置是错误的:每个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_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181
遵循以下链接:使用Docker设置Apache指南
https://stackoverflow.com/questions/70410982
复制相似问题