docker - Kafka docker - 错误:“无法找到分区 0 的领导者”
问题描述
下面是我的 Zookeeper 和 Kafka Dockers 的 YML 文件的一部分,我
添加了“KAFKA_CREATE_TOPICS”变量来在启动时创建主题,但是创建所有 6 个主题需要很长时间。所以每次我让码头工人上下班时,我都需要等到创建所有主题
*当kafka/zookeeper启动时,kafkaProducer创建主题的解决方案对我不利
,我希望他们记住所有主题,所以我添加了卷Zookeeper,它有效,现在启动时存在主题,但我无法使用任何主题,因为我收到以下错误:
“无法找到分区 0 的领导者”
zoo1:
image: xx.xx.xx.xx:5002/zookeeper
hostname: zoo1
ports:
- 2181:2181
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
networks:
- xxnet
deploy:
restart_policy:
condition: on-failure
logging:
driver: json-file
options:
max-size: 50m
volumes:
- /home/docker-volumes/zoo1-conf/:/conf
- /home/docker-volumes/zoo1-data/:/data
- /home/docker-volumes/zoo1-datalog/:/datalog
kafka:
image: xx.xx.xx.xx:5002/wurstmeister/kafka
ports:
- 9092:9092
environment:
KAFKA_ZOOKEEPER_CONNECT: zoo1:2181
KAFKA_ADVERTISED_HOST_NAME: xx.xx.xx.xx
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
KAFKA_ZOOKEEPER_CONNECTION_TIMEOUT_MS: 1600000
#KAFKA_AUTO_CREATE_TOPICS_ENABLE=true
KAFKA_LOG_RETENTION_HOURS: 0
KAFKA_LOG_RETENTION_MINUTES: 0
KAFKA_LOG_RETENTION_MS: 120000
RETENTION.MS: 900000
ADVERTISED_HOST: kafkaserver
ADVERTISED_PORT: 9092
KAFKA_SEGMENT_BYTES: 1073741824
KAFKA_RETENTION_CHECK_INTERVAL_MS: 300000
KAFKA_CREATE_TOPICS: topic1:1:1,topic2:1:1,topic3:1:1,topic4:1:1,topic5:1:1,topic6:1:1
networks:
- xxnet
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /home/docker-volumes/kafka-logs/:/tmp/kafka-logs
- /home/docker-volumes/kafka-logs/kafka:/kafka
deploy:
restart_policy:
condition: on-failure
logging:
driver: json-file
options:
max-size: 50m
谢谢,拉里
解决方案
推荐阅读
- python-3.x - Tkinter 打开 2 个窗口
- java - Java - 违反里氏替换原则?
- java - Java LocalTime 实现线程安全
- python - 在 tkinter 窗口类中显示活动列表
- c - 语言-C,while循环,错误输入错误
- javascript - 为什么 String.indexOf 会这样运行?
- mysql - 基于计数和删除的条件 SQL 连接
- python - 在python中添加到列表(来自类实例)
- firebase - 如何对具有发布、放置、删除到 Firestore 的多个端点的快速 http 云功能进行单元测试?
- android - Android 在 OkHttp 上禁用 SSL 固定