Zookeeper搭建及选举验证
1、下载zookeeper
https://pan.baidu.com/s/18Nbotzm_5fh4SGVMqo7r8w
h4eg
2、上传zookeeper到服务器,并解压
tar -xvf zookeeper-3.4.10
3、将解压后的zookeeper-3.4.10备份两个
cp zookeeper-3.4.10 zookeeper-3.4.10-bak1 -r
cp zookeeper-3.4.10 zookeeper-3.4.10-bak2 -r
4、进入zookeeper-3.4.10的conf路径,拷贝zoo_sample.cfg为zoo.cfg
cd /home/wl/zookeeper-3.4.10/conf
cp zoo_sample.cfg zoo.cfg
5、修改zoo.cfg配置
1)clientPort=2181
2)dataDir=/home/wl/zookeeper-3.4.10/data
3)zoo.cfg文件最后添加配置如下:
server.1=127.0.0.1:2880:3880
server.2=127.0.0.1:2881:3881
server.3=127.0.0.1:2883:3883
* server.1表示第一个节点,server.2表示第二个节点,server.3表示第三个节点;
* ip后第一个端口表示同步数据端口;
* ip后第二个端口表示选举端口;
* 如果zookeeper集群在同一台机器上,那么这里的6个端口(同步数据端口和选举端口)要错开,都不能重复,如果zookeeper集群不在同一台机器上,则端口不用错开;
6、创建zoo.cfg中配置的存放数据路径dataDir
1)进入zookeeper目录,cd /home/wl/zookeeper-3.4.10
2)创建data目录,makedir data
3)进入data,cd data
4)创建文myid,内容为1(注意与步骤5中server.后保持一致),vi myid ,内容为1,保存
7、重复步骤5-6,修改zookeeper-3.4.10-bak1、zookeeper-3.4.10-bak2
1)拷贝zoo.cfg
2)修改zoo.cfg,注意
* clientPort与zookeeper-3.4.10中配置的端口错开
* dataDir在各自的主目录下
* server配置保持一致
3)创建各自的data目录、myid文件,myid内容分别为2,3
配置好后效果如下:
8、启动3个zookeeper
1)分别进入各自主目录的bin下,如cd /home/wl/zookeeper-3.4.10/bin
2)执行如命令./zkServer.sh start
9、zookeeper集群启动完成,查看谁是leader
分别查看每个zookeeper的状态,如/home/wl/zookeeper-3.4.10/bin/zkServer.sh status。下图中bak2是leader
10、查找bak2中zookeeper的pid
ps -ef |grep zookeeper,如下pid=26828
11、杀掉bak2的zookeeper的pid,查看新的leader
kill -9 26828
如下图,看出bak2 leader被杀掉后,集群马上又选举出新的leader bak1