centos7下zookeeper集群安裝部署


應用場景:ZooKeeper是一個分布式的,開放源碼的分布式應用程序協調服務,是Google的Chubby一個開源的實現,是Hadoop和Hbase的重要組件。

     它是一個為分布式應用提供一致性服務的軟件,提供的功能包括:配置維護、域名服務、分布式同步、組服務等。[摘自百度百科]

            官網:http://zookeeper.apache.org/

 

安裝環境:Zookeeper集群最好至少安裝3個節點,這里端口采用默認zookeeper默認端口:2181

     

     

安裝步驟

 1. 下載zookeeper並解壓

  官網推薦下載地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

   ~]# tar -zxvf zookeeper-3.4.11.tar.gz -C /opt/     //這里解壓至/opt目錄中使用

   

 2. 編輯配置文件

  進入conf目錄,cp生成一個zk能識別的配置文件zoo.cfg,如下

   [root@server-1 conf]# cp zoo_sample.cfg  zoo.cfg 

  

  修改配置文件zoo.cfg,如下:

   [root@server-1 conf]# vim zoo.cfg 

  

  保存,退出;

  三台節點配置一樣,其他兩台略。

 3. 添加myid文件

  說明:除了修改 zoo.cfg 配置文件,集群模式下還要新增一個名叫myid的文件,這個文件放在上述dataDir指定的目錄下,這個文件里面就

     只有一個數據,就是上圖配置中server.x的這個x(1,2,3)值,zookeeper啟動時會讀取這個文件,拿到里面的數據與 zoo.cfg 里面

     的配置信息比較從而判斷到底是那個server(節點)。

  

  

  

 4. 啟動節點

  切換到bin目錄中查看一下:

  

  啟動方法查看:

  

  啟動節點1:

   [root@server-1 bin]# ./zkServer.sh start     // 默認會到同級目錄conf中尋找zoo.cfg文件,所以默認不用加配置文件

  

  同樣的,啟動節點2,節點3:

   [root@server-2 bin]# ./zkServer.sh start 

     [root@server-3 bin]# ./zkServer.sh start 

   啟動后,會在當前bin目錄下生成一個日志zookeeper.out,如果啟動不成功里面會有錯,可供排錯使用。

 5. 查看節點狀態

  當三台節點都啟動完畢后可以查看他們各自在集群中的狀態:

   [root@server-1 bin]# ./zkServer.sh status 

   

   

   

  至此,zookeeper集群部署成功。

  排錯:如果查看集群狀態的時候報“Error contacting service. It is probably not running.”請檢查防火牆是不是阻擋了contacting。

  

 

 6. zookeeper客戶端使用

  使用bin目錄下的客戶端登錄腳本:zkCli.sh

  

  比方說:登錄、查看、退出。

   [root@server-1 bin]# ./zkCli.sh -server 192.168.1.21:2181      //連本地節點

   [root@server-1 bin]# ./zkCli.sh -server 192.168.1.21        //不帶端口就采用默認2181端口

   [root@server-1 bin]# ./zkCli.sh                  //不帶參數回車默認連接本地IP和2181端口

   [root@server-1 bin]# ./zkCli.sh -server 192.168.1.22        //也可以連接節點2的zk

  登錄后操作:

  

  說明:客戶端連接后,用get / 命令可以發現此時只有zookeeper一項;如果此Zookeeper用於對Kafka或JStorm等提供服務,

     則還會有相應的其他目錄,后面在介紹kafka時會有相關內容。

     kafka集群安裝:http://www.cnblogs.com/ding2016/p/8282907.html

 7. 集群測試

  這里就模擬斷掉"leader"節點——node-2,另外兩台會通過之前設定的3888這個端口來重新選舉leader,結果如下:

  

  

 

  

結束.


免責聲明!

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



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