天天看點

centos7.2 安裝zookeeper并配置zookeeper叢集概述正文結束

概述

    zookeeper是一個分布式協同管理工具,用來進行分布式項目的集中管理,常作為服務注冊中心,實作例如配置同步,負載,服務發現等功能。其本身是hadoop生态系統中的一員,但是也常用于java微服務架構中,用于服務發現,負載等,例如dubbo架構等。應用非常廣泛,且有很多應用服務都會利用zookeeper來實作叢集功能等。

    這裡就詳細記錄一下zookeeper的安裝與叢集的搭建

正文

1. 下載下傳安裝包

官方下載下傳位址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

# 下載下傳安裝包
wge http://www-us.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

# 解壓
tar –zxvf zookeeper-3.4.6.tar.gz           

2. 修改配置檔案

# 将zookeeper移動到opt下,并進入目錄,這隻是我習慣的放軟體的地方,可自定義
# 手動建立data目錄和logs目錄,因為預設是沒有的,需要自己手動建立
mv zookeeper-3.4.6 /opt && cd /opt/zookeeper-3.4.6
mkdir data
mkdir logs


# 複制配置檔案示例,改為zoo.cfg,名稱不能變,預設是加載此檔案
cp conf/zoo_sample.cfg conf/zoo.cfg

# 修改配置檔案,隻修改以下内容,将目錄改為剛才建立的目錄的絕對路徑
vim conf/zoo.cfg
----------------------------------------------------------------------------
dataDir=/opt/zookeeper-3.4.6/data
dataLogDir=/opt/zookeeper-3.4.6/logs
----------------------------------------------------------------------------           

3. 啟動服務

/opt/zookeeper-3.4.6/bin/zkServer.sh start

# 檢視狀态
/opt/zookeeper-3.4.6/bin/zkServer.sh status
           

 顯示mode:standalone 為單機模式

ok,到此,zookeeper安裝完成,并以單機模式啟動

4. zookeeper叢集搭建

    zookeeper在生産環境中,常是以叢集方式啟動,以實作高可用。叢集搭建非常簡單,隻需要修改一下配置檔案,并逐個啟動各個節點的zookeeper服務就可以自動組建叢集,選舉出leader和follower。

準備:

叢集的選舉和機制所緻,當叢集超過半數的伺服器挂機,則整個叢集不可用,是以叢集的節點數最好為單數,那麼最小的推薦叢集為3節點叢集。這裡就以3節點叢集為例子

3台伺服器,IP分别為: 

192.168.0.11

192.168.0.12

192.168.0.13

每台伺服器上下載下傳并安裝好zookeeper,按上面的方法,隻是先不啟動服務

4.1 修改配置檔案

在每個節點上都要執行下面的操作修改配置檔案

# 在上面的配置檔案基礎上,添加如下内容
# data目錄和logs目錄的配置在上面已經配置過了,這裡就不贅述了
$ vim /opt/zookeeper-3.4.6/conf/zoo.cfg
----------------------------------------------------------------------------------
# 格式為 server.id=ip:port1:port2,id為節點ID,port1和port2是用來叢集間通信,選擇用的端口
server.1=192.168.0.11:2888:3888
server.2=192.168.0.12:2888:3888
server.3=192.168.0.13:2888:3888
----------------------------------------------------------------------------------           

4.2 建立myid檔案,标明身份

# 在每個節點的data目錄下,建立一個myid檔案,并填入自己的id
# 此id與配置檔案中的server id 對應

# 在 192.168.0.11 上,則執行
echo '1' > /opt/zookeeper-3.4.6/data/myid

# 在 192.168.0.12 上,則執行
echo '2' > /opt/zookeeper-3.4.6/data/myid

# 在 192.168.0.13 上,則執行
echo '3' > /opt/zookeeper-3.4.6/data/myid           

4.3 依次啟動每個節點上的zookeeper服務

# 分别進入各個伺服器,啟動服務,啟動順序沒關系
/opt/zookeeper-3.4.6/bin/zkServer.sh start

# 全部啟動後,檢視服務狀态
/opt/zookeeper-3.4.6/bin/zkServer.sh status
           

啟動後,檢視服務狀态,就會發現,有的節點的mode: leader,有的節點mode:follower。這就是叢集自己選舉出的上司者和跟随者,也就是主從。

結束

    OK,到此,zookeeper安裝與叢集搭建完成。有什麼不明白的,歡迎留言交流

繼續閱讀