1,确定已安装jdk环境(可看我的CentOS环境jdk安装篇)
2,解压zookeeper-3.4.8.tar.gz
[root@yandype home]# tar -zxvf zookeeper-3.4.8.tar.gz //我的zookeeper包是在根目录的home文件夹下面
解压后变成zookeeper-3.4.8
然后,复制2个zookeeper实例。一般,集群最少要3个实例。
第一个实例:
[root@yandype home]# cp zookeeper-3.4.8 zookeeper-3.4.8_2
第二个实例:
[root@yandype home]# cp zookeeper-3.4.8 zookeeper-3.4.8_3
重命名让它变成第一个:
[root@yandype home]# mv zookeeper-3.4.8 zookeeper-3.4.8_1
3,创建zoo.cfg
cd进入到
[root@yandype home]# cd zookeeper-3.4.8_1/conf
复制一份.cfg文件并且命名为zoo.cfg:
[root@yandype conf]# cp zoo_sample.cfg zoo.cfg
编辑里面的内容:
vim zoo.cfg
主要修改:
dataDir=/www/zookeeper/data1 //指定数据路径,这是第1个命名为data1,第二个命名data2...以此类推
dataLogDir=/www/zookeeper/log
clientPort=2181 //第一个实例端口默认就行,其它实例端口需要修改如:第二个实例:2182第三个实例:2183...以此类推
// 实例ip(我们这里是本机所以使用127.0.0.1)端口自定义。只要不重复即可
server.0=127.0.0.1:9001:9002
server.1=127.0.0.1:9011:9022
server.2=127.0.0.1:9033:9044
保存退出 :wq
其它的直接拷贝这份zoo.cfg配置,只需要修改数据路径和实例端口(clientPort)即可。
4,创建数据路径和日志路径
我们以这个创建,数据:dataDir=/www/zookeeper/data1日志:dataLogDir=/www/zookeeper/log
根目录下(cd /)创建了一个www文件夹然后里面又有一个zookeeper文件夹
然后在zookeeper文件夹里面创建数据路径和日志路径:
[root@yandype zookeeper]# mkdir data1
[root@yandype zookeeper]# mkdir data2
[root@yandype zookeeper]# mkdir data3
[root@yandype zookeeper]# mkdir log
特别重要的一步:
我在这一步上面,反反复复搞了一个早上。
我们在刚刚创建的data1里面创建一个myid文件。这个文件内容为实例的server.0编号。
比如:我现在是data1那么对应第一个实例:server.0=127.0.0.1:9001:9002那么,这个myid内容为0,
如果是data2,对应第二个实例:server.1=127.0.0.1:9011:9022 那么data2文件夹里面的myid内容为1
以此类推.....
具体命令:
[root@yandype zookeeper]# cd data1
[root@yandype data1]# vim myid //第一个data1内容应该为0,第二个data2为1,也就是根据server."这个数字来填写的"
5,启动zookeeper实例:
我这里用来批量处理:
[root@yandype home]# vim start_all_zookeeper.sh //创建一个批处理文件
里面内容命令:
./zookeeper-3.4.8_1/bin/zkServer.sh start
./zookeeper-3.4.8_2/bin/zkServer.sh start
./zookeeper-3.4.8_3/bin/zkServer.sh start
保存退出:wq
[root@yandype home]#chmod +x start_all_zookeeper.sh //给刚刚批量的处理脚本授权,授权后应该为绿色。
[root@yandype home]#./start_all_zookeeper.sh //启动批量zookeeper脚本命令
6,查看集群是否搭建成功:
同样写一个批量查看zookeeper状态:
[root@yandype home]# cp start_all_zookeeper.sh status_all_zookeeper.sh //复制刚刚的批量脚本,然后,修改里面内容即可
[root@yandype home]# vim status_all_zookeeper.sh
修改里面内容即可:
./zookeeper-3.4.8_1/bin/zkServer.sh status
./zookeeper-3.4.8_2/bin/zkServer.sh status
./zookeeper-3.4.8_3/bin/zkServer.sh status
[root@yandype home]#./status_all_zookeeper.sh //启动批量zookeeper脚本命令
此时显示:
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.8_1/bin/../conf/zoo.cfg
Mode: follower
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.8_2/bin/../conf/zoo.cfg
Mode: leader
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.8_3/bin/../conf/zoo.cfg
Mode: follower
到这里,zookeeper集群搭建完毕。