一、搭建环境
OS: ubuntu 18.0.4
Zookeeper : zookeeper-3.5.4
二、搭建过程
- 下载
从官网( https://archive.apache.org/dist/zookeeper/ )下载 zookeeper-3.5.4-beta.tar.gz 。 - 上传和解压
创建/usr/local/zkcloud文件夹,上传zookeeper-3.5.4-beta.tar.gz到新建文件夹下,然后解压得到zookeeper-3.5.4。将解压文件复制三份,并将目录分别命名为zookeeper01、zookeeper02、zookeeper03.
root@ubuntu:/usr/local# mkdir zkcloud
root@ubuntu:/usr/local# cd zkcloud
root@ubuntu:/usr/local/zkcloud# tar -zxvf zookeeper-3.5.4-beta.tar.gz
root@ubuntu:/usr/local/zkcloud# cp -r zookeeper-3.5.4 zookeeper01
root@ubuntu:/usr/local/zkcloud# cp -r zookeeper-3.5.4 zookeeper02
root@ubuntu:/usr/local/zkcloud# cp -r zookeeper-3.5.4 zookeeper03
- 创建myid
在/usr/local/zkcloud/zookeeper01下创建data目录,并在data目录中创建一个myid文件,内容为“1”(echo 1 >>data/myid)。然后分别进入02和03文件夹,进行同样的操作,但是myid文件内容为2和3。
root@ubuntu:/usr/local/zkcloud# cd zookeeper01
root@ubuntu:/usr/local/zkcloud/zookeeper01# mkdir data
root@ubuntu:/usr/local/zkcloud/zookeeper01# touch myid
root@ubuntu:/usr/local/zkcloud/zookeeper01# echo 1 >> data/myid
- 创建zoo.cfg文件,并进行修改
在/usr/local/zkcloud/zookeeper01文件夹下,复制一份zoo_sample.cfg,并命名为zoo.cfg。
root@ubuntu:/usr/local/zkcloud/zookeeper01# cp zoo_sample.cfg zoo.cfg
修改zoo.cfg内容。
修改部分:
dataDir=/usr/local/zkcloud/zookeeper01/data
clientPort=2181
clientPort是客户端连接zookeeper的端口,即zookeeper提供服务的端口。在zookeeper02中设置为2182,在zookeeper03中设置为2183.
在文件最后添加部分(zookeeper节点列表):
server.1=192.168.182.130:2881:3881
server.2=192.168.182.130:2882:3882
server.3=192.168.182.130:2883:3883
注:server.节点id(myid文件内容) = 节点ip : 节点之间通信的端口 : 节点之间投票选举的端口
三、启动和关闭
- 启动
root@ubuntu:/usr/local/zkcloud# /usr/local/zkcloud/zookeeper01/bin/zkServer.sh start
root@ubuntu:/usr/local/zkcloud# /usr/local/zkcloud/zookeeper02/bin/zkServer.sh start
root@ubuntu:/usr/local/zkcloud# /usr/local/zkcloud/zookeeper03/bin/zkServer.sh start
或者创建批处理文件来启动。注意批处理文件的权限设置(chmod u+x zookeeper-start-all.sh)。
2. 关闭
root@ubuntu:/usr/local/zkcloud# /usr/local/zkcloud/zookeeper01/bin/zkServer.sh stop
root@ubuntu:/usr/local/zkcloud# /usr/local/zkcloud/zookeeper02/bin/zkServer.sh stop
root@ubuntu:/usr/local/zkcloud# /usr/local/zkcloud/zookeeper03/bin/zkServer.sh stop
或者创建批处理文件来关闭。
3. 查看集群状态
/usr/local/zkcloud/zookeeper01/bin/zkServer.sh status
/usr/local/zkcloud/zookeeper02/bin/zkServer.sh status
/usr/local/zkcloud/zookeeper03/bin/zkServer.sh status
显示结果为:
一个leader,两个follower。