zookeeper叢集的搭建

孫晨c發表於2020-09-26

@

1.叢集規劃

在hadoop101、hadoop102和hadoop103,這三個節點上部署Zookeeper。

2.解壓安裝

(1)在101機器上,解壓Zookeeper安裝包到/opt/module/(自己建立)目錄下

tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/

(2)在101機器上,同步/opt/module/zookeeper-3.4.10目錄內容到hadoop102、hadoop103

 scp -r /opt/module/zookeeper-3.4.14/ sun@hadoop102:/opt/module/
 scp -r /opt/module/zookeeper-3.4.14/ sun@hadoop103:/opt/module/

3.配置伺服器編號

(1)在/opt/module/zookeeper-3.4.10/這個目錄下建立一個datas目錄,然後在裡面建立一個myid的檔案,並編輯。在檔案中新增與server對應的編號:

vi myid
#若是在101主機,則檔案裡新增101

(2)拷貝配置好的zookeeper到其他機器上

xsync myid

並分別在hadoop102、hadoop103上修改myid檔案中內容為102、103

4.配置zoo.cfg檔案

(1)重新命名/opt/module/zookeeper-3.4.10/conf這個目錄下的zoo_sample.cfgzoo.cfg

mv zoo_sample.cfg zoo.cfg

(2)開啟zoo.cfg檔案

vi zoo.cfg
  • 修改資料儲存路徑配置
dataDir=/opt/module/zookeeper-3.4.14/datas
  • 增加如下配置
#######################cluster##########################
 #如果101是leader則向2888埠發請求,若是follower則向3888埠發請求,一下同理
server.101=hadoop101:2888:3888
server.102=hadoop102:2888:3888
server.103=hadoop103:2888:3888

(3)同步zoo.cfg配置檔案

xsync zoo.cfg

(4)配置引數解讀

server.A=B:C:D

A是一個數字,表示這個是第幾號伺服器;
叢集模式下配置一個檔案myid,這個檔案在dataDir目錄下,這個檔案裡面有一個資料就是A的值,Zookeeper啟動時讀取此檔案,拿到裡面的資料與zoo.cfg裡面的配置資訊比較從而判斷到底是哪個server。
B是這個伺服器的地址;
C是這個伺服器Follower與叢集中的Leader伺服器交換資訊的埠;
D是萬一叢集中的Leader伺服器掛了,需要一個埠來重新進行選舉,選出一個新的Leader,而這個埠就是用來執行選舉時伺服器相互通訊的埠。

5.叢集操作

分別在三個節點啟動zookeeper

/opt/module/zookeeper-3.4.14/bin/zkServer.sh start

在這裡插入圖片描述

檢視狀態

/opt/module/zookeeper-3.4.14/bin/zkServer.sh status

在這裡插入圖片描述

相關文章