【发布时间】:2015-12-02 03:22:52
【问题描述】:
我想设置 3.5.1 版本的 3 节点 Zookeeper 集群。为了将它部署到kubernetes中,我必须将zookeeper节点本身设置为0.0.0.0,这样才能正确启动它。配置如下:
zk1: 动物园.cfg
standaloneEnabled=false
dynamicConfigFile=/opt/zookeeper/conf/zoo.cfg.dynamic
zoo.cfg.dynamic
server.1=0.0.0.0:2888:3888:participant;2181
server.2=10.62.56.192:2889:3889:participant;2182
server.3=10.62.56.192:2890:3890:participant;2183
zk2: 动物园.cfg
standaloneEnabled=false
dynamicConfigFile=/opt/zookeeper/conf/zoo.cfg.dynamic
zoo.cfg.dynamic
server.1=10.62.56.192:2888:3888:participant;2181
server.2=0.0.0.0:2889:3889:participant;2182
server.3=10.62.56.192:2890:3890:participant;2183
zk3: 动物园.cfg
standaloneEnabled=false
dynamicConfigFile=/opt/zookeeper/conf/zoo.cfg.dynamic
zoo.cfg.dynamic
server.1=10.62.56.192:2888:3888:participant;2181
server.2=10.62.56.192:2889:3889:participant;2182
server.3=0.0.0.0:2890:3890:participant;2183
结果只有zk1可以启动,zk2和zk3启动失败。错误是
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: client address for this server (id = 2) in static config file is 0.0.0.0/0.0.0.0:2181 is different from client address found in dynamic file: /0.0.0.0:2182
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.setupClientPort(QuorumPeerConfig.java:608)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.setupQuorumPeerConfig(QuorumPeerConfig.java:506)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:157)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:110)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:79)
无效配置,异常退出
关键是我们必须将节点本身配置为0.0.0.0。
【问题讨论】:
标签: apache-zookeeper kubernetes