詳解數(shù)據(jù)中心災(zāi)備切換技術(shù)


數(shù)據(jù)中心災(zāi)備切換是一系列操作的組合,無論是生產(chǎn)中心還是災(zāi)備中心,彼此的業(yè)務(wù)之間都有邏輯的聯(lián)系,服務(wù)的啟動順序也有嚴(yán)格的要求。
故障的類型多種多樣,災(zāi)備中心每一次的啟用,都需要耗費(fèi)大量的人力和物力,所以不是每一種災(zāi)難都需要啟用災(zāi)備中心。在發(fā)生災(zāi)難時,首先需要快速判斷災(zāi)難的類型、可恢復(fù)性和后果,然后根據(jù)災(zāi)備預(yù)案來決定是否啟用災(zāi)備中心。
比如,通過本地備份只需要半小時就能恢復(fù)本地的業(yè)務(wù),就完全不需要啟用災(zāi)備中心。此外,應(yīng)用級災(zāi)備的對象往往是關(guān)鍵的業(yè)務(wù),越關(guān)鍵的業(yè)務(wù),切換就越需要慎重,因此啟動切換決策需要集體的決策,而不是根據(jù)單一的個人意愿。
?目前,網(wǎng)絡(luò)切換技術(shù)主要有三種:基于IP地址的切換、基于DNS服務(wù)器的切換、基于負(fù)載均衡設(shè)備的切換。

主備應(yīng)用服務(wù)器的IP地址空間同,客戶端通過唯一的IP地址訪問應(yīng)用服務(wù)器。在正常情況下,只有生產(chǎn)中心應(yīng)用服務(wù)器的IP地址處于可用狀態(tài),災(zāi)備中心的備用服務(wù)器IP地址處于禁用狀態(tài)。災(zāi)難一旦發(fā)生,管理員手動或通過腳本將災(zāi)備中心服務(wù)器的IP地址設(shè)置為可用,實(shí)現(xiàn)網(wǎng)絡(luò)訪問路徑切換。
DNS服務(wù)器的切換模式下,所有應(yīng)用都需要根據(jù)主機(jī)名來訪問,而不是直接根據(jù)主機(jī)的IP地址來訪問,從而通過域名實(shí)現(xiàn)網(wǎng)絡(luò)切換。組織對外提供服務(wù)的業(yè)務(wù),可通過向運(yùn)營商申請應(yīng)的DNS服務(wù)器,對主生產(chǎn)中心和備用生產(chǎn)中心各申請應(yīng)的DNS服務(wù),通過運(yùn)營商DNS切換機(jī)制實(shí)現(xiàn)對外服務(wù)的切換。
?對于內(nèi)部提供的業(yè)務(wù),生產(chǎn)中心和災(zāi)備中心各自部署一臺DNS服務(wù)器,負(fù)責(zé)所有主機(jī)的域名解析。生產(chǎn)中心為主DNS服務(wù)器,災(zāi)備中心為備份DNS服務(wù)器,兩臺DNS服務(wù)器的內(nèi)容自動保持完全同步。
DNS是互聯(lián)網(wǎng)上作為域名和IP地址相互映射的一個分布式數(shù)據(jù)庫。DNS能夠使用戶更方便的訪問網(wǎng)絡(luò)和應(yīng)用,而不用去記憶雜亂、繁瑣的IP數(shù)串。通過域名,最終得到該域名對應(yīng)的IP地址的過程叫做域名解析。下面這張圖,詳細(xì)說明了一個DNS域名解析的全過程。

1、通常,在電腦打開瀏覽器,輸入一個域名。比如輸入www.163.com,這時電腦會發(fā)出一個DNS請求到本地DNS服務(wù)器。本地DNS服務(wù)器一般是網(wǎng)絡(luò)接入服務(wù)器商提供,比如中國電信,中國移動。 2、查詢www.163.com的DNS請求到達(dá)本地DNS服務(wù)器之后,本地DNS服務(wù)器會首先查詢它的緩存記錄,如果緩存中有此條記錄,就可以直接返回結(jié)果。如果沒有,本地DNS服務(wù)器還要向DNS根服務(wù)器進(jìn)行查詢。 3、根DNS服務(wù)器沒有記錄具體的域名和IP地址的對應(yīng)關(guān)系,而是告訴本地DNS服務(wù)器,你可以到域服務(wù)器上去繼續(xù)查詢,并給出域服務(wù)器的地址。 4、本地DNS服務(wù)器繼續(xù)向域服務(wù)器發(fā)出請求,在這個例子中,請求的對象是.com域服務(wù)器。.com域服務(wù)器收到請求之后,也不會直接返回域名和IP地址的對應(yīng)關(guān)系,而是告訴本地DNS服務(wù)器,你的域名的解析服務(wù)器的地址。 5、最后,本地DNS服務(wù)器向域名的解析服務(wù)器發(fā)出請求,這時就能收到一個域名和IP地址對應(yīng)關(guān)系,本地DNS服務(wù)器不僅要把IP地址返回給用戶電腦,還要把這個對應(yīng)關(guān)系保存在緩存中,以備下次別的用戶查詢時,可以直接返回結(jié)果,加快網(wǎng)絡(luò)訪問。

