1. 程式人生 > >Zookeeper安裝和引數解讀

Zookeeper安裝和引數解讀

安裝

將/opt/module/zookeeper-3.4.10/conf這個路徑下的zoo_sample.cfg修改為zoo.cfg;
進入zoo.cfg檔案:vim zoo.cfg

修改dataDir路徑為
dataDir=/opt/module/zookeeper-3.4.10/zkData

在/opt/module/zookeeper-3.4.10/這個目錄上建立zkData資料夾
mkdir zkData

linux下的tar包地址

操作zookeeper

開啟zookeeper

zkServer.sh start

jps查看出現QuorumPeerMain程序

檢視狀態

[[email protected]
conf]# zkServer.sh status ZooKeeper JMX enabled by default Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg Mode: standalone(單使用者模式)

啟動客戶端

[[email protected] conf]# zkCli.sh 

退出客戶端

[zk: localhost:2181(CONNECTED) 0] quit

停止zookeeper

[[email protected] conf]# zkServer.sh stop

配置引數解讀

解讀zoo.cfg檔案的引數

tickTime=2000:通訊心跳數

tickTime:通訊心跳數,Zookeeper伺服器心跳時間,單位毫秒
Zookeeper使用的基本時間,伺服器之間或客戶端與伺服器之間維持心跳的時間間隔,也就是每個tickTime時間就會發送一個心跳,時間單位為毫秒。
它用於心跳機制,並且設定最小的session超時時間為兩倍心跳時間。(session的最小超時時間是2*tickTime)

initLimit=10:LF初始通訊時限

initLimit:LF初始通訊時限
叢集中的follower跟隨者伺服器(F)與leader領導者伺服器(L)之間初始連線時能容忍的最多心跳數(tickTime的數量),用它來限定叢集中的Zookeeper伺服器連線到Leader的時限。
投票選舉新leader的初始化時間
Follower在啟動過程中,會從Leader同步所有最新資料,然後確定自己能夠對外服務的起始狀態。
Leader允許F在initLimit時間內完成這個工作。

syncLimit=5:LF同步通訊時限

叢集中Leader與Follower之間的最大響應時間單位,假如響應超過syncLimit * tickTime,
Leader認為Follwer死掉,從伺服器列表中刪除Follwer。

在執行過程中,Leader負責與ZK叢集中所有機器進行通訊,例如通過一些心跳檢測機制,來檢測機器的存活狀態。
如果L發出心跳包在syncLimit之後,還沒有從F那收到響應,那麼就認為這個F已經不線上了。

dataDir:資料檔案目錄+資料持久化路徑

儲存記憶體資料庫快照資訊的位置,如果沒有其他說明,更新的事務日誌也儲存到資料庫。

clientPort=2181:客戶端連線埠

監聽客戶端連線的埠