隨著愛數備份容災家族百城巡展的腳步,愛數一體化容災的理念走進了全國的三十多個城市,也獲得了用戶朋友的廣泛認可。那我們就借此契機,更加深入地了解愛數的一體化容災。上一期我們提到,一體化容災需要同時解決的兩個問題是“數據不丟失,應用不間斷”。其中“數據不丟失”是基礎,那么“應用不間斷”的目標如何實現呢?
一、 基于 CDP 技術的應用容災
首先,我們來認識一下愛數備份容災家族的應用容災方案。簡單地說,整個容災方案分為三個部分:生產服務器、容災服務器和基于愛數容災家族產品成員的容災管理控制臺。這三個部分被“實時復制”和“持續恢復”兩項關鍵技術緊密地銜接在一起。其中,“實時復制”監控生產服務器上用戶所選擇的數據源,并源源不斷地將數據變化傳輸到愛數第三代引擎所特有的 OFS 介質(下文簡稱 OFS)上,并可追溯到任意時間點。為了使容災服務器上的數據與生產服務器保持一致,“持續恢復”OFS 上的數據變化實時地恢復到容災服務器上。那么如果災難發生,需要進行應用切換,容災服務器所能恢復的時間點就是應用中斷的那個時刻。如此一來,實現了容災的恢復點目標(RPO)接近于 0。
如果真的發生了應用故障,容災系統的故障檢測模塊就會首先發揮作用,它會先嘗試排除各種異常情況并嘗試修復應用。如果應用無法修復,容災服務器就會自動接管生產服務器的應用(用戶也可配置成手工接管,愛數的管理控制臺會在應用故障時發出通知)。這時,應用中斷時間為接管所需的時間,可以通過以下方式計算出:
接管時間 = IP 漂移時間 +應用切換時間
(一般情況下 IP 漂移是十分迅速的,應用切換時間根據應用和數據量的大小而有所不同,但總得來說是不會超過分鐘數量級)
現在,容災系統順利地完成了接管,但這并不意味著容災的結束。接管應用后的容災服務器還在對外提供服務,所產生的數據依然需要保護。這時,愛數應用容災的對象隨著應用切換變成了容災服務器。災難過后,為了讓原生產系統繼續工作,用戶往往需要修復生產系統,應用修復后,愛數特有的“反向復制”技術,會實時地將容災服務器產生的數據通過 OFS 復制回生產服務器上。只要復制完成,再進行一次反向接管即可將應用重新切換到生產服務器上。這時,應用中斷的時間也只相當于一次應用接管的時間。縱觀整個容災和應用恢復的過程,應用中斷時間(RTO)僅為兩次接管的時間。可以理解為下面的表達式:
應用中斷時間 = 接管時間 × 2
反觀傳統的容災方案,在進行接管后恢復生產應用的一系列操作過程中,一般都會為了保證數據一致性而要求在數據恢復時停止應用。這時,應用中斷時間(RTO)可以表示為:
應用中斷時間 = 數據恢復時間 +接管時間 × 2
(一般情況下,數據量越大、網絡條件越差則恢復時間越長,恢復時間與數據量成正比關系)
由于傳統方案中的數據恢復時間會非常大限度地受制于數據量的大小和網絡鏈路狀況,所以愛數應用容災方案大幅降低了應用間斷的時間。
二、 基于級聯復制的遠程應用容災
除了上述容災方案之外,愛數備份容災家族還提供了更加安全可靠的遠程級聯復制容災方案。所謂級聯,就是在不同的地點都部署容災系統,利用 OFS 的同步功能,將遠程容災中心和本地數據中心的 OFS 數據同步起來,這種同步也是實時的,遠程的 OFS 同樣可以恢復到任意時間點。由于異地容災往往是在低速網絡中進行,網絡的抖動會影響容災的效果,為此愛數還專門提供了支持斷開重連、斷點續傳等網絡傳輸技術,令遠程的數據一致性得到了保證。
用戶也可以在遠程容災中心部署容災服務器,那么就會至少有四份數據同時被保存下來。發生應用故障時,用戶可以選擇使用本地或者異地的容災服務器進行接管。如果本地容災系統癱瘓,可用遠程的 OFS 數據進行修復。即使本地數據中心發生極端的災難性事故,出現數據中心全部損毀的情況,遠程容災服務器依然可以接管應用、遠程 OFS 依然可以提供任意時間點的數據恢復。災難過后,如果需要修復本地數據中心的生產系統和容災系統,同樣也可以通過遠程 OFS 到本地 OFS、本地 OFS 到本地生產服務器之間的反向復制來進行數據恢復,解決了數據恢復時間長、遠程數據可能不一致的問題,使得應用中斷的時間(RTO)降到最低。
愛數備份容災家族采用了“實時復制”、“持續恢復”、“反向復制”、“級聯復制”等一系列獨特的技術手段來保證關鍵應用的持續運行,力求將應用中斷的時間最小化,為用戶提供了更加安全可靠的應用容災方案。愛數應用容災方案和數據容災方案一樣,是一體化容災不可或缺的組成部分,為容災普及鋪平了道路。