ZooKeeper 集羣安裝

集羣安裝對應依賴於上一篇博客中ZK單檯安裝相關目錄算法

 

由於有3個節點,分別設置三個配置文件.session

zk1.cfg  zk2.cfg zk3.cfg日誌

對應zk1.cfg的配置爲:server

tickTime屬性做爲是對應session保存時間爲這個時間的2倍,單位毫秒隊列

其中initLimit 參數爲:Follower節點啓動的時候,會到leader節點同步數據,領導者端只容許在這個設置的時間內同步完數據,不然不任務加入zk隊列中.ip

syncLimit 爲領導者按期去檢查時間其下節點是否狀態還正常.同步

另外:還須要配置dataLogDir 參數,在生產環境下必定要配置.是記錄事物日誌的.這個會單獨掛載到一個磁盤上.博客

dataDir 爲對應主機的數據文件夾.it

由於有三臺zk,因此有三個serverio

server.1  server.2  server.3 其中數據 1 2 3 就是對應節點的id號,由於這個id值做爲標識,分別在對應文件夾中記錄對應id的內容. 

 

對應配置文件zk1.cfg,zk2.cfg,zk3.cfg中對應這部份內容是相同的:

其餘屬性按各自內容配置

這裏須要特別注意:

 

在集羣環境下,須要在對應的文件夾下創建一個myid 文件(touch myid)

裏面內容分別爲server.Id的值,

好比,zk1文件夾下,myid 內容爲 1 依次類推,分別爲 2 3 

上述須要特別注意的是對應dataDir 屬性配置以及server.1 server.2 server.3 的相關配置.

 

上述:server 命名中 ip:port1:port2

其中第一個端口號爲zk 中各服務通訊的端口號,是leader與Follower之間通訊的端口號, 第二個端口號爲zk與zk之間通訊的端口號.

好比第1個端口:主從之間的數據同步

好比第二個端口,在zk與zk之間須要投票,其中第二個端口是這個做用,這個是zk與zk間的通訊.

配置完,啓動對應zk

後面配置文件不用輸入路徑,zk會自動的去conf中去找對應文件

集羣環境下,自動根據特定算法肯定主機或者從機:

集羣環境下,只有最少啓動2臺ZK,才能登錄客戶端...

使用telnet 命令可查看對應主機內容:

以下這臺爲從機follower:

以下的爲Leader

使用ls2 查看對應節點詳細信息:

對應參數:

cZxid 爲節點建立的時候事物id標識

ctime 爲建立時間

mZxid 爲節點修改的事物id

mtime 修改時間

pZxid --刪除或新增修改這個東西

cversion 當前子節點修改過,這個屬性會改變,作累加操做

dataVersion  好比使用set 命令,這個會增長.

aclVersion  節點權限發生變化後,對應值也會變動  ---對應臨時節點須要經過對應sessionId肯定對應節點.

ephemeralOwner 建立臨時節點的sessionId

dataLength 數據長度

numChildren 子節點長度

 

臨時節點不能建立子節點...

 

至此:zk集羣建立完畢.

相關文章
相關標籤/搜索