zoo.cfg详解
1.tickTime
tickTime=2000
这个属性表示心跳时间间隔,Leader用来监听Follower的心跳,一旦挂掉一半以上Follower,会通过Zab(消息原子广播)协议使集群所有个体状态转变为Looking(等待选举新任Leader)。此属性除了用来监听之外,还对后面的同步时间和初始化时间有影响,系统默认为2000毫秒。
2.initLimit
initLimit=10
集群中的follower服务器与Leader服务器之间初始连接时能容忍的最多心跳数(tickTime的数量),系统默认为10。
3.syncLimit
syncLimit=5
集群中Follower服务器跟Leader服务器之间的请求和答应最多能容忍的心跳数(tickTime的数量),系统默认为5。
4.dataDir
dataDir=/user/local/zookeeper/data
此属性表示一个路径,用来存放数据快照(即zookeeper目录)、myid文件和日志文件夹,系统默认为/tmp/data,根据自己zk安装路径进行修改并创建data目录。
5.clientPort
clientPort=2181
zk客户端端口号,默认2181。
6.dataLogDir
dataLogDir=/user/local/zookeeper/data/log
此属性表示一个路径,用来存放zk写日志。
7.server.index=IP:A:B
server.0=190.168.241.127:2888:3888
server.1=190.168.241.128:2888:3888
server.2=190.168.241.129:2888:3888
此处是关于zk集群的配置,index代表自定义的各服务器序号(对应写在各自机器的myid中),IP即各服务器IP,A表示集群服务器之间通讯组件的端口,B表示选举组件的端口。如果配成集群,则zk状态(mode)为leader或follower;如果只配一个单机,mode为standalone。