配置hosts
修改zoo.cf
在某一台一台机器上(master),将conf/zoo_sample.cfg拷贝一份命名为zoo.cfg,也放在conf目录下。然后按照如下值修改其中的配置:
tickTime=2000 //每个tickTime时间就会发送一个心跳 dataDir=/home/vmworker01/software/zookeeper-3.4.6/zookeeper-3.4.6/datainitLimit=5 //连接到Leader的Follower 服务器,初始化连接时最长能忍受多少个心跳时间间隔数.=10*2000syncLimit=2 //Leader与Follower之间发送消息,请求和应答时间长度,最长不能超过多少个tickTime的时间长度clientPort=2181server.1=zoo1:2888:3888server.2=zoo2:2888:3888server.3=zoo3:2888:3888
将安装目录远程拷贝到其他各个节点上:(参数r表示为目录)
scp -r zookeeper-3.4.6/ vmworker01@worker01:/home/vmworker01/software/
设置myid
在我们配置的dataDir指定的目录下面,创建一个myid文件,里面内容为一个数字,用来标识当前主机,conf/zoo.cfg文件中配置的server.X中X为什么数字,则myid文件中就输入这个数字。注意>表示覆盖写入,>>表示追加。
echo "1" > ~/software/zookeeper-3.4.6/zookeeper-3.4.6/data/myidecho "2" > ~/software/zookeeper-3.4.6/zookeeper-3.4.6/data/myidecho "3" > ~/software/zookeeper-3.4.6/zookeeper-3.4.6/data/myid
启动Zookeeper集群
在ZooKeeper集群的每个结点上,执行启动ZooKeeper服务的脚本(在bin下),如下所示:
./zkServer.sh starttail -fn100 zookeeper.out #是否启动
可以通过Zookeeper的脚本查看启动状态,包括各个节点的角色:
./zkServer.sh status