一. 部署前的准備工作
- 保證各個主機之間能夠正常通信,最好是在同一網段。
- 修改host文件,加入IP和主機名的映射。方法為修改/etc/hosts和etc/hostname文件,不同的Linux發行版方法不一定一樣。
- 開放要使用的端口或者關閉防火牆
二. 部署Zookeeper集群
- 訪問官網下載Zookeeper安裝包,並解壓。
tar -xvzf zookeeper-3.4.6.tar.gz
- 創建數據目錄
執行以下命令創建數據目錄:
mkdir /usr/zookeeper/data
執行以下命令創建日志目錄:
mkdir /usr/zookeeper/data/log
執行以下命令創建myid文件,並寫入ID:
echo 1 > /usr/zookeeper/data/myid
- 修改配置
執行以下命令編輯zoo.cfg文件:
cd zookeeper-3.4.6/conf/ && mv zoo_sample.cfg zoo.cfg && vi zoo.cfg
修改配置如下:
dataDir=/usr/zookeeper/data dataLogDir=/usr/zookeeper/data/log autopurge.snapRetainCount=3 autopurge.purgeInterval=1
在最后添加Zookeeper集群各節點地址:
server.1=node1:2888:3888 server.2=node2:2888:3888 server.3=node3:2888:3888
- 拷貝配置文件到其他節點
scp -r zookeeper-3.4.6/ node2:/usr/
這里需要注意的是,每個節點中的myid是不能相同的。
三. 啟動Zookeeper集群
在Zookeeper集群中各節點執行以下命令啟動Zookeeper服務:
zookeeper-3.4.6/bin/zkServer.sh start
執行以下命令查看Zookeeper集群中各節點的狀態:
zookeeper-3.4.6/bin/zkServer.sh status


可以看到node1節點
為follewer節點
四. 驗證 HA的故障自動轉移是否好用
使用jps命令查看Zookeeper進程


使用kill -9 2432命令殺死leader進程,然后再查看每個節點的Zookeeper狀態,如果有一個為leader則驗證為好用