1.安裝zookeeper
關于Linux中安裝zookeeper說明
2.搭建叢集
2.1 建立目錄
mkdir zkClusters
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL3UzM5MDM1UTM4ETMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
2.2 建立目錄
mkdir zk1 zk2 zk3
mkdir {zk1,zk2,zk3}/{data,log}
2.3 分别在zk1/zk2/zk3中的data檔案夾中建立新的檔案myid.其中的内容依次為1/2/3,與zk節點号對應.
2.4 将zoo_sample.cfg 複制為zoo1.cfg之後修改配置檔案.
2.5 修改zoo1.cfg
2.6 配置完成後将zoo1.cfg複制2份.之後需要修改對應的檔案夾目錄.和不同的端口即可.
2.7 zookeeper叢集測試
sh zkServer.sh start zoo1.cfg
sh zkServer.sh start zoo2.cfg
sh zkServer.sh start zoo3.cfg
sh zkServer.sh status zoo1.cfg
sh zkServer.sh status zoo2.cfg
sh zkServer.sh status zoo3.cfg
...
3. zookeeper叢集常見問題
3.1 為什麼叢集一般都是奇數個?
公式: 存活的節點 > N/2
常識: 最小的叢集的機關3台.
例子:
1個節點能否搭建叢集? 1-1 > 1/2 假的 1個節點不能搭建叢集
2個節點能否搭建叢集? 2-1 > 2/2 假的 2個節點不能搭建叢集
3個節點能否搭建叢集? 3-1 > 3/2 真的 3個節點能搭建叢集
4個節點能否搭建叢集? 4-1 > 4/2 真的 4個節點能搭建叢集
3個節點最多允許當機1台,否則叢集崩潰.
4個節點最多允許當機1台,否則叢集崩潰.
搭建奇數台和偶數台其實都可以,但是從容災性的角度考慮,發現奇數和偶數的效果相同,.是以搭建奇數台.
3.2 ZK叢集選舉規則
說明: zk叢集選舉采用最大值(myid)優先的算法實作,如果叢集中沒有主機,則開始選舉(超半數即可),如果有主機,則選舉結束.
考題: 1 2 3 4 5 6 7 依次啟動時
問題1:誰當主機? 4當主機
問題2:誰永遠不能當選主機? 1,2,3