zookeeper的集群安裝

2021-06-26 22:23:22 字數 1890 閱讀 7181

zookeeper是針對大型分布式系統的高可靠的協調系統。由此,我們可

知,zookeeper是個協調系統,它的作用物件是分布式系統。那麼,為什麼分

布式系統需要乙個協調系統呢?原因如下:

開發分布式系統是件灰常困難複雜的事情,其中的困難主要體現在分布式

系統的「部分失敗」。「部分失敗」是指資訊在網路的兩個節點之間傳送的時

候,如果網路出現了故障,傳送者無法知道接收者是否收到了這個資訊,而且這

中故障的原因很複雜,接收者可能在出現網路錯誤之前已經接收到了資訊,也可

能沒有收到,由或者接收者的程序死掉了。傳送方能夠獲取真實情況的唯一辦法

是重新連線到接收方,詢問接收方錯誤的原因,這就是分布式系統開發的「部分

失敗」的問題。

zookeeper就是解決分布式系統「部分失敗」的框架。zookeeper不是讓分

布式系統避免「部分失敗」問題,而是讓分布式系統當碰到部分失敗的時候,可以

正確處理此類問題,讓分布式系統能正常的執行。換言之,zookeeper是用來保證

資料在zookeeper集群之間的事務性一致。

那麼,該如何部署zookeeper的集群呢?

1、zookeeper伺服器集群規模不小於3個節點,要求各個伺服器之間系統時間保持一致。

3、在hadoop1的/usr/local/目錄下,解壓縮安裝包,並設定環境變數,如下圖:

4、在conf目錄下,重新命名檔案,如下圖:

5、編輯檔案,執行vi zoo.cfg

修改datadir,如下:

新增:

6、建立目錄,執行mkdir /usr/local/zk/data,並在該目錄下建立檔案myid,如下:

myid賦值為0。

7、把zk目錄複製到hadoop2和hadoop3節點上,如下:

8、把hadoop2中myid的值修改為1,hadoop3中myid的值修改為2;

9、啟動,在3個節點上分別執行命令zkserver.sh start,如下:

10、檢驗,在3個節點上分別執行命令zkserver.sh status,如下:

zookeeper的角色

1、領導者leader:負責投票的發起和決議,更新系統的狀態;

2、學習著learner:包括跟隨著follower和觀察者observer,follower用於

接收客戶端的請求並向客戶端返回結果,在選舉過程中參與投票;

3、observer可以接收客戶端的連線,將寫請求**給leader,但observer

不參與投票過程,只同步leader的狀態,observer的目的是為了擴充套件系統,提高

讀取的速度;

4、客戶端client:請求的發起方。

zookeeper集群安裝

此處為zookeeper 3.3.2 2.分別解壓至zookeepr集群機器 一般為基數臺機器 相應目錄 此處為 zookeeper home 集群為mem1,mem2,mem3 hosts對應 1.分別在zookeepr集群機器上配置 zookeeper home conf zoo.cfg 預設是...

zookeeper 集群安裝

參考zookeeper主頁 選擇目前的stable版本 3.4.8 本次安裝機器為172.23.28.51 52 53 wget 2.解壓 tar zxvf zookeeper 3.4.8.tar.gz mv zookeeper 3.4.8 usr local zookeeper 3.增加zoo.c...

安裝zookeeper集群

1.解壓zookeeper安裝包到 opt module 目錄下2 root hadoop01 module tar zxvf zookeeper 3.4.5.tar.gz c opt module 2建立zkdata root hadoop01 module mkdir p zookeeper 3...