林岳鑫
【摘 要】為了解決傳統(tǒng)備份與恢復時效低、大量占用備份資源的問題,通過采用業(yè)界最新的數(shù)據(jù)保護技術,分析了各種現(xiàn)有數(shù)據(jù)保護技術的優(yōu)缺點,并提出了快速恢復的方案。經(jīng)過實踐驗證了CDM技術的高效性,既提升了業(yè)務系統(tǒng)的保障水平,又降低了備份資源的使用,為IT系統(tǒng)特別是大規(guī)模生產(chǎn)系統(tǒng)的數(shù)據(jù)保護能力建設提供有益的借鑒。
【關鍵詞】數(shù)據(jù)保護 CDM 快速恢復
IT System Data Protection Practice Based on Copy Data Management Technique
[Abstract] In order to tackle problems of the low real time and massive backup resource occupation of the traditional backup, the state-of-art data protection technique in the industry was used to analyze advantages and disadvantages of existing data protection techniques, as well as a fast recovery scheme was proposed. The high efficiency of copy data management (CDM) was validated by the practice. CDM technique not only enhances the guarantee level of the service system, but also reduces the utilization of the backup resource to provide a useful reference to the data protection capability construction of the IT system and the large-scale production system.
[Key words]data protection copy data management fast recovery
1 現(xiàn)狀及問題
某運營商系統(tǒng)每套核心生產(chǎn)數(shù)據(jù)庫均有10 TB數(shù)據(jù)量,采用傳統(tǒng)的數(shù)據(jù)備份解決方案?;趥鹘y(tǒng)的數(shù)據(jù)備份方案進行災難恢復,配備與備份一致的基礎環(huán)境下,數(shù)據(jù)恢復需要接近12 h。
某運營商的這套備份系統(tǒng)存在大量的冗余備份數(shù)據(jù)。這些數(shù)據(jù)在收集、存放、保管等環(huán)節(jié)都極大地消耗了系統(tǒng)維護的人力和物力,而備份和恢復的效果卻遠遠達不到運營商對RTO(Recovery Time Objective,復原時間目標)和RPO(Recovery Point Objective,復原點目標)的要求。
2 建設目標
對于生產(chǎn)系統(tǒng)來說,RTO要求是半小時,即在任何停機情況下,維護人員需要在半小時內實現(xiàn)業(yè)務的恢復。IT系統(tǒng)面臨著各種各樣的停機風險,這些風險都可能造成業(yè)務系統(tǒng)非計劃內停機,如各種災難事件、各種人為錯誤、各種系統(tǒng)錯誤等。通過對這些事件進行分析,可大致分為小概率機房級故障和大概率機房內故障兩類。
2.1 小概率機房級故障
小概率機房級故障如火災、水災等事件。這類事件發(fā)生的概率很小,但影響范圍至少是機房級的,甚至是地區(qū)級的,即整個機房內運行的業(yè)務系統(tǒng)都會受影響。
2.2 大概率機房內故障
大概率機房內故障如各種邏輯錯、物理損壞等。這類事件發(fā)生的概率較大,是各種業(yè)務系統(tǒng)非計劃停機的主要因素,但影響范圍主要是系統(tǒng)級的,即一般是單個業(yè)務受影響。
某運營商IT中心在業(yè)務連續(xù)性保護方面的建設主要包括容災系統(tǒng)和備份系統(tǒng)。第一類事件由容災系統(tǒng)進行業(yè)務系統(tǒng)的保護;第二類事件原規(guī)劃是由預期容災和備份的結合進行保護。但在實際中容易出現(xiàn)以下問題:
(1)容災系統(tǒng)處理單個業(yè)務停機時非常困難。例如,一個數(shù)據(jù)庫停機了,如果通過容災技術在容災端進行切換,那么應用服務器是否切換?如果不切換,則生產(chǎn)端的應用服務器和容災端的數(shù)據(jù)庫之間的網(wǎng)絡延遲會造成很大業(yè)務影響;如果切換,則其他應用和這個應用之間的依賴關系會造成嚴重問題。
(2)容災系統(tǒng)是基于數(shù)據(jù)實時復制實現(xiàn)的,所以它并不能處理各種邏輯錯誤。例如,生產(chǎn)端被誤刪除一張表,容災端的數(shù)據(jù)也立即被刪除。
(3)數(shù)據(jù)庫的數(shù)據(jù)量都是TB級的。備份系統(tǒng)在進行恢復時耗時過長,一般需要幾個小時甚至以天為單位才能完成恢復,與半小時的RTO要求差距較大。
基于上述現(xiàn)狀,某運營商IT中心希望建設一個快速恢復系統(tǒng),從而彌補容災系統(tǒng)和備份系統(tǒng)的不足,如表1所示。
3 各種數(shù)據(jù)保護技術的研究和比較
為了解決上述問題,某運營商IT中心對市場上現(xiàn)有的各種技術進行了分析研究。
3.1 傳統(tǒng)備份軟件技術
傳統(tǒng)備份軟件是基于磁帶技術為核心發(fā)展起來的,數(shù)據(jù)備份集格式采用的是適合流媒體介質的格式,適合批量的順序寫(備份)和讀(恢復)。
傳統(tǒng)備份技術的發(fā)展主要體現(xiàn)在兩個方面:一是備份介質的發(fā)展;二是備份數(shù)據(jù)獲取技術的發(fā)展。
(1)備份介質發(fā)展歷程
物理磁帶庫:通過使用更多數(shù)量、更加高速的磁帶驅動器,一個備份作業(yè)同時利用多個驅動器的技術,以解決業(yè)務系統(tǒng)數(shù)據(jù)量越來越大帶來的備份窗口的挑戰(zhàn)。
VTL(Virtual Tape Library,虛擬磁帶庫):VTL的出現(xiàn)解決了磁帶較容易損壞的問題,同時由于重復數(shù)據(jù)刪除技術的出現(xiàn),極大地降低了VTL的總體成本。雖然VTL使用磁盤,但是其內部的數(shù)據(jù)格式、數(shù)據(jù)管理、對外接口等和物理磁帶庫是相似的,因此VTL在備份和恢復的速度上并不能超越物理磁帶庫。
備份一體機:傳統(tǒng)備份軟件進行安裝時,需要配置管理服務器、介質服務器、備份客戶端。備份架構、維護的復雜度較高。備份一體機將虛擬磁帶庫和備份軟件整合在一起,組合成軟硬件一體化的設備,簡化了備份架構并降低了維護的復雜性。但備份一體機的優(yōu)勢主要在管理及運維上的簡化,而沒有在備份和恢復的速度方面有所改進。
(2)備份數(shù)據(jù)獲取技術
備份數(shù)據(jù)獲取技術可以概括為以下三類:
LAN(Local Area Network,局域網(wǎng))備份:如圖1所示,備份數(shù)據(jù)通過IP網(wǎng)絡從生產(chǎn)服務器傳輸?shù)絺浞菰O備。LAN備份方式一般用于數(shù)據(jù)量較小的應用。
LAN-Free備份:如圖2所示,備份數(shù)據(jù)通過FC網(wǎng)絡從生產(chǎn)服務器傳輸?shù)絺浞菰O備。LAN-Free備份方式一般用于大數(shù)據(jù)量的應用。
Server-Free備份:如圖3所示,采用上述備份方式均需要生產(chǎn)服務器長時間進行備份,導致大量的IO資源消耗,影響生產(chǎn)穩(wěn)定。Server-Free備份基本不需要生產(chǎn)服務器參與整個備份過程,其實現(xiàn)方式是備份設備直接從生產(chǎn)存儲獲取數(shù)據(jù)(生產(chǎn)存儲對應用數(shù)據(jù)做快照)后掛載快照,再將快照備份。這種方式能將備份的資源消耗從服務器轉移到存儲上,從而減少對生產(chǎn)的影響。Server-Free備份方式需要存儲系統(tǒng)的支持。
雖然備份軟件一直在優(yōu)化進步,但遠遠跟不上數(shù)據(jù)量增長的速度以及業(yè)務對數(shù)據(jù)恢復的要求。以10 TB的數(shù)據(jù)庫為例,如果備份設備硬件配置高,則可以達到2 TB/h,即需5 h實現(xiàn)全量備份。在這個速度下,生產(chǎn)服務器的資源消耗巨大,且10 TB數(shù)據(jù)的恢復時間至少要10 h以上。
3.2 CDP技術
從功能上看,CDP(Continual Data Protection,連續(xù)數(shù)據(jù)保護)比較適合解決前述備份軟件的問題。它能提供數(shù)據(jù)備份,快速恢復數(shù)據(jù)。CDP的原理是通過截取生產(chǎn)應用的寫操作并傳輸?shù)紺DP設備中,將寫操作按次序保存下來。當需要恢復時,CDP可以根據(jù)這些寫操作虛擬出一塊磁盤,再掛載給服務器。CDP技術減少了傳統(tǒng)備份在恢復時需要將數(shù)據(jù)從備份設備恢復到目標存儲的過程,實現(xiàn)分鐘級的恢復,恢復時間和數(shù)據(jù)量的大小沒有關系,也不需要有專門的備份窗口。由于保存了寫操作,所以它可以恢復到任意時間點。
但CDP技術在架構上有一個很重要的前提是:它必須集成到生產(chǎn)系統(tǒng)的IO鏈路中,并以同步方式截取寫操作。它必須保存寫操作的順序,也不能有任何寫操作的缺失,所以這個寫入CDP的操作和生產(chǎn)系統(tǒng)的寫操作必須是一個同步的關系。這樣會極大地影響生產(chǎn)系統(tǒng)的IO性能,同時也要求CDP存儲的性能必須要和生產(chǎn)存儲的性能是等同的,對成本的要求極高,如圖4所示:
由于客觀條件的限制,CDP技術在推出多年之后仍然沒有取代傳統(tǒng)備份技術。它在中小企業(yè)IT系統(tǒng)中使用較廣泛,但較少在大型企業(yè)的核心系統(tǒng)中使用。
3.3 Oracle零數(shù)據(jù)丟失一體機
Oracle零數(shù)據(jù)丟失一體機是Oracle于2015年推出的最新技術,它能實現(xiàn)數(shù)據(jù)庫的永遠增量方式備份,結合日志傳輸技術,數(shù)據(jù)丟失量可以達到秒級。Oracle零數(shù)據(jù)丟失一體機技術可極大地減少備份時間,有效解決了傳統(tǒng)備份軟件的備份時間窗口等問題,如圖5所示:
但從數(shù)據(jù)恢復的角度來看,它仍然沒有解決恢復時效問題,同樣需要將數(shù)據(jù)從一體機內恢復到生產(chǎn)環(huán)境,如圖6所示。并且它只支持Oracle數(shù)據(jù)庫,不能支持其他數(shù)據(jù)庫、文件系統(tǒng)和虛擬機等。
3.4 Oracle數(shù)據(jù)庫復制技術
數(shù)據(jù)庫復制技術(如Oracle的Data Guard)是通過實時傳輸數(shù)據(jù)庫日志實現(xiàn)數(shù)據(jù)復制的。這種技術主要用于防止災難事件發(fā)生,即生產(chǎn)數(shù)據(jù)庫因災難事件(如火災、存儲宕機等)發(fā)生停機,目標端的數(shù)據(jù)庫可以快速接管業(yè)務。其原理如圖7所示。
數(shù)據(jù)庫復制技術需要在目標端數(shù)據(jù)庫上不斷請求日志,從而盡可能地使目標端生產(chǎn)庫和生產(chǎn)數(shù)據(jù)庫保持一致。因此,這種技術并不能應對邏輯錯、人為錯等需要恢復到歷史時間點狀態(tài)的錯誤。
3.5 CDM技術
如圖8所示,CDM(Copy Data Management,復制數(shù)據(jù)管理)技術是一種創(chuàng)新型的備份技術。Gartner認為在兩個場景中可以提供非常高效的解決方案:一是備份恢復的現(xiàn)代化;二是開發(fā)測試環(huán)境的快速搭建。
CDM的核心技術是備份出來的數(shù)據(jù)格式是原始格式,即備份數(shù)據(jù)可以直接掛載給目標服務器實現(xiàn)分鐘級恢復,和數(shù)據(jù)量的大小無關,這是和傳統(tǒng)備份軟件最大的區(qū)別。由于備份數(shù)據(jù)是原始數(shù)據(jù)格式,并且存放在磁盤上,所以它可以根據(jù)新的增量數(shù)據(jù)和已有的全備數(shù)據(jù),在備份系統(tǒng)內合成新的全量備份,從而實現(xiàn)永遠增量備份。
由于CDM本身是備份技術,所以它可以應對各種宕機場景,包括邏輯錯、人為錯等大概率小事故。增量備份和增量合成功能可以極大地降低備份窗口以及備份時系統(tǒng)資源的消耗。并且它還可以實現(xiàn)分鐘級的恢復時間,滿足業(yè)務對恢復的時間要求。
3.6 小結
綜上所述,當出現(xiàn)業(yè)務需求但生產(chǎn)系統(tǒng)出現(xiàn)問題時,可以快速實現(xiàn)恢復,包括邏輯錯、人為錯等大概率小事故。各技術對業(yè)務保護的滿足程度具體如下:
(1)傳統(tǒng)備份軟件技術:在大數(shù)據(jù)量情況下,備份、恢復時間都過長。
(2)CDP技術:可以實現(xiàn)業(yè)務需求,但對生產(chǎn)系統(tǒng)影響大。
(3)Oracle零數(shù)據(jù)丟失一體機:永遠增量備份功能可以解決備份窗口問題,但恢復時間過長。
(4)Oracle數(shù)據(jù)庫復制技術:主要實現(xiàn)容災功能,無法解決邏輯錯、人為錯等問題。
(5)CDM技術:可以實現(xiàn)業(yè)務需求、分鐘級恢復、永遠增量備份功能解決備份窗口問題。由于它是備份技術,因此對生產(chǎn)系統(tǒng)的影響小。
4 項目實踐
某運營商IT中心通過對上述各種數(shù)據(jù)保護技術綜合分析后,選擇了CDM技術進行應用,在開展嚴謹?shù)腜OC測試后才進行選型、建設。系統(tǒng)上線后,實現(xiàn)的效果符合預期。
4.1 CDM實踐方案工作原理
如圖9所示,在恢復過程中,當需要恢復某個時間點的備份時,CDM主機會在系統(tǒng)內部做一個指針式快照,然后把這個快照掛載給需要恢復的主機,恢復速度在分鐘級別(當某份數(shù)據(jù)要恢復到多臺主機時,CDM主機會做多份快照,多份快照可同時掛載)。在做歸檔時,若數(shù)據(jù)需要保存的時間長,CDM主機可以把近線備份以外的數(shù)據(jù)通過重刪的方式備份進重刪池。
4.2 CDM方案備份實踐效果
備份系統(tǒng)第一次備份時需要進行全量備份,后續(xù)的備份每次只需要進行增量備份,系統(tǒng)內部再自動合成新的全量數(shù)據(jù),這樣既可以極大減少備份時間,又可以減少數(shù)據(jù)備份時對系統(tǒng)資源的消耗。項目負責人將備份頻率增加到間隔4 h做一次全量備份,并對兩個Oracle數(shù)據(jù)庫進行了備份,實際的數(shù)據(jù)量分別為3.63 TB(A庫)、
7.51 TB(B庫)。
3.63 TB數(shù)據(jù)量的Oracle數(shù)據(jù)庫備份效果如表2所示,增量備份和合成的平均時間為00:11:22。
7.51 TB數(shù)據(jù)量的Oracle數(shù)據(jù)庫備份效果如表3所示,增量備份和合成的平均時間為00:20:44。
4.3 CDM方案恢復實踐效果
所有合成后的備份數(shù)據(jù)都可以掛載給服務器,直接恢復成數(shù)據(jù)庫,恢復效果達到規(guī)劃要求??焖倩謴拖到y(tǒng)實現(xiàn)架構如圖10所示。
對A、B兩個數(shù)據(jù)庫進行全量數(shù)據(jù)的快速恢復測試,具體如表4所示。
對多個Oracle RAC數(shù)據(jù)庫統(tǒng)一一個快速恢復系統(tǒng)實現(xiàn)保護,可配置一個恢復驗證服務器,用于備份數(shù)據(jù)的驗證。在業(yè)務停機或需恢復事件發(fā)生時,主要突發(fā)情況以及應對處理措施如下:
(1)整個機房出現(xiàn)問題:采用容災系統(tǒng)進行切換。
(2)數(shù)據(jù)庫停機(存儲損壞、數(shù)據(jù)庫Bug、邏輯錯等):將備份數(shù)據(jù)掛載到生產(chǎn)服務器,實現(xiàn)快速恢復。故障解決后,將數(shù)據(jù)從快速恢復系統(tǒng)遷移到生產(chǎn)存儲。
(3)數(shù)據(jù)庫服務器停機(RAC或2節(jié)點服務器同時損壞等):將備份數(shù)據(jù)庫掛載到恢復驗證服務器,接管業(yè)務。故障恢復后,將數(shù)據(jù)庫遷移到原生產(chǎn)數(shù)據(jù)庫環(huán)境。
(4)數(shù)據(jù)庫沒停機,但出現(xiàn)邏輯錯和人為錯:把錯誤發(fā)生前一時間的備份數(shù)據(jù)Mount給恢復驗證服務器,將所需數(shù)據(jù)export,在import到生產(chǎn)數(shù)據(jù)庫。若故障時間點無法確定,可以通過多次Mount數(shù)據(jù)庫的方式人為確定。由于每次Mount時間短,因此對故障時間點的確定非常有幫助。
以上分類覆蓋了各種事件造成業(yè)務停機的情況,所有情況都可以在半小時內恢復業(yè)務。通過本次項目驗證,CDM技術完全可以達到業(yè)務系統(tǒng)半小時的RTO要求。
5 結束語
IT系統(tǒng)的數(shù)據(jù)保護需要根據(jù)業(yè)務的需求和實際面臨的風險進行設計。在這個項目中,某運營商IT中心根據(jù)業(yè)務系統(tǒng)的自身特點,綜合分析對比各類備份技術,并結合新技術進行研究和驗證,最終采用基于CDM的數(shù)據(jù)保護及恢復技術應用到生產(chǎn)系統(tǒng)中,有效地彌補了原有容災備份技術的不足,將生產(chǎn)系統(tǒng)的容災能力提升到一個新的水平。在現(xiàn)階段,某運營商IT中心需要更加廣泛地使用CDM技術保護業(yè)務系統(tǒng),從而全面提升生產(chǎn)系統(tǒng)的容災能力。
參考文獻:
[1] 康春榮,蘇武榮. 數(shù)據(jù)安全項目案例:存儲與備份SAN與NAS容錯與容災[M]. 北京: 科學出版社, 2004.
[2] 韓松峰,常俊超. 數(shù)據(jù)恢復技術與應用[M]. 北京: 電子工業(yè)出版社, 2014.
[3] 卜海兵,徐明遠,楊宏橋. 數(shù)據(jù)存儲、恢復與安全應用實踐[M]. 北京: 中國鐵道出版社, 2012.
[4] Kelley Okolita. 構建企業(yè)級業(yè)務連續(xù)性規(guī)劃[M]. 于天,等譯. 北京: 機械工業(yè)出版社, 2015.
[5] GB/T 29765-2013. 信息安全技術 數(shù)據(jù)備份與恢復產(chǎn)品技術要求與測試評價方法[S]. 2013.
[6] 林偉松. 數(shù)據(jù)備份與容災技術在電信計費系統(tǒng)中的應用[D]. 北京: 北京郵電大學, 2007.
[7] 王銳. 四川聯(lián)通遠程容災備份系統(tǒng)的規(guī)劃與建設[D]. 成都: 電子科技大學, 2007.
[8] 宮婷. 計算機數(shù)據(jù)庫的備份與恢復技術研究[J]. 計算機光盤軟件與應用, 2013(21): 155.
[9] 吳佳. 備份服務器的關鍵技術研究和實現(xiàn)[D]. 武漢: 華中科技大學, 2008.
[10] 張云帆. Oracle數(shù)據(jù)庫備份與恢復策略[J]. 計算機工程, 2009(15): 85-87.