1. 程式人生 > >Zookeeper簡介與安裝

Zookeeper簡介與安裝

Zookeeper 介紹

Zookeeper動物園管理員,根據名字的意思它是一個管理者的角色,它是 Google 的 Chubby一個開源的實現,是 Hadoop 的分散式協調服務,它包含一個簡單的原語集,分散式應用程式可以基於它實現同步服務,配置維護和命名服務等。Dubbo服務中Zookeeper可以起到註冊中心的作用,管理各個服務應用,註冊中心負責服務地址的註冊與查詢,相當於目錄服務,服務提供者和消費者只在啟動時與註冊中心互動,註冊中心不轉發請求,壓力較小。使用dubbo-2.3.3以上版本,建議使用。

Zookeeper功能

  1. 可以作為叢集的管理工具使用。
  2. 可以集中管理配置檔案。

Zookeeper叢集的角色:

Leader 和 follower (Observer),只要叢集中有半數以上節點存活,叢集就能提供服務。

安裝Zookeeper

zookeeper可以去官網直接下載。

這裡演示在Linux上的安裝步驟:

1.安裝 jdk(Zookeeper是java開發的可以執行在windows、linux環境。需要先安裝jdk) 2.把zookeeper的壓縮包上傳到linux系統。 3.解壓縮壓縮包

tar -zxvf zookeeper-3.4.6.tar.gz

4.進入zookeeper-3.4.6目錄,建立data資料夾。 5.把zoo_sample.cfg改名為zoo.cfg(可以先備份一份)

mv zoo_sample.cfg zoo.cfg

6.修改data屬性

dataDir=/root/zookeeper-3.4.6/data

7.啟動關閉zookeeper

 ./zkServer.sh start
./zkServer.sh stop
 ./zkServer.sh status

注意:需要關閉防火牆。

zoo.cfg配置檔案引數簡介

1.tickTime:CS通訊心跳時間 Zookeeper 伺服器之間或客戶端與伺服器之間維持心跳的時間間隔,也就是每個 tickTime 時間就會發送一個心跳。tickTime以毫秒為單位。 tickTime=2000

2.initLimit:LF初始通訊時限 叢集中的follower伺服器(F)與leader伺服器(L)之間初始連線時能容忍的最多心跳數(tickTime的數量)。 initLimit=5

3.syncLimit:LF同步通訊時限 叢集中的follower伺服器與leader伺服器之間請求和應答之間能容忍的最多心跳數(tickTime的數量)。 syncLimit=2

4.dataDir:資料檔案目錄 Zookeeper儲存資料的目錄,預設情況下,Zookeeper將寫資料的日誌檔案也儲存在這個目錄裡。 dataDir=/home/michael/opt/zookeeper/data

5.clientPort:客戶端連線埠 客戶端連線 Zookeeper 伺服器的埠,Zookeeper 會監聽這個埠,接受客戶端的訪問請求。 clientPort=2181

6.伺服器名稱與地址:叢集資訊(伺服器編號,伺服器地址,LF通訊埠,選舉埠) 這個配置項的書寫格式比較特殊,規則如下: server.N=YYY:A:B

server.1=ming01:2888:3888 server.2=ming02:2888:3888 server.3=ming03:2888:3888