zookeeper 集群安裝部署
1:準備三臺服務器hadoop2、hadoop3、hadoop4。zookeeper集群部署最好是奇數個節點,目的是增加容錯率(集群需要保證半數以上機器正常)和防止腦裂。

2:準備zookeeper壓縮包,官網下載地址:http://mirror.bit.edu.cn/apache/zookeeper/
3:通過scp命令將壓縮包上傳到三臺服務器

4:解壓 tar -zxvf apache-zookeeper-3.5.8-bin -C /opt/module
5:將zookepper的conf的zoo_sample.cfg 重命名
mv zoo_sample.cfg zoo.cfg
6:編輯配置文件zoo.cfg
vi zoo.cfg

tickTime:基本事件單元,這個時間是作為Zookeeper服務器之間或客戶端與服務器之間維持心跳的時間間隔,每隔tickTime時間就會發送一個心跳;最小 的session過期時間為2倍tickTime
dataDir:存儲內存中數據庫快照的位置,除非另有說明,否則指向數據庫更新的事務日志。注意:應該謹慎的選擇日志存放的位置,使用專用的日志存儲設備能夠大大提高系統的性能,如果將日志存儲在比較繁忙的存儲設備上,那么將會很大程度上影像系統性能。
client:監聽客戶端連接的端口。
initLimit:允許follower連接并同步到Leader的初始化連接時間,以tickTime為單位。當初始化連接時間超過該值,則表示連接失敗。
syncLimit:表示Leader與Follower之間發送消息時,請求和應答時間長度。如果follower在設置時間內不能與leader通信,那么此follower將會被丟棄。
server.A=B:C:D
A:其中 A 是一個數字,表示這個是服務器的編號;
B:是這個服務器的 ip 地址;
C:Leader選舉的端口;
D:Zookeeper服務器之間的通信端口。
7:創建myid,我們需要在/opt/module/zookeeper3.5.8/data目錄下創建
touch myid
vi myid
#myid內容需要和zoo.cfg中對應,如在hadoop2服務器中創建myid的內容為0,在hadoop3服務器中創建myid的內容為1,在hadoop4服務器中創建myid的內容為2
8:zookeepr命令,在/opt/module/zookeeper3.5.8/bin路徑下執行
#啟動 ./zkServer.sh start
#關閉 ./zkServer.sh stop
#重啟 ./zkServer.sh restart
#查看狀態 ./zkServer.sh status
# 上述啟動使用默認配置文件,若需要制定配置文件則直接在后面加上配置文件的位置
例如: ./zkServer.sh start /opt/zoo.cfg
9:在三臺機器上分別執行啟動命令,然后查看狀態



到此,zookeeper集群搭建完成。

浙公網安備 33010602011771號