CentOS6.5 安裝Zookeeper叢集

獵手家園發表於2016-08-25

1、下載解壓

2、配置環境變數:vi ~/.bashrc   或者   vi /etc/profile

[hadoopuser@Linux01 ~]$ vi ~/.bashrc
# zookeeper cdh5
export ZOOKEEPER_HOME=/home/hadoopuser/zookeeper-3.4.5-cdh5.6.0
export PATH=$PATH:$ZOOKEEPER_HOME/bin

[hadoopuser@Linux01 ~]$ source ~/.bashrc      #生效

3、修改日誌輸出

[hadoopuser@Linux01 ~]$ vi $ZOOKEEPER_HOME/libexec/zkEnv.sh
#3.4.8非CDH版本的位置是:bin/zkEnv.sh 56行: 找到如下位置修改語句:ZOO_LOG_DIR
="$ZOOKEEPER_HOME/logs"

4、修改配置檔案

[hadoopuser@Linux01 ~]$ vi $ZOOKEEPER_HOME/conf/zoo.cfg

# zookeeper
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoopuser/zookeeper-3.4.5-cdh5.6.0/data
clientPort=2181


# cluster
server.1=Zookeeper-01:2888:3888
server.2=Zookeeper-02:2888:3888
server.3=Zookeeper-03:2888:3888

5、設定myid

(1)Zookeeper-01:

mkdir $ZOOKEEPER_HOME/data
echo 1 > $ZOOKEEPER_HOME/data/myid

(2)Zookeeper -02:

mkdir $ZOOKEEPER_HOME/data
echo 2 > $ZOOKEEPER_HOME/data/myid

(3)Zookeeper -03:

mkdir $ZOOKEEPER_HOME/data
echo 3 > $ZOOKEEPER_HOME/data/myid

6、各結點啟動:

[hadoopuser@Linux01 ~]$ zkServer.sh start

7、驗證

[hadoopuser@Linux01 ~]$ jps

3051 Jps
2829 QuorumPeerMain

8、狀態

[hadoopuser@Linux01 ~]$ zkServer.sh status

JMX enabled by default
Using config: /home/zero/zookeeper/zookeeper-3.4.5-cdh5.0.1/bin/../conf/zoo.cfg
Mode: follower

9、附錄zoo.cfg各配置項說明

屬性

意義

tickTime

時間單元,心跳和最低會話超時時間為tickTime的兩倍

dataDir

資料存放位置,存放記憶體快照和事務更新日誌

clientPort

客戶端訪問埠

initLimit

配 置 Zookeeper 接受客戶端(這裡所說的客戶端不是使用者連線 Zookeeper伺服器的客戶端,而是 Zookeeper 伺服器叢集中連線到 Leader 的 Follower 伺服器)初始化連線時最長能忍受多少個心跳時間間隔數。當已經超過 10 個心跳的時間(也就是 tickTime)長度後 Zookeeper 伺服器還沒有收到客戶端的返回資訊,那麼表明這個客戶端連線失敗。總的時間長度就是 5*2000=10 秒。

syncLimit

這個配置項標識 Leader 與 Follower 之間傳送訊息,請求和應答時間長度,最長不能超過多少個

server.id=host:port:port

server.A=BCD

叢集結點列表:

A :是一個數字,表示這個是第幾號伺服器;

B :是這個伺服器的 ip 地址;

C :表示的是這個伺服器與叢集中的 Leader 伺服器交換資訊的埠;

D :表示的是萬一叢集中的 Leader 伺服器掛了,需要一個埠來重新進行選舉,選出一個新的 Leader,而這個埠就是用來執行選舉時伺服器相互通訊的埠。如果是偽叢集的配置方式,由於 B 都是一樣,所以不同的 Zookeeper 例項通訊埠號不能一樣,所以要給它們分配不同的埠號。

10、常用命令

10.1  啟動ZK服務:    bin/zkServer.sh start
10.2  檢視ZK服務狀態:  bin/zkServer.sh status
10.3  停止ZK服務:    bin/zkServer.sh stop
10.4  重啟ZK服務:    bin/zkServer.sh restart
10.5  連線伺服器:    zkCli.sh -server 127.0.0.1:2181
10.6  檢視根目錄:    ls /
10.7  建立 testnode節點,關聯字串"zz":    create /zk/testnode "zz"
10.8  檢視節點內容:    get /zk/testnode
10.9  設定節點內容:    set /zk/testnode abc
10.0  刪除節點:      delete /zk/testnode 

 

相關文章