zookeeper集群操作【這里只說明簡單的操作步驟,zk的相關參數、說明請參考官方文檔】


 

  本文版權歸 遠方的風lyh和博客園共有,歡迎轉載,但須保留此段聲明,並給出原文鏈接,謝謝合作。

       【這里是在一台機器上搭建的 zk偽集群】

  1.從官網下載下載zk http://apache.fayea.com/zookeeper/

    解壓 並復制三套zk,這里我使用三台zk實例(server,演示使用3.4.7版本)

    為什么使用三台zk?

      在zookeeper的選舉過程中,為了保證選舉過程最后能選出leader,就一定不能出現兩台機器得票相同的僵局,所以一般的,要求zk集群的server數量一定要是奇數,也就是2n+1 台,並且,如果集群出現問題,其中存活的機器必須大於n+1台,否則leader無法獲得多數server的支持,系統就自動掛掉。所以一般是3個或者3個以上節點。

    

 

  2.配置zk配置文件 conf/zoo.cfg(若沒有請自建)

  zk1-3.4.7

clientPort = 2181
dataDir=/tmp/zookeeper/1
syncLimit=5
tickTime=2000
initLimit=10
dataLogDir=/tmp/zookeeper/1
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890

 

  zk2-3.4.7

clientPort = 2182
dataDir=/tmp/zookeeper/2
syncLimit=5
tickTime=2000
initLimit=10
dataLogDir=/tmp/zookeeper/2
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890

  zk3-3.4.7

clientPort = 2183
dataDir=/tmp/zookeeper/3
syncLimit=5
tickTime=2000
initLimit=10
dataLogDir=/tmp/zookeeper/3
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890

 

  *說明:紅色部分路徑, 要自行創建相關目錄

 

 

  3.創建myid

   終端執行指令

echo "1" > /tmp/zookeeper/myid/1
echo "2" > /tmp/zookeeper/myid/2
echo "3" > /tmp/zookeeper/myid/3

  這里的myid文件中的值對應 zoo.cfg 中 server.x,分別代表1、2、3號server的id

 

 

  4. 每一個server(這里是三台)執行以下命令 bin目錄下

./zkServer.sh start

 

5.驗證 集群是否搭建成功  bin目錄下

./zkServer.sh status

  如下如圖則表示成功

 


 

  附 :若在驗證階段執行./zkServer.sh start出現以下情況:

    JMX enabled by default
    Using config: /zk1-3.4.7/bin/../conf/zoo.cfg
    Error contacting service. It is probably not running.

     先執行停止相應的zk  停止指令為  zkServer.sh  stop

     再執行./zkServer.sh start-foreground  可以看到報錯  根據報錯進行修改

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM