溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

etcd選舉機制

發(fā)布時間:2020-07-10 23:07:21 來源:網(wǎng)絡(luò) 閱讀:984 作者:facinglife 欄目:建站服務(wù)器

etcd是一種先進的key-value的存儲系統(tǒng),本文主要是學(xué)習(xí)etcd的心得,如有誤解,敬請拍磚

主要分成三種形式的選舉,先說一下etcd節(jié)點的三種狀態(tài),分別為leader,candidate和follower

第一種:初始選舉

A、B、C、D現(xiàn)在進場,那么誰當(dāng)領(lǐng)導(dǎo)呢?A(變身candidatae)就分別找BCD談話,“我來當(dāng),你沒意見吧”。B\C都沒什么主見,就同意了,D雖然不同意,但是大家都這么說,只好也同意了。A就開始行使權(quán)利,定時從BCD同步日志,并發(fā)送心跳(heartbeat)


第二種,leader異常

A是領(lǐng)導(dǎo),BCD是follower,大家正在工作。此時突然A肚子痛了上廁所(故障),BCD都有事,但是沒辦法匯報。BCD就商量了,咱們重新選個領(lǐng)導(dǎo)吧!于是B(變身candidate)主動單獨跟C、D詢問,"我來當(dāng)領(lǐng)導(dǎo),你們有意見沒有?"。CD都沒有意見,于是B就當(dāng)了領(lǐng)導(dǎo),那么此時A剛好回來啦,就發(fā)現(xiàn)這一幕,怎么辦?他們就一較高下,根據(jù)日志的步進數(shù)來決定誰當(dāng)領(lǐng)導(dǎo),因為A缺席了那么久,很多消息都沒有,所以就失敗了。于是A清理自己的消息,變成了follower。


第三種,follower異常

同上,但是肚子痛的是C,不是A。ABD正常工作,當(dāng)C回來了,就直接成為follower。


第四種,初始的follower中在同一個時間同時變身(成為candidate),

A去找C談話了,B去跟D談話了。C答應(yīng)跟A,D答應(yīng)跟B,此時A去問D就被直接拒絕了,B問C也同樣被拒絕。A問B兩人都是candidate,誰怕誰??!你也拒絕我,我也拒絕你。那么四個人怎么辦呢?A經(jīng)過一個時間差(150ms~300ms)再次向C,D發(fā)起談話,此時,C,D都同意了A(B還沒有反應(yīng)過來),此時A已經(jīng)成為了leader,B發(fā)現(xiàn)已經(jīng)有了leader了,重新成為了follower.

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI