2018-10-19
閱讀量:
1315
zookeeper的節(jié)點(diǎn)數(shù)為什么必須是奇數(shù)
理由1:根據(jù)選舉機(jī)制(FastLeaderElection算法):sid最大且被超過集群中超過半數(shù)的機(jī)器擁護(hù)就會成為leader。若集群節(jié)點(diǎn)數(shù)為偶數(shù)的話,以下兩種情況無法選出leader:
??①整個集群只有2臺服務(wù)器(注意不是只剩2臺,而是集群的總節(jié)點(diǎn)數(shù)為2)
??②整個集群超過半數(shù)機(jī)器掛掉。
理由2:從集群優(yōu)化配置來看,即:集群的容災(zāi)數(shù)量=(集群總節(jié)點(diǎn)數(shù)-1)/2
??①假如集群有5節(jié)點(diǎn),那么最多允許2個節(jié)點(diǎn)掛掉,如果有3節(jié)點(diǎn)掛了,那么整個集群的選舉結(jié)果不會滿足條件:集群中超過半數(shù)的機(jī)器擁護(hù)。
??②假如集群有6個節(jié)點(diǎn),那么最多也只能掛掉2臺,因?yàn)閽炝?臺時,選舉結(jié)果也不會滿足條件:集群中超過半數(shù)的機(jī)器擁護(hù)。結(jié)果可以看出,多那一臺用處并不大。
所以集群總數(shù)推薦為奇數(shù)






評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論