1、首先客戶端向其所在運(yùn)營商的Local DNS發(fā)起www.abc.com域名的DNS請求。 2、運(yùn)營商的Local DNS服務(wù)器從RootDNS得知www.abc.com由DNS-CTC、DNS-CNC、DNS-USA1和DNS-USA2來解析,即RootDNS同時返回此4個DNS服務(wù)器地址給Local?DNS(DNS的工作原理要求返回所有關(guān)于請求的記錄,在此即返回4個DNS服務(wù)器,如果只返回一個DNS而此DNS剛好中斷服務(wù)了,那么Local DNS只能是解析失敗了); 3、Local DNS輪詢向這4個DNS服務(wù)器發(fā)出域名解析的請求,直到返回?cái)?shù)據(jù)。 4、在此,假如DNS-CTC響應(yīng)Local?DNS的域名解析請求,同時返回2臺GTM的地址(本地監(jiān)聽的Web服務(wù))。 5、收到Local DNS請求的GTM首先查詢在本地是否有該Local DNS的就近性表項(xiàng),如果存在則直接給Local DNS返回速度最快的服務(wù)器地址。如果不存在,則通知另外一臺GTM發(fā)起對該Local DNS的查詢。 6、兩臺DNS分別對Local DNS進(jìn)行Probe。例如GTM-A查詢該Local DNS的RTT時間為50ms,而GTM-B查詢同一Local DNS的RTT時間為100ms,則此時在兩臺GTM內(nèi)都形成了該Local DNS的對應(yīng)就近性表記錄。 7、根據(jù)就近原則,Local DNS請求的GTM-A根據(jù)系統(tǒng)的就近性表返回相應(yīng)的Data Center內(nèi)的Web服務(wù)器地址(即1.1.1.1)。 8、Local DNS獲得地址后,將該地址返回給用戶,到此DNS請求過程結(jié)束。 9、用戶向www.albc.com(1.1.1.1)網(wǎng)站發(fā)起訪問。

