zookeeper安装配置的时候zoo.cfg配置信息分成了两个文件zoo.cfg.dynamic

本文记录了解决ZooKeeper启动错误的过程,包括修改zoo.cfg文件中的服务器ID配置,解决因配置不当导致的服务无法启动问题,并最终实现集群同步。

补充上一篇文章所说的:Error contacting service. It is probably not runnin

中间在Stack Overflow看到一个答案:把zoo.cfg文件中server.id中那个id为本机的ip配置成0.0.0.0,然后我照做了,启动后发现zoo.cfg变成了两个zoo.cfg和zoo.cfg.dynamic

而且zoo.cfg文件信息变成跟原来官网正常配置的时候文件不一样了:

官网介绍一般把zoo_sample.cfg文件copy成zoo.cfg然后再里面增加信息即可:

# Server 2
# The number of milliseconds of each tick
# 服务器与客户端之间交互的基本时间单元(ms)
tickTime=2000

# The number of ticks that the initial 
# synchronization phase can take
# zookeeper所能接受的客户端数量
initLimit=10

# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
# 服务器与客户端之间请求和应答的时间间隔
syncLimit=5

# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
# 保存zookeeper数据,日志路径
dataDir=/tmp/zookeeper/data
dataLogDir=/tmp/zookeeper/log

# the port at which the clients will connect
# 客户端与zookeeper相互交互的端口
clientPort=2182
server.1= IP:2888:3888
server.2= IP:2889:3889
server.3= IP:2890:3890
我把服务器为本机的ip改为0.0.0.0之后首先是启动服务,启动后,文件变为两个,且三台服务器中zoo.cfg.dynamic文件内容变成一样的了:

zoo.cfg配置信息:


zoo.cfg.dynamic文件配置信息:


       然后我又手动把对应的服务器中zoo.cfg.dynamic文件信息改为各个对应的IP为0.0.0.0,之后就是java环境变量的问题了,两个问题改完后就启动成功了。


总结:

       在服务启动后,三台服务器自动把某一台服务器的配置文件同步为一样的了,至于为何同步,还需要再看看zookeeper工作原理。



菜鸟一枚,有答案欢迎评论,共同学习!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值