如果一個(gè)籃子里的雞蛋都碎了,你是否還有另外一個(gè)籃子裝有雞蛋霸株?
如果你父親失業(yè)了雕沉,你的母親能否支撐起家庭的經(jīng)濟(jì)?
如果路上車胎爆了去件,你出門是否準(zhǔn)備了備胎坡椒?
如果Plan A不能繼續(xù)了,你是否還有Plan B尤溜?
人生那么漫長倔叼,每個(gè)人都可能遇到意外,那么是什么可以保證你在前行的道路上不受影響宫莱、那些意外能平穩(wěn)度過呢缀雳?Yes,答案就是——兩手準(zhǔn)備梢睛、雙重保障肥印!同理识椰,企業(yè)在面對(duì)意外甚至是災(zāi)難的時(shí)候,容災(zāi)能力就顯得尤為重要深碱。
公有云的場(chǎng)景下腹鹉,如上圖所示,我們面對(duì)的是海量的用戶數(shù)據(jù)敷硅,而用戶的需求是業(yè)務(wù)持續(xù)在線功咒。傳統(tǒng)的容災(zāi)方案已經(jīng)無法適應(yīng)云的特點(diǎn)和要求。為此绞蹦,我們今天就來談一談雙活容災(zāi)力奋。
雙活是什么
雙活是一種節(jié)約資源的系統(tǒng)災(zāi)備(Disaster Recovery)方案,雙活系統(tǒng)中的兩個(gè)數(shù)據(jù)中心不僅能夠同時(shí)承擔(dān)用戶業(yè)務(wù)幽七,兩者還能為對(duì)方提供實(shí)時(shí)備份的功能景殷。
簡(jiǎn)單來說,“雙”就是說兩端互為“備胎”的關(guān)系澡屡,任意一端故障都可以保證業(yè)務(wù)數(shù)據(jù)不丟失猿挚,啟動(dòng)“備胎”屬性,完成主端的功能驶鹉;“活”就是說兩端的關(guān)系是對(duì)等一致的绩蜻,都是“活”的,可以同時(shí)為上層應(yīng)用提供服務(wù)室埋。
仲裁部署方案
仲裁機(jī)制是雙端數(shù)據(jù)中心在鏈路中斷的情況下的腦裂處理方案办绝。
簡(jiǎn)而言之,仲裁就是雙活兩端因?yàn)樾奶鴣G失而失去聯(lián)系時(shí)姚淆,一體化的站點(diǎn)分裂成兩個(gè)獨(dú)立的數(shù)據(jù)中心八秃,系統(tǒng)需要決策出哪一邊是唯一可用的,這時(shí)候肉盹,就需要由仲裁機(jī)制來判斷昔驱。Yes,你可以認(rèn)為仲裁就是裁判的意思上忍。
雙活支持靜態(tài)優(yōu)先和第三方仲裁兩種仲裁機(jī)制骤肛。
靜態(tài)優(yōu)先仲裁是一種默認(rèn)仲裁模式,會(huì)預(yù)置優(yōu)先端和非優(yōu)先端窍蓝,兩端之間的心跳丟失時(shí)腋颠,優(yōu)先端存活,非優(yōu)先端死亡吓笙。
如上圖所示淑玫,預(yù)置A為優(yōu)先端、B為非優(yōu)先端。當(dāng)站點(diǎn)A與站點(diǎn)B之間因?yàn)樾奶鴣G失而無法感知對(duì)方時(shí)絮蒿,靜態(tài)優(yōu)先仲裁機(jī)制會(huì)直接判定A端存活尊搬,B端死亡,完成系統(tǒng)腦裂土涝。但是佛寿,如果站點(diǎn)A故障導(dǎo)致兩端心跳異常,靜態(tài)優(yōu)先依然會(huì)判定B端死亡但壮,此時(shí)就會(huì)導(dǎo)致業(yè)務(wù)中斷冀泻。所以部署雙活優(yōu)選第三方仲裁模式,通過第三方仲裁來區(qū)分設(shè)備故障和中間鏈路故障這兩種場(chǎng)景蜡饵。
第三方仲裁機(jī)制弹渔,如上圖,雙活兩端心跳發(fā)生異常溯祸,兩端自身無權(quán)決定是否獲勝肢专,都會(huì)向第三方仲裁服務(wù)器獲取仲裁結(jié)果,最終確定是“存活”還是“死亡”您没。如果第三方仲裁設(shè)備故障,則自動(dòng)轉(zhuǎn)換為靜態(tài)優(yōu)先模式胆绊。
雙活如何實(shí)現(xiàn)容災(zāi)
如上圖所示氨鹏,雙活架構(gòu)是基于兩套存儲(chǔ)集群構(gòu)建AA雙活容災(zāi)關(guān)系,基于兩套數(shù)據(jù)中心的卷虛擬出一個(gè)跨站點(diǎn)的虛擬卷压状,該卷的數(shù)據(jù)在兩個(gè)存儲(chǔ)集群之間實(shí)時(shí)同步仆抵,且兩套數(shù)據(jù)中心能夠同時(shí)處理應(yīng)用服務(wù)器的I/O讀寫請(qǐng)求,面向應(yīng)用服務(wù)器提供無差異的AA并發(fā)訪問能力种冬。任意一個(gè)數(shù)據(jù)中心故障镣丑,都能做到數(shù)據(jù)零丟失,業(yè)務(wù)能迅速切換到另外一個(gè)站點(diǎn)運(yùn)行娱两,無需人工介入莺匠,對(duì)用戶無感知,從而保證業(yè)務(wù)連續(xù)性十兢。等待故障恢復(fù)之后趣竣,存儲(chǔ)兩端之間再做增量數(shù)據(jù)同步,用戶可以回到兩端站點(diǎn)同時(shí)處理業(yè)務(wù)的狀態(tài)旱物。
成熟的雙活技術(shù)通常采用復(fù)制集群技術(shù)遥缕,復(fù)制集群能夠提供雙活LUN的數(shù)據(jù)實(shí)時(shí)同步和雙活LUN數(shù)量線性擴(kuò)展的能力,充分滿足云上業(yè)務(wù)快速增長的需求宵呛。
Finally
雙活容災(zāi)是保障業(yè)務(wù)連續(xù)性的一柄尖刀利刃单匣,是保障用戶業(yè)務(wù)可靠上云的強(qiáng)大后盾。企業(yè)應(yīng)用不做容災(zāi)就好比開車出遠(yuǎn)門不帶備胎、做計(jì)劃不做Plan B户秤,意外的發(fā)生码秉,可能只是時(shí)間的問題。
雙活容災(zāi)虎忌,有“備”無患泡徙。
本為轉(zhuǎn)載自華為云社區(qū) 作者:dos_wang
更多云存儲(chǔ)技術(shù)干貨請(qǐng)到華為云硬盤社區(qū)