簡單五步搭建Zookeeper集羣(Linux)

準備工作:

已裝好單機 zookeeper的三臺機器:

192.168.0.164,192.168.0.166,192.168.0.184

Zookeeper 的集羣搭建很簡單,只要在配置好的單機zookeeper基礎上修改兩個地方即可,

一個是配置文件zoo.cfg,另一個是創建myid文件。集羣示圖如下:

 

詳細步驟如下:(以server 2 爲例,ip :192.168.0.166 , myid :2)

1. 關閉zookeeper(如果zookeeper在運行,沒有跳到第二步)

   查看zookeeper進程:

   ps -ef | grep zookeeper

進程id爲3085,殺死該進程:

Kill -s 9  3085  

或者 在zookeeper安裝包的bin目錄下:

sh zkServer.sh stop

查看確認zookeeper已關閉:

ps -ef | grep zookeeper

 

2. 修改配置文件

修改conf目錄下zoo.cfg文件

dataDir : 數據文件目錄

dataLogDir : 日誌打印文件目錄

clientPort = 2181 供客戶端註冊發現服務用

2888:集羣中zookeeper之間通信用

3888:選舉lead時用

配置zookeeper集羣,三臺機器:

server.1 = 192.168.0.164:2888:3888

server.2 = 192.168.0.166:2888:3888

server.3 = 192.168.0.184:2888:3888

  (爲了避免混亂,server根據ip從小到大按順序排列)

3. 創建myid

 在zookeeper安裝目錄下,進入data文件夾中,創建myid文件(沒有後綴):

vi myid

Esc  +:+ wq

保存退出myid文件

(PS:如果三臺虛擬機只有一臺裝了zookeeper,可以配置好後通過遠程拷貝到其他兩臺:
scp  -r /usr/local/zookeeper-3.5.4-beta 192.168.0.184:/usr/local

scp  -r /usr/local/zookeeper-3.5.4-beta 192.168.0.164:/usr/local

三臺機器zoo.cfg都一樣,只要修改對應的myid值即可。

Zookeeper是java寫的,需要運行在java環境之上,需裝jdk)

即:

Ip 192.168.0.164 機器爲server 1  對應的myid 爲 1

IP 192.168.0.166 機器爲server 2  對應的myid 爲 2

IP 192.168.0.184 機器爲server 3  對應的myid 爲 3

4. 啓動zookeeper

 分別進入到三臺機器zookeeper安裝目錄bin中,通過命令:

sh zkServer.sh start

啓動zookeeper

OK,確保三臺機器zookeeper都能啓動成功。之後,zookeeper集羣會選出一個leader,其餘爲follower。

5. 查看狀態

 同樣,在安裝目錄bin下, 通過命令

sh zkServer.sh status

查看集羣狀態

即 166和184 爲follower ,164爲leader,表示集羣搭建成功。

注意的坑:

若單臺zookeeper都能啓動成功,而沒有通信成功,沒有leader和follower,則可能是端口的原因:

a. 端口是否被佔用

b. 防火牆是否放行

c. 更多問題可以通過日誌文件查看

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章