UCloud在很久之前即開(kāi)始著(zhù)手可用區項目Sixshot的整體布局。2014年起開(kāi)始致力為分布在各個(gè)地區的數據中心建設高可用高帶寬的同城環(huán)網(wǎng),將北京的多個(gè)主力機房的內網(wǎng)互相打通;其后在完善環(huán)網(wǎng)之余,先后對華北、華南、華東、亞太等地的網(wǎng)絡(luò )架構進(jìn)行了升級優(yōu)化,完成了各地的雙星型Pop點(diǎn)建設。這種設計理念充分考慮了機房?jì)染W(wǎng)連接的高速性、穩定性、冗余能力和可擴展性,之后各地只需選址新建機房并連入Pop點(diǎn)即可。
此次UCloud可用區的設計,是在原有工作基礎上進(jìn)行了網(wǎng)絡(luò )基礎架構的系統性升級,相比原同城環(huán)網(wǎng),內網(wǎng)表現更加高速穩定。與此同時(shí),伴隨著(zhù)產(chǎn)品層面的系統級重構,可用區也提供了各云產(chǎn)品的跨機房?jì)染W(wǎng)互通能力。
可用區,提供異地容災和彈性調度能力
地域(Region)指根據地理位置不同將同一地區的云服務(wù)組成合集,構成一個(gè)地域。目前,UCloud全球共有7個(gè)地域,其中國內有北京一、北京二、浙江、上海、廣東五個(gè)地域,海外兩個(gè)地域分別設在香港和美國加州。
可用區(Availability Zones)則是指在同一個(gè)地域之內的一組數據中心群,即可用區是由多個(gè)數據中心組成,一個(gè)地域內一般會(huì )有多個(gè)可用區。可用區在設計上相互獨立,是不同地點(diǎn)的數據中心,在物理和電力上都相互隔離,有獨立的安全保障,單個(gè)數據中心的故障影響范圍被隔離在單個(gè)可用區范圍內。同時(shí),同一地域內的可用區之間通過(guò)高速、穩定、低延遲的網(wǎng)絡(luò )互相連接,內網(wǎng)互通。
為了實(shí)現多機房的容災部署,按傳統方式,企業(yè)往往需要增加額外的容災機房,在計算、網(wǎng)絡(luò )和存儲設備上增加上千萬(wàn)元的成本。另外,企業(yè)還要解決機房間的專(zhuān)線(xiàn)部署和復雜的運維問(wèn)題。這樣的成本和復雜度是一般企業(yè)所難以承受的。
UCloud可用區上線(xiàn)后,用戶(hù)對云資源的管理規劃和容災設計能力將顯著(zhù)提升。
用戶(hù)可以把應用部署在多個(gè)可用區中運行,實(shí)現高可用性的應用架構。即使某個(gè)可用區的基礎設施發(fā)生故障(例如,實(shí)例硬件故障、存儲故障或網(wǎng)絡(luò )中斷),部署在另一個(gè)可用區的應用可以不受影響、繼續運行。
用戶(hù)可以將業(yè)務(wù)中的同種資源(例如主機)隨機地創(chuàng )建在兩個(gè)可用區內,由于可用區間的內網(wǎng)通信延時(shí)只有約1.5ms,當一個(gè)可用區故障后,另一個(gè)可用區的主機仍可不受影響地繼續運行,從而保證了業(yè)務(wù)的持續性。
值得一提的是,隨著(zhù)基礎網(wǎng)絡(luò )的改造,跨地域的內網(wǎng)通信質(zhì)量也獲得了提升,例如使用UCloud提供的跨域內網(wǎng)通道,北京到廣州地域的內網(wǎng)延遲僅約30ms,這為建設兩地三中心的容災方案提供了物理上的保證。
UCloud可用區設計理念
可用區設計之初,UCloud吸取了之前本行業(yè)內的一些經(jīng)驗教訓,確保為用戶(hù)提供更流暢的產(chǎn)品體驗,著(zhù)重體現了以下幾點(diǎn):
- 提供在原有產(chǎn)品上的無(wú)縫升級能力;
- 確保可用區的核心功能有出色的使用體驗;
- 設計出解決用戶(hù)痛點(diǎn)的特色功能,例如混合云的網(wǎng)元互通、共享帶寬的自由分組等。
其中,產(chǎn)品的無(wú)縫升級能力一直是UCloud重點(diǎn)強調的設計理念,因為如此才能保證既有用戶(hù)的權益,讓他們隨著(zhù)UCloud的成長(cháng)而不斷獲利。
以EIP(Elastic IP,又稱(chēng)彈性IP)跨可用區漂移這個(gè)功能為例,AWS和部分國內云服務(wù)提供商,雖然具有EIP跨可用區使用的能力,但為此需要申請專(zhuān)門(mén)的EIP,并需要將原主機上綁定的IP銷(xiāo)毀,再綁上新申請的IP方能達到目的。使用不方便之余,舊有IP也無(wú)法再找回;若有備案等原因導致IP無(wú)法替換,則原有資源就無(wú)法享受到EIP漂移的便利。
然而,UCloud設計方案之初,便考慮了已有用戶(hù)的立場(chǎng)和便利性,確保其存量IP都能自由使用IP漂移等所有可用區功能。防火墻的設計也是秉承著(zhù)同樣的理念。如UCloud特色的共享帶寬,原本只限定在單一機房?jì)仁褂茫S可用區上線(xiàn),該功能也新增了自由編組能力,可以滿(mǎn)足用戶(hù)更加靈活豐富的使用場(chǎng)景。而存量的共享帶寬,都可無(wú)縫的繼續使用和擴展。
UCloud可用區特色功能
1.網(wǎng)絡(luò )接入,靈活自由
1.1 外網(wǎng)EIP,支持跨可用區綁定
隨著(zhù)網(wǎng)絡(luò )底層的重新設計,用戶(hù)的外網(wǎng)IP(EIP)可以在一個(gè)地域內的任何可用區使用。為了保證業(yè)務(wù)連續性,IP地址經(jīng)常有保留的必要(如備案要求或者應用調用需要)。當需要重新規劃可用區間的資源分布時(shí),外網(wǎng)IP支持從一個(gè)可用區的資源上解綁,并在另一個(gè)可用區內使用。
1.2 帶寬管理,支持多個(gè)EIP跨可用區及自由分組
同時(shí),UCloud特有的外網(wǎng)IP帶寬管理產(chǎn)品“共享帶寬”的形態(tài)也有了很大的演進(jìn)。共享帶寬是一種多個(gè)外網(wǎng)IP共享網(wǎng)絡(luò )帶寬總量的帶寬模式。相比每個(gè)IP需要單獨指定和購買(mǎi)帶寬,多IP共享帶寬大大提高了帶寬使用效率,節省了用戶(hù)成本。
現在,新形態(tài)的共享帶寬支持用戶(hù)將一個(gè)地域內的所有EIP自由地分組計算。例如,可以將某10個(gè)EIP劃分為一個(gè)共享帶寬組,共享50M的帶寬,其他5個(gè)EIP歸屬于另一個(gè)共享帶寬組,共享30M的帶寬。而對于核心業(yè)務(wù)使用的某IP地址,為了保證其帶寬不被其余業(yè)務(wù)搶占,該IP仍可以使用獨立的帶寬計費方式。這種UCloud特有的獨立帶寬和共享帶寬協(xié)同使用的模式,進(jìn)一步地滿(mǎn)足了用戶(hù)多樣的場(chǎng)景需求,保證了用戶(hù)業(yè)務(wù)的穩定性,同時(shí)也降低了用戶(hù)成本。
1.3 ULB負載均衡,支持掛載跨可用區后端
一個(gè)地域內的網(wǎng)絡(luò )設計,除了跨可用區的內網(wǎng)通信保障外,還提供了網(wǎng)絡(luò )產(chǎn)品層面的高度靈活性。負載均衡(ULB)本次也支持了在一個(gè)地域內自由使用,ULB支持同時(shí)掛載不同可用區內的后端實(shí)例,為實(shí)現跨可用區的資源平衡和容災在技術(shù)上鋪平了道路。
2.混合云任意點(diǎn)接入,享受全地域網(wǎng)元互通
可用區和混合云方案結合,也可以產(chǎn)生1+1>2的效果,創(chuàng )造更大的價(jià)值。UCloud提供物理云、托管云、專(zhuān)線(xiàn)等多種云接入方式,支持用戶(hù)創(chuàng )造公私結合的混合云方案,解決用戶(hù)分步驟平滑上云的痛點(diǎn)。所以,在同一地域內(例如北京),UCloud也提供了多個(gè)可供選擇的托管云接入機房以及多個(gè)專(zhuān)線(xiàn)接入點(diǎn),這些接入點(diǎn)都有完善的冗余和容災設計。
在可用區未上線(xiàn)前,混合云的接入位置和公有云資源的位置存在一定的耦合關(guān)系,給用戶(hù)使用帶來(lái)了限制。例如,用戶(hù)將自有服務(wù)器托管到UCloud北京C數據中心,則默認只能與北京C的公有云形成互通。這種混合云模式對用戶(hù)業(yè)務(wù)擴展造成不便,若其在北京D又部署了公有云資源,則需要單獨搭建轉發(fā)集群,才能與C的托管云互通,增加了維護成本。
隨著(zhù)可用區上線(xiàn),用戶(hù)將混合云就近接入到任一位置,都能把其私有資源和該地域內所有可用區的公有云資源直接打通。這種一攬子解決的接入方案,提供了將混合云和公有云部署解耦的能力,大大減少了用戶(hù)在上云過(guò)程中所耗費的精力和產(chǎn)生的顧慮。
3.兩地三中心,高層次的容災方案
傳統方式的跨數據中心容災,對用戶(hù)而言是一個(gè)成本高昂且費事費力的任務(wù)。用戶(hù)需要在兩個(gè)數據中心都部署一套同樣的系統,并通過(guò)數據中心間的專(zhuān)線(xiàn)進(jìn)行數據同步等工作。對外則需要通過(guò)DNS解析等方式,在災備時(shí)將業(yè)務(wù)從一處切換到另一處。
地域和可用區的產(chǎn)品特性,結合UCloud的跨域內網(wǎng)高速連接,可以為用戶(hù)構建更高層次的容災設計和完整的兩地三中心解決方案。
由于EIP和ULB可以在地域級別存在,一個(gè)地域內可以部署一套EIP和ULB,并以此固定地向外提供服務(wù)。ULB后端可以?huà)燧d來(lái)自?xún)蓚(gè)可用區的資源。因而可以將后端業(yè)務(wù)中使用的主機、數據庫、內存緩存等分散地分布于多個(gè)可用區內,這樣就構成了同城內雙活的兩個(gè)中心(生產(chǎn)中心和同城災備中心)。這兩個(gè)中心具有基本同等的業(yè)務(wù)處理能力,數據通過(guò)跨可用區自身的內網(wǎng)進(jìn)行實(shí)時(shí)同步。日常情況下,兩個(gè)中心可同時(shí)分擔業(yè)務(wù)和管理系統的運行,并可切換運行或同時(shí)運行;災難情況下,可在基本不丟失數據的情況下進(jìn)行災備應急切換,保持業(yè)務(wù)連續運行。
此外,UCloud提供的跨域內網(wǎng)高速連接(UDPN),可以為相對地理位置較遠的兩個(gè)地域(如北京和廣東)的公有云之間提供高速而穩定的內網(wǎng)連接。使用UDPN后,北京到廣州的內網(wǎng)延遲可以穩定在30ms左右,而UDPN的成本比用戶(hù)自建北京-廣州的專(zhuān)線(xiàn)成本低很多,這為部署“兩地三中心”中的異地災備中心,創(chuàng )造了基礎設施層面的條件。
同時(shí),UDB數據庫產(chǎn)品支持跨可用區的數據實(shí)時(shí)同步能力,通過(guò)將主庫和從庫分別部署在不同的可用區內,支持業(yè)務(wù)節點(diǎn)和數據節點(diǎn)的熱備能力;還可用通過(guò)跨域的內網(wǎng)連接實(shí)現多地的數據節點(diǎn)冷備。相比原來(lái)的集群,具備的指數級的容災能力提升。
用戶(hù)可以在另一地域,創(chuàng )建一套輕量級的災備系統,并與主地域進(jìn)行內網(wǎng)打通,備地域的數據進(jìn)行跨地域的主從同步。當主地域發(fā)生故障時(shí),備地域的系統可以按既定計劃拉起,并暫時(shí)提供服務(wù)。
案例解析:中國手游集團有限公司
隨著(zhù)可用區的發(fā)布上線(xiàn),很多UCloud用戶(hù)開(kāi)始享受到可用區對其業(yè)務(wù)帶來(lái)的巨大紅利。中國手游集團有限公司(以下簡(jiǎn)稱(chēng)中手游)是一個(gè)UCloud典型的混合云重度用戶(hù),其有大量的服務(wù)器資源,因歷史原因和系統設計,無(wú)法全部上云,為享受云計算技術(shù)的紅利,他們選擇UCloud的混合云方案,其自有的服務(wù)器接入UCloud北京的混合云接入點(diǎn),同時(shí)在北京的B、C、D等多機房部署了公有云業(yè)務(wù),兩者通過(guò)北京地區的內網(wǎng)環(huán)網(wǎng)打通。
出于其自身業(yè)務(wù)和管理的需要,中手游托管云采用分批分項目的方式,分別接入了北京B、C、D等地的托管接入點(diǎn),公有云資源也平均分布于北京B、C、D等處。這就造成北京B機房的托管云和北京C機房的公有云、北京D機房的托管云和北京B機房的公有云通信等需求。為應對這類(lèi)通信需要,中手游使用了UCloud為其搭建的轉發(fā)集群,但是轉發(fā)集群存在一定的運維成本,而且流量有突發(fā)等情況,原有集群面臨轉發(fā)能力限制和擴容需求。且隨其項目的增多,集群管理的復雜度也相應上升。UCloud可用區的推出,很好地幫助中手游解決了該痛點(diǎn)。
伴隨著(zhù)網(wǎng)絡(luò )架構的升級,混合云和跨可用區的公有云直接可以通過(guò)內網(wǎng)高速互通,吞吐率和穩定性直接通過(guò)UCloud基礎架構進(jìn)行保障,其性能不再依賴(lài)轉發(fā)集群,也讓中手游的運維成本降低至零。
運營(yíng)能力保證無(wú)縫升級
可用區整體上線(xiàn)也體現了UCloud強大的運營(yíng)系統和運營(yíng)能力。為支持可用區,UCloud現有的所有產(chǎn)品和基礎設施都需要進(jìn)行大幅度的重構。而UCloud現已為3萬(wàn)多家企業(yè)級用戶(hù)提供公有云服務(wù),上面運行著(zhù)海量的服務(wù)和數據。如何在不影響用戶(hù)業(yè)務(wù)的情況下,進(jìn)行全系統級的復雜重構?這就要求整個(gè)底層的業(yè)務(wù)運營(yíng)系統設計,能滿(mǎn)足無(wú)縫、透明的要求。唯有如此,底層功能大大小小的每一次迭代,才不會(huì )影響用戶(hù)的數據安全和業(yè)務(wù)安全。
除運營(yíng)系統設計外,UCloud還擁有專(zhuān)業(yè)的運營(yíng)團隊和豐富的運營(yíng)經(jīng)驗。在功能實(shí)際上線(xiàn)前,預先設計了詳細周密的發(fā)布計劃,經(jīng)過(guò)了數次發(fā)布演練和壓力測試,此外還有監控分析系統,不斷實(shí)時(shí)監測實(shí)施狀況并反饋,并分析潛在風(fēng)險點(diǎn)。
而數萬(wàn)量級的用戶(hù),根據業(yè)務(wù)特性、資源種類(lèi)、地域分布等,被細化拆分成上百組用戶(hù)組。這些群組按事先設計的計劃表,按序分批上線(xiàn)功能。上線(xiàn)前后,售前售后團隊保持全程跟蹤,保證用戶(hù)最快的適應和使用功能。
除保證功能升級對用戶(hù)業(yè)務(wù)無(wú)影響外,UCloud還通過(guò)合理的技術(shù)方案,努力讓原有的存量機房都具有產(chǎn)品持續升級的能力。確保不同階段建設的機房,盡管底層的物理實(shí)現存在差異,但都能在產(chǎn)品層面上向同一個(gè)方面不斷演進(jìn),維護原有用戶(hù)的利益。
云計算是一個(gè)飛速發(fā)展的行業(yè),新產(chǎn)品新特性不斷涌現,UCloud依靠強大的云平臺運營(yíng)能力,讓每位用戶(hù)安全、便利的享受云計算帶來(lái)的好處,跟上云時(shí)代的步伐。
總結
可用區體現了云服務(wù)商的更高層次的基礎設施設計能力,是一個(gè)IaaS服務(wù)商發(fā)展到一定規模和階段后必然的選擇。UCloud通過(guò)完善復雜的系統設計和細粒度灰度控制,向用戶(hù)安全平滑地交付了可用區這一重大功能,為用戶(hù)基于云平臺搭建更靈活更可靠的業(yè)務(wù)系統提供了底層保障。