1. 程式人生 > >搭建Zookeeper叢集 Linux環境中

搭建Zookeeper叢集 Linux環境中

1.下載Zookeeper(建議下載到目錄 /usr/local/)

wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
Zookeeper官網下載地址:
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

2.解壓Zookeeper

tar -zxvf zookeeper-3.4.10.tar.gz

3.重新命名

 mv zookeeper-3.4.10 zookeeper

4.增加Zookeeper環境變數(Zookeeper需要依賴java環境

)

vim /etc/profile
在檔案末尾追加
export JAVA_HOME=/usr/local/jdk1.8.0_191
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export ZOOKEEPER_INSTALL=/usr/local/zookeeper
export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_INSTALL/bin

5.修改zoo_sample.cfg檔案(usr/local/zookeeper/conf目錄下)

修改名稱(Zookeeper預設讀取coo.cfg,zoo_sample.cfg是Zookeeper給予我們的示例檔案,兩個檔案不能同時存在)
mv zoo_sample.cfg zoo.cfg

6.修改zoo.cfg

vim zoo.cfg
dataDir=/usr/local/zookeeper/data  #更改
dataLogDir=/usr/local/zookeeper/logs #新增

##檔案末尾追加
quorumListenOnAllIPs=true  ##貌似雲伺服器必須加這句  虛擬機器vm好像不用
server.0=47.75.47.221:2888:3888  #叢集ip
server.1=119.29.112.106:2888:3888
server.2=47.106.239.90:2888:3888

7.在Zookeeper中新建data和logs目錄

cd /usr/local/zookeeper
mkdir data logs

8.進入data目錄新建myid(Zookeeper根據myid來關聯叢集)

myid的值是zoo.cfg檔案裡定義的server.A項A的值,Zookeeper 啟動時會讀取這個檔案,拿到裡面的資料與 zoo.cfg
裡面的配置資訊比較從而判斷到底是那個server,只是一個標識作用。

cd /usr/local/zookeeper/data
touch myid
vim myid
##第一行寫入該伺服器對應的id
##如該伺服器ip為:47.75.47.221,在zoo.cfg中47.75.47.221對應的server為0,則書寫"0"即可

9.關閉每臺伺服器的防火牆

systemctl stop firewalld.service

10.啟動Zookeeper

cd /usr/local/zookeeper/bin
./zkServer.sh start
#叢集伺服器節點都需要啟動
./zkServer.sh status #檢視zk狀態(一主多從)