大致思路
三個文件夾分別對應三個zookeeper服務,每個文件夾下啟動的zookeeper用不同的端口(多機部署的話相當於每個文件夾分別放在三台不同機器上,此時每台機器用同樣的端口即可)。
分別啟動三個文件夾下的服務,就搭建了一個zookeeper集群了。
步驟
下載zookeeper&配置zookeeper
mkdir /zookeeper
cd /zookeeper
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz
tar -zxvf apache-zookeeper-3.6.1-bin.tar.gz
mv apache-zookeeper-3.6.1-bin zookeeper1
cd zookeeper1
mkdir data
cd data
echo "1" > myid
cd ../conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
修改dataDir為:dataDir=/zookeeper/zookeeper1/data
末尾追加三行:
server.1=127.0.0.1:2881:3881
server.2=127.0.0.1:2882:3882
server.3=127.0.0.1:2883:3883
cd /zookeeper
cp -r zookeeper1 zookeeper2
cp -r zookeeper1 zookeeper3
cd zookeeper2
echo "2" > data/myid
vi conf/zoo.cfg
修改dataDir路徑中的1為2
修改clientPort=2182
cd ../zookeeper3
echo "3" > data/myid
vi conf/zoo.cfg
修改dataDir路徑中的1為3
修改clientPort=2183
啟動
sh /zookeeper/zookeeper1/bin/zkServer.sh start
sh /zookeeper/zookeeper2/bin/zkServer.sh start
sh /zookeeper/zookeeper3/bin/zkServer.sh start
其他命令
查看當前服務啟動狀態:zkServer.sh status
停止服務:zkServer.sh stop
連接客戶端:zkCli.sh -server 127.0.0.1:2182
備注
server.1=127.0.0.1:2881:3881。第一個端口是zookeeper服務之間通信端口,第二個是選舉端口。