#配置文件路径:/ZOOKEEPER_DIR/conf/zoo.cfg #默认为软件安装路径下conf/zoo.cfg
#本文zookeeper安装路径为/data/zookeeper-3.4.9
#主要配置项:
tickTime=2000 #心跳基本时间单位,毫秒级,ZK基本上所有的时间都是这个时间的整数倍
initLimit=10 #tickTime的个数,表示在leader选举结束后,followers与leader同步需要的时间,如果followers比较多或者说leader的数据灰常多时,同步时间相应可能会增加,那么这个值也需要相应增加。当然,这个值也是follower和observer在开始同步leader的数据时的最大等待时间(setSoTimeout)
syncLimit=5 #tickTime的个数,这时间容易和上面的时间混淆,它也表示follower和observer与leader交互时的最大等待时间,只不过是在与leader同步完毕之后,进入正常请求转发或ping等消息交互时的超时时间
dataDir=/data/zookeeper-3.4.9/data #内存数据库快照存放地址,如果没有指定事务日志存放地址(dataLogDir),默认也是存放在这个路径下,建议两个地址分开存放到不同的设备上
dataLogDir=/data/zookeeper-3.4.9/log #将事务日志存储在该路径下,比较重要,这个日志存储的设备效率会影响ZK的写吞吐量
clientPort=2191 #配置ZK监听客户端连接的端口
clientPortAddress=10.10.10.1 #与clientPort匹配,表示某个IP地址,如果服务器有多个网络接口(多个IP地址),如果没有设置这个属性,则clientPort会绑定到所有IP地址上,否则只绑定到该设置的IP地址上
maxClientCnxns=300 #默认值是10,一个客户端能够连接到同一个服务器上的最大连接数,根据IP来区分。如果设置为0,表示没有任何限制
server.1=10.10.10.1:2898:3898
server.2=10.10.10.2:2898:3898
server.3=10.10.10.3:2898:3898
#server.x=hostname:port1:port2
#配置集群里面的主机信息,其中:
#server.x:server.x的x要写在myid文件中,决定当前机器的id
#hostname写主机名或者IP
#port1用于连接leader
#port2用于leader选举(如果electionAlg为0,则不需要第二个port)
#snap日志和事务日志自动清理配置
autopurge.purgeInterval=24 #这个参数指定了清理频率,单位是小时,需要填写一个1或更大的整数,默认是0,表示不开启自己清理功能
autopurge.snapRetainCount=7 #这个参数和上面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个
#高级配置项:
minSessionTimeout #最小的session time时间,默认值是2个tick time,客户端设置的session time 如果小于这个值,则会被强制协调为这个最小值
maxSessionTimeout #最大的session time 时间,默认值是20个tick time. ,客户端设置的session time 如果大于这个值,则会被强制协调为这个最大值