Zookeeper單機僞分布式叢集搭建
說明
伺服器名稱與位址:叢集資訊(伺服器編号,伺服器位址,LF通信端口,選舉端口)
這個配置項的書寫格式比較特殊,規則如下:server.N=YYY:A:B 其中,
N表示伺服器編号,
YYY表示伺服器的IP位址,
A為LF通信端口,表示該伺服器與叢集中的leader交換的資訊的端口。
B為選舉端口,表示選舉新leader時伺服器間互相通信的端口(當leader挂掉時,其餘伺服器會互相通信,選擇出新的leader)
一般來說,叢集中每個伺服器的A端口都是一樣,每個伺服器的B端口也是一樣。
下面是一個叢集的例子:
server.0=233.34.9.144:2008:6008
server.1=233.34.9.145:2008:6008
server.2=233.34.9.146:2008:6008
server.3=233.34.9.147:2008:6008
但是當所采用的為僞叢集時,IP位址都一樣,隻能是A端口和B端口不一樣。
下面是一個僞叢集的例子:
server.0=127.0.0.1:2008:6008
server.1=127.0.0.1:2007:6007
server.2=127.0.0.1:2006:6006
server.3=127.0.0.1:2005:6005
開始搭建
linux下安裝(CentOS 7)
①官網下載下傳安裝包,本次版本zookeeper-3.4.11.tar.gz
下載下傳位址:https://zookeeper.apache.org/
②找到下載下傳的壓縮包并将其解壓至/opt目錄下
tar -zxvf zookeeper-3.4.11.tar.gz -C /opt
③在/opt目錄中建立專屬zookeeper目錄,随後将上一步解壓的zookeeper内容拷貝進/myzookeeper目錄内。
cd /opt
mkdir /myzookeeper
mv zookeeper-3.4.11 myzookeeper
cd /myzookeeper
④進入conf檔案夾,拷貝一份zoo_sample.cfg更名為zoo.cfg
⑤将myzookeeper目錄下的zookeeper-3.4.11拷貝一份命名為zk01
cp -r zookeeper-3.4.11/ zk01
⑥進入zk01建立檔案夾mydata和mylog
cd zk01
mkdir mydata
mkdir mylog
⑦進入conf中修改配置檔案zoo.cfg
cd /conf
vim zoo.cfg
dataDir=/opt/myzookeeper/zk01/mydata
dataLogDir=/opt/myzookeeper/zk01/mylog
server.1=127.0.0.1:2991:3991
server.2=127.0.0.1:2992:3992
server.3=127.0.0.1:2993:3993
⑧在mydata下建立myid檔案,在裡面寫入server的數字
⑨回到myzookeeper,将zk01再拷貝兩份zk02、zk03并将不同部分修改即可
cp -r zk01 zk02
cp -r zk01 zk03
修改zk02:
cd zk02/conf
vim zoo.cfg
修改mydata下的myid中的數值為2
修改zk03(與修改zk02同理):
⑩分别啟動三個伺服器
分别進入zk01、zk02、zk03的bin目錄執行 ./zkServer.sh start 指令,并檢視服務狀态
ps -ef | grep zookeeper
連接配接zookeeper
./zkCli.sh -server 127.0.0.1:219X