為了向廣大SLB用戶(hù)提供更加穩(wěn)定可靠的負(fù)載均衡服務(wù),近期阿里云對(duì)其SLB系統(tǒng)進(jìn)行了升級(jí),優(yōu)先在杭州和青島地域部署了同城容災(zāi)的本地高可用解決方案,下面就讓我們一起來(lái)了解一下SLB同城容災(zāi)方案。
什么是同城容災(zāi)?
SLB集群本身,已經(jīng)實(shí)現(xiàn)了各種冗余,包括電力、網(wǎng)絡(luò)、服務(wù)器等。我們單集群可以防止“單路電力故障”、“單邊網(wǎng)絡(luò)故障”、“服務(wù)硬件故障”、“系統(tǒng)意外宕機(jī)”甚至“整(一)個(gè)機(jī)柜突然掉電、突然斷網(wǎng)、突然宕機(jī)”等故障對(duì)用戶(hù)對(duì)外服務(wù)造成的影響。
但是更大范圍的故障,比如整個(gè)數(shù)據(jù)中心不可用,已經(jīng)不能從SLB內(nèi)部冗余來(lái)解決。
同城容災(zāi)方案,正是在這種需求之下制定的解決方案:即當(dāng)整個(gè)數(shù)據(jù)中心故障、不可用時(shí),要求SLB仍然有能力在較短的時(shí)間內(nèi)恢復(fù)服務(wù)能力。
同城容災(zāi)的技術(shù)實(shí)現(xiàn)淺析
SLB同城容災(zāi)方案
同城容災(zāi)的技術(shù)核心是依靠“BGP”,跟據(jù)BGP的“路由擇徑”的優(yōu)先級(jí)特點(diǎn),將SLB的VIP以不同的“優(yōu)先級(jí)”同時(shí)在兩個(gè)機(jī)房宣告(BGP路由發(fā)布);這樣,平時(shí)“優(yōu)先級(jí)高”的數(shù)據(jù)中心為客戶(hù)提供服務(wù),一旦該數(shù)據(jù)中心不可用,BGP會(huì)很快(最差的情況180秒內(nèi),正常情況下5~15秒內(nèi))收斂,此時(shí),“低優(yōu)先級(jí)”的數(shù)據(jù)中心就會(huì)代替故障的(高優(yōu)先級(jí))數(shù)據(jù)中心,繼續(xù)為用戶(hù)服務(wù)。
在SLB的應(yīng)用場(chǎng)景下,同一地域(Region)下的兩個(gè)數(shù)據(jù)中心(IDC機(jī)房)實(shí)現(xiàn)了互備的關(guān)系,正常情況下1/2的VIP高優(yōu)先級(jí)的運(yùn)行在不同的兩個(gè)IDC下,當(dāng)單個(gè)數(shù)據(jù)中心發(fā)生不可用時(shí),會(huì)觸發(fā)上述的故障遷移從而保證用戶(hù)的服務(wù)可用性。
同城容災(zāi)的優(yōu)勢(shì)
除了當(dāng)前已經(jīng)具備的同城容災(zāi)的高可用方案外,我們也建議用戶(hù)可以結(jié)合自身的應(yīng)用需要,利用阿里云的產(chǎn)品和服務(wù)搭建和部署更多高可用的方案,比如:
1.在SLB實(shí)例下綁定不同可用區(qū)的ECS,從而避免因?yàn)閱蝹€(gè)可用區(qū)的故障而導(dǎo)致對(duì)外服務(wù)的不可用;
注:隨著阿里云數(shù)據(jù)中心的建設(shè)和規(guī)模不斷擴(kuò)大,在不久的將來(lái)ECS將使不同的地域均具備可供用戶(hù)選擇的多個(gè)可用區(qū)來(lái)部署自己的應(yīng)用,我們也建議用戶(hù)在針對(duì)已經(jīng)支持了多可用區(qū)選擇的地域中采取上述方案來(lái)提高應(yīng)用的高可用。
2. 在不同的地域購(gòu)買(mǎi)SLB和ECS實(shí)例并搭建相同的應(yīng)用服務(wù),在此之上通過(guò)阿里云解析來(lái)配置智能DNS,從而滿(mǎn)足就近訪問(wèn)和跨地域?yàn)?zāi)備的需要。
未來(lái),隨著阿里云數(shù)據(jù)中心的不斷建設(shè)和發(fā)展,我們也會(huì)在除了杭州和青島之外的地域應(yīng)用同城容災(zāi)方案,從而使用戶(hù)基于阿里云SLB搭建的應(yīng)用服務(wù)更穩(wěn)定、更可靠!