1. 基于Local DNS請求所在的地理位置。 2. 基于GSLB與Local DNS的RTT最小。
二層負(fù)載均衡:負(fù)載均衡服務(wù)器對外依然提供一個 VIP(虛IP),集群中不同的機(jī)器采用相同 IP地址,但機(jī)器的 MAC 地址不一樣。當(dāng)負(fù)載均衡服務(wù)器接受到請求之后,通過改寫報(bào)文的目標(biāo) MAC 地址的方式將請求轉(zhuǎn)發(fā)到目標(biāo)機(jī)器實(shí)現(xiàn)負(fù)載均衡。
三層負(fù)載均衡:和二層負(fù)載均衡類似,負(fù)載均衡服務(wù)器對外依然提供一個 VIP(虛IP),但集群中不同的機(jī)器采用不同的 IP 地址。當(dāng)負(fù)載均衡服務(wù)器接受到請求之后,根據(jù)不同的負(fù)載均衡算法,通過 IP 將請求轉(zhuǎn)發(fā)至不同的真實(shí)服務(wù)器。
四層負(fù)載均衡:四層負(fù)載均衡工作在 OSI 模型的傳輸層,由于在傳輸層,只有 TCP/UDP 協(xié)議,這兩種協(xié)議中除了包含源 IP、目標(biāo) IP 以外,還包含源端口號及目的端口號。四層負(fù)載均衡服務(wù)器在接受到客戶端請求后,以后通過修改數(shù)據(jù)包的地址信息( IP+端口號 )將流量轉(zhuǎn)發(fā)到應(yīng)用服務(wù)器。
七層負(fù)載均衡:七層負(fù)載均衡工作在 OSI 模型的應(yīng)用層,應(yīng)用層協(xié)議較多,常用 HTTP、Radius、DNS 等。七層負(fù)載就可以基于這些協(xié)議來負(fù)載。這些應(yīng)用層協(xié)議中會包含很多有意義的內(nèi)容。比如同一個 Web 服務(wù)器的負(fù)載均衡,除了根據(jù) IP 加端口進(jìn)行負(fù)載外,還可根據(jù)七層的 URL、瀏覽器類別、語言來決定是否要進(jìn)行負(fù)載均衡。
?應(yīng)用切換是指生產(chǎn)中心由于發(fā)生災(zāi)難無法作業(yè)時,可由災(zāi)備中心的備用服務(wù)器提供業(yè)務(wù)接管,確保業(yè)務(wù)不停。實(shí)現(xiàn)應(yīng)用切換的前提條件是:數(shù)據(jù)已經(jīng)從生產(chǎn)中心同步到災(zāi)備中心,如果數(shù)據(jù)復(fù)制采用的是異步的方式,在網(wǎng)絡(luò)故障的情況下,就有可能造成數(shù)據(jù)不一致的問題,導(dǎo)致數(shù)據(jù)不可用或無法訪問。
災(zāi)備中心配置與生產(chǎn)中心對應(yīng)的應(yīng)用軟件服務(wù)器、數(shù)據(jù)庫服務(wù)器和中間件服務(wù)器等,且運(yùn)行正常。應(yīng)用切換技術(shù)主要有以下幾種:?
?集群遠(yuǎn)程是指通過在生產(chǎn)中心和災(zāi)備中心的應(yīng)用服務(wù)器上安裝遠(yuǎn)程集群軟件,實(shí)現(xiàn)跨廣域的多服務(wù)器狀態(tài)的監(jiān)控,當(dāng)發(fā)生災(zāi)難時,實(shí)現(xiàn)應(yīng)用服務(wù)器的自動切換。
?集群遠(yuǎn)程容災(zāi)技術(shù)為集群的共享數(shù)據(jù)及業(yè)務(wù)提供了一種更為可靠的遠(yuǎn)程保護(hù)手段,通過該方案,可以將本地集群中的共享數(shù)據(jù)通過網(wǎng)絡(luò)備份到遠(yuǎn)程災(zāi)備服務(wù)器上,實(shí)現(xiàn)集群數(shù)據(jù)的異地災(zāi)備,在數(shù)據(jù)備份的基礎(chǔ)之上還可以在本地集群不可用時,通過選擇自動或手動將本地業(yè)務(wù)切換至遠(yuǎn)程災(zāi)備中心服務(wù)器,從而減少業(yè)務(wù)的停機(jī)時間。
?主備集群應(yīng)用切換方式的弊端在于,多種潛在因素如集群服務(wù)器心跳線中斷、網(wǎng)絡(luò)短時間中斷、應(yīng)用服務(wù)器響應(yīng)不及時等,容易導(dǎo)致在生產(chǎn)中心實(shí)際運(yùn)行正常情況下進(jìn)行誤切換,運(yùn)行風(fēng)險(xiǎn)高。
歸類到應(yīng)用切換功能,雙活技術(shù)是一種利用IT資源較多的災(zāi)備方案,來源于多中心技術(shù)。

真正意義的雙活指兩個數(shù)據(jù)中心同時處于生產(chǎn)狀態(tài),類似于負(fù)載均衡技術(shù),但通常的負(fù)載均衡針對業(yè)務(wù)流量而非數(shù)據(jù)保護(hù)和數(shù)據(jù)安全,啟用所有資源共同承載業(yè)務(wù)的服務(wù),同時保證當(dāng)其中一邊發(fā)生故障時,另一邊的資源可直接接管所有的業(yè)務(wù)服務(wù)。
推薦閱讀:2021年災(zāi)備行業(yè)白皮書(附下載)

轉(zhuǎn)載申明:轉(zhuǎn)載本號文章請注明作者和來源,本號發(fā)布文章若存在版權(quán)等問題,請留言聯(lián)系處理,謝謝。
推薦閱讀
更多架構(gòu)相關(guān)技術(shù)知識總結(jié)請參考“架構(gòu)師技術(shù)全聯(lián)盟書店”相關(guān)電子書(35本技術(shù)資料打包匯總詳情可通過“閱讀原文”獲取)。
內(nèi)容持續(xù)更新,現(xiàn)下單“架構(gòu)師技術(shù)全店打包匯總(全)”,后續(xù)可享全店內(nèi)容更新“免費(fèi)”贈閱,格僅收188元(原總價270元)。
溫馨提示:
掃描二維碼關(guān)注公眾號,點(diǎn)擊閱讀原文鏈接獲取“架構(gòu)師技術(shù)全店資料打包匯總(全)”電子書資料詳情。

