gpt4 book ai didi

docker - 错误配置无效,在Kafka集群中异常退出

转载 作者:行者123 更新时间:2023-12-02 18:48:17 34 4
gpt4 key购买 nike

我有三个不同的节点,每个节点上都有 Docker 和 Ubuntu。我可以在本地的docker上运行zookeeper服务器(我的意思是没有任何集群配置),但我想用这三个节点制作kafka集群;事实上,我在每个节点上都安装了 docker,并在它们上面加载了 Ubuntu。我配置"zookeeper.properties"在“150.20.11.157”的docker环境中,如下所示:

dataDir=/tmp/zookeeper/data
tickTime=2000
initLimit=10
syncLimit=5
server.1=0.0.0.0:2888:3888
server.2=150.20.11.134:2888:3888
server.3=150.20.11.137:2888:3888
clientPort=2186

对于节点150.20.11.134,docker环境中的“zookeeper.properties”文件是这样的:
dataDir=/tmp/zookeeper/data
tickTime=2000
initLimit=10
syncLimit=5
server.1=150.20.11.157:2888:3888
server.2=0.0.0.0:2888:3888
server.3=150.20.11.137:2888:3888
clientPort=2186

对于节点150.20.11.137,docker环境中的“zookeeper.properties”文件是这样的:
dataDir=/tmp/zookeeper/data
tickTime=2000
initLimit=10
syncLimit=5
server.1=150.20.11.157:2888:3888
server.2=150.20.11.134:2888:3888
server.3=0.0.0.0:2888:3888
clientPort=2186

另外,我为节点 150.20.11.157 设置了这样的“server.properties”:
broker.id=0
port=9092
listeners = PLAINTEXT://150.20.11.157:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=150.20.11.157:2186,150.20.11.134:2186,
150.20.11.137:2186

节点 150.20.11.134 的“server.properties”是:
broker.id=1
port=9092
listeners = PLAINTEXT://150.20.11.134:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=150.20.11.157:2186,150.20.11.134:2186,
150.20.11.137:2186

节点 150.20.11.137 的“server.properties”是:
broker.id=2
port=9092
listeners = PLAINTEXT://150.20.11.137:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=150.20.11.157:2186,150.20.11.134:2186,
150.20.11.137:2186

问题是当我在每个节点的 docker 上运行 zookeeper 服务器时。我收到此错误:

[2019-01-16 12:45:54,588] INFO 从以下位置读取配置:./config/zookeeper.properties
(org.apache.zookeeper.server.quorum.QuorumPeerConfig)

[2019-01-16 12:45:54,601] 信息解析主机名:172.28.10.137 到地址:/172.28.10.137 (org.apache.zookeeper.server.quorum.QuorumPeer)

[2019-01-16 12:45:54,603] 信息解析主机名:0.0.0.0 到地址:/0.0.0.0 (org.apache.zookeeper.server.quorum.QuorumPeer)

[2019-01-16 12:45:54,603] 信息解析主机名:172.28.10.157 到地址:/172.28.10.157 (org.apache.zookeeper.server.quorum.QuorumPeer)

[2019-01-16 12:45:54,603] 信息默认为多数仲裁 (org.apache.zookeeper.server.quorum.QuorumPeerConfig)

[2019-01-16 12:45:54,604] 错误配置无效,异常退出(org.apache.zookeeper.server.quorum.QuorumPeerMain)

org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException:错误处理./config/zookeeper.properties
在 org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:156)
在 org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:104)
在 org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:81)
引起:java.lang.IllegalArgumentException:/tmp/zookeeper/data/myid 文件丢失
在 org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:408)
在 org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:152)
... 2 更多

配置无效,异常退出

你能告诉我如何拥有一个带有三个 docker 的 Kafka 集群,每个 docker 都在一个物理节点上吗?

先感谢您。

最佳答案

我也遇到过这个。

我认为这个线索在日志中,即

Caused by: java.lang.IllegalArgumentException: /tmp/zookeeper/data/myid file is missing at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:408)



您的 zookeeper.properties 中的以下行文件提供了 zookeeper 合奏的详细信息:
server.1=0.0.0.0:2888:3888
server.2=150.20.11.134:2888:3888
server.3=150.20.11.137:2888:3888

当其中一个 Zookeeper 服务器启动时,它通过查看 myid 来知道它是哪台服务器。文件在它自己的数据目录中,在本例中为 /tmp/zookeeper/data .

因此,您只需创建一个名为 myid 的文件即可。在每个服务器的上述目录中,只写 x = 1 , 23 (这些对应于 zookeeper.properties 文件中的服务器。 x)。

引用链接 - Apache Zookeeper .

希望这可以帮助!

关于docker - 错误配置无效,在Kafka集群中异常退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54218820/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com