目录
一、官网下载:
二、安装配置
本地模式安装(单机测试)
三、zoo.cfg配置参数介绍
四、真分布式配置
五、伪分布式配置
https://zookeeper.apache.org/
点击Download
再点击Download
进入镜像下载页,最上方为推荐镜像下载地址,如果失效,可以选择下面的
选择版本,这里建议选择3.5.5,不知道为何3.5.6下载一直启动失败
点击下载,从3.5.5开始,不带bin的为源码,只能看不能用。所以此处选择下载apache-zookeeper-3.5.5-bin.tar.gz
安装jdkz(略)
解压缩zookeeper
tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz
修改配置
在apache-zookeeper-3.5.6下新建data、logs 两个文件夹
mkdir data
mkdir logs
重命名apache-zookeeper-3.5.6/conf/zoo_sample.cfg为zoo.cfg
mv apache-zookeeper-3.5.5-bin/conf/zoo_sample.cfg zoo.cfg
修改zoo.cfg中以下配置(刚刚新建的data、logs文件夹的路径):
dataDir=***/apache-zookeeper-3.5.5-bin/data
dataLogDir***/apache-zookeeper-3.5.5-bin/logs
启动zookeeper(apache-zookeeper-3.5.6/bin下)
./zkServer.sh start
查看是否启动成功
jps
查看zookeeper启动模式,也可验证是否启动有效
./zkServer.sh status
启动客户端
./zkCli.sh
退出客户端
quit
关闭zookeeper服务
./zkServer.sh stop
tickTime=2000:心跳,最小时间单元长度,实际时间均以该参数的倍数表示。单位ms
initLimit=10:zookeeper的leader和follower开始通信最大延时时间(节点启动+数据同步) initLimit*tickTime
syncLimit=5:集群正常启动后leader和follower通信的最大延时时间(心跳检测) syncLimit*tickTime
clientPort=2181:zookeeper端口号
仅需在上述单击模式步骤中增加两步
1.在apache-zookeeper-3.5.6/data下新建myid文件,并在内容中输入服务器编号(范围1-255之间随便写,但要保证多台间编号不同,建议使用IP地址第四段数字)
2.在apache-zookeeper-3.5.6/conf/zoo.cfg中新增服务器配置:
server.=::
myid:data文件夹下myid文件内容
IP:zookeeper节点所在IP
PORT1:leader与follower通信端口(心跳检测,数据同步)
PORT2:领导选举中,多台zookeeper间的选举信息投票通信端口
例如:三台服务器IP分别为:1.1.1.1,2.2.2.2,3.3.3.3;myid分别设置为1 2 3,那么配置就应该为:
server.1=1.1.1.1:2888:3888
server.2=2.2.2.2:2888:3888
server.3=3.3.3.3:2888:3888
此时再使用./zkServer.sh status,得到的结果中Mode会变成leader或follower
若没有多台服务器可用,可以用一台服务器启动多个zookeeper,只需配置不同端口即可。
首先复制三个zookeeper文件夹,分别起名zookeeper1、zookeeper2、zookeeper3
仅需在真分布式配置基础上修改三个地方。
1、修改各自的conf/zoo.cfg中dataDir及dataLogDir属性路径
2、修改conf/zoo.cfg中clientPort为不同值,例如分别修改为:2181、2182、2183
3、修改conf/zoo.cfg中服务器端口为不同值,例如:
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889
然后分别启动三台zookeeper
用./zkServer.sh status查看启动模式: