目录
- 单机部署
- 解压
- 配置
- 启动
- 查看状态
- 停止
- NIO&BIO在Zookeeper中应用
单机部署
解压
解压上面下载的压缩包
tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz
配置
到解压目录下,/conf目录,把zoo_sample.cfg文件复制一份,命名为zoo.cfg
配置文件详解
Zookeeper配置文件详解
tickTime=2000
#这个属性表示心跳时间间隔,Leader用来监听Follower的心跳,一旦挂掉一半以上Follower,会通过Zab(消息原子广播)协议使集群所有个体状态转变为Looking(等待选举新任Leader)。此属性除了用来监听之外,还对后面的同步时间和初始化时间有影响,系统默认为2000毫秒。
initLimit=10
#集群中的follower服务器与Leader服务器之间初始连接时能容忍的最多心跳数(tickTime的数量),系统默认为10。
syncLimit=5
#集群中Follower服务器跟Leader服务器之间的请求和答应最多能容忍的心跳数(tickTime的数量),系统默认为5。
dataDir=/user/local/zookeeper/data
#此属性表示一个路径,用来存放数据快照(即zookeeper目录)、myid文件和日志文件夹,系统默认为/tmp/data,根据自己zk安装路径进行修改并创建data目录。
clientPort=2181
#zk客户端端口号,默认2181。
maxClientCnxns=60
#单个客户端与zookeeper最大并发连接数
autopurge.snapRetainCount=3
#保存的数据快照数量,多出的会被清除
autopurge.purgeInterval=1
#自动触发清除任务时间间隔,单位:时,默认0,标识不自动清除
dataLogDir=/user/local/zookeeper/data/log
#此属性表示一个路径,用来存放zk写日志。不配置日志默认保存在dataDir下
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。
启动
./zkServer.sh start ../conf/zoo.cfg
#解压目录/bin下执行,并且指定上一步创建的zoo.cfg配置文件
#成功启动会看到Starting zookeeper ... STARTED
#如果启动失败,去/usr/local/apache-zookeeper-3.7.0-bin/logs查看日志
查看状态
./zkServer.sh status ../conf/zoo.cfg
#可查看使用哪个配置启动的、当前模式、启动状态
停止
./zkServer.sh stop ../conf/zoo.cfg
NIO&BIO在Zookeeper中应用
- NIO
节点被连接或客户端开启监听事件时,用的是NIO - BIO
集群选举投票时,用的BIO