前提:jdk必须已安装
1.上传及解压文件
1.1 上传文件到master机器/opt
1.2 解压及拷贝文件到指定目录
cd /opt
tar -zxvf zookeeper-3.4.9.tar.gz
cp -r zookeeper-3.4.9 /usr/local/zk_cluster/zookeeper
2. zookeeper集群配置
2.1 文件配置
进入zookeeper中的conf目录
cp zoo_sample.cfg zoo.cfg
编辑zoo.cfg文件:
vim zoo.cfg
server.1=192.168.233.150:2881:3881
server.2=192.168.233.151:2881:3881
server.3=192.168.233.152:2881:3881
2.2 myid唯一编码配置
cd /tmp/zookeeper
注意:如果/tmp/zookeeper文件目录不存在,需要新建 mkdir -p /tmp/zookeeper
vim myid
输入zoo.cfg中ip对应的server
保存后,第一次 /tmp/zookeeper目录只有myid文件
至此 master主机服务器zookeeper已搭建完成。
2.3 其他服务器zookeeper搭建
搭建192.168.233.151/node1和192.168.233.152/node2服务器的zookeeper
2.3.1 master服务器到node1服务器
拷贝master服务器的zookeeper至node1/usr/local/zk_cluster目录:
cd /usr/local/zk_cluster
scp -r zookeeper root@192.168.233.151:/usr/local/zk_cluster/
注意:myid文本内容:是zoo.cfg中192.168.233.151对应的server,即 2
2.3.2 master服务器到node2服务器
拷贝master服务器的zookeeper至node2的 /usr/local/zk_cluster目录:
cd /usr/local/zk_cluster
scp -r zookeeper root@192.168.233.152:/usr/local/zk_cluster/
注意:myid文本内容:是zoo.cfg中192.168.233.152对应的server,即 3
3.zookeeper集群测试
3.1 测试命令
#启动
bin/zkServer.sh start
#状态
bin/zkServer.sh status
#关闭
bin/zkServer.sh stop
3.2 集群测试
3.2.1 启动master的zookeeper
cd /usr/local/zk_cluster/zookeeper
bin/zkServer.sh start
3.2.2 启动node1的zookeeper
cd /usr/local/zk_cluster/zookeeper
bin/zkServer.sh start
3.2.3 启动node2的zookeeper
cd /usr/local/zk_cluster/zookeeper
bin/zkServer.sh start
3.2.4 查看master状态
bin/zkServer.sh status
3.2.5 查看node1状态
bin/zkServer.sh status
3.2.6 查看node2状态
bin/zkServer.sh status
4.将Zookeeper做成服务
4.1 新建一个zookeeper脚本
进入到/etc/init.d目录下,新建一个zookeeper脚本
cd /etc/init.d/
touch zookeeper
vim zookeeper
#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts zookeeper
# /etc/init.d/zoo
# zookeeper auto-start
export JAVA_HOME=/usr/local/java/jdk1.8.0_11
export JRE_HOME=/usr/local/java/jdk1.8.0_11/jre
zookeeper=/usr/local/zk_cluster/zookeeper/bin/zkServer.sh
case "$1" in
start) $zookeeper start;;
stop) $zookeeper stop;;
status) $zookeeper status;;
restart) $zookeeper restart;;
*)echo "require start|stop|status|restart";;
esac
4.2 修改启动文件的权限
chmod +x /etc/init.d/zookeeper
4.3 设定开机启动服务
update-rc.d zookeeper defaults
4.4 启动,停止zookeeper
service zookeeper start
service zookeeper stop
4.5 查看状态
service zookeeper status