摘要:設計并實現了一種遠程備份/恢復容災系統——DRC。該系統采用本地災備網關作為中間介質,實現本地高速鏡像;通過鏡像遠程設備到本地,實現遠程數據備份;使用實時狀態監控和系統重建技術完成系統的自動恢復,以達到容災的目的。另外,該系統支持多種操作系統和數據庫;遠程備份和恢復工作采取用戶控制和系統自動實現兩種方式;該系統還提供了配置管理工具,便利遠程管理。
關鍵詞:遠程備份;恢復;鏡像;實時監控
中圖法分類號:TP393文獻標識碼:A
文章編號:1001-3695(2006)09-0104-03
計算機和網絡的迅速發展,不斷推進社會信息化進程,數據的重要性愈發引起相關人士重視。而信息系統面臨地震、洪水、戰爭等諸多災難性的風險和威脅,如何建立容災系統,保證數據的安全穩定成為迫切需要解決的問題[1]?,F有的許多容災方案中,或需要專線或光纖通信等特殊設備[3],或對原系統正常運行影響較大,這無疑增加了擁有成本,且系統性能也不高[1]。
針對上述情況,本文實現了一種遠程備份/恢復容災系統——DRC(DisasterRecoveryCenter),該系統具有對數據進行遠程備份和恢復的功能。在本地高速鏡像數據,對本地系統原有速率影響極小,保證了系統高性能;實時監控系統狀態,具有對系統進行遠程迅速恢復的功能,保證系統穩定性;支持多種操作系統和數據庫,保證了系統的跨平臺特性,應用市場極大;實現系統的自動備份和恢復,減少管理負擔,并增強系統穩定性;提供可視化客戶界面,可方便直觀地進行遠程管理系統;不需額外硬件設備,降低系統成本。
1體系結構
DRC系統從物理上可分為四大部分,即客戶端、應用服務器群、災備網關、備份服務器群。其系統體系結構如圖1所示。
應用服務器群可包含多臺應用服務器,與災備網關位于本地;備份服務器群也可包含多臺備份服務器,位于遠程。系統可將一臺或多臺本地應用服務器的數據,通過災備網關,遠程備份到一臺或多臺遠程備份服務器;或者當服務器數據遭到破壞時,系統采取相應的恢復策略,自動重建系統,迅速恢復數據,保證本地應用服務器群和遠程備份服務器群數據的完好性。這一備份/恢復過程,由客戶端通過可視化界面方便直觀地來配置、管理和控制。
2系統設計和實現
2.1核心設計思想
2.1.1設備映像
將一臺作為目標端主機的設備,映像到另一臺作為發起端主機,使訪問發起端映像設備如同訪問目標端設備。此設計采用將命令和數據封裝發送再抽取執行技術,即發起端將命令和數據封裝到TCP/IP包中再通過網絡轉發,目標端收到TCP/IP包后,將命令和數據抽取還原后再執行,然后將需返回的命令和數據封裝到TCP/IP包中再傳送回發起端,發起端收到后再抽取執行。整個過程對用戶透明,因此在發起端映像設備上執行任何操作,就如在目標端設備上執行相同操作。
2.1.2設備鏡像
使主機上兩個設備互為鏡像,以數據冗余為代價來提高系統穩定性,即向一個設備中寫入數據時,會在兩個設備上存儲相同的數據。若一設備出現故障,系統會自動切換到另一設備繼續運行,將新的數據寫入正常工作的設備,壞設備被替換后,數據會自動拷貝到新設備中。
2.1.3本地高速鏡像
此設計采用遠程寫緩存方法,以災備網關作為中間件,利用內部網絡高速穩定性能,先將數據從本地應用服務器高速鏡像到同樣位于本地的災備網關,進入數據緩存隊列,再通過Internet異步備份到遠程備份服務器。從而使系統在進行遠程數據備份時,本地應用服務器性能不受Internet網絡狀況的影響,保證系統性能穩定。
2.1.4系統自動重建
系統運行后臺進程,實時監控系統狀態。當數據遭到破壞時,針對故障狀態采取不同恢復策略,控制數據流方向,自動進行系統重建。
2.2系統總體設計思想
結合上述幾種思想,將備份設備從備份服務器遠程映像到災備網關,再將災備網關上的設備映像到應用服務器。當應用服務器的映像設備有新內容寫入時,災備網關上對應設備也同時寫入新內容,并將此內容高速寫入災備網關緩沖數據隊列,然后在Internet網絡正常情況下,取出數據,寫入災備網關上,從遠程備份服務器映像來的設備,從而實現遠程數據備份。在應用服務器將設備組成鏡像,提高系統穩定性。在后臺實時監控系統狀態,通過系統自動重建,實現數據恢復功能。
2.3系統模塊設計
2.3.1模塊結構
DRC系統按功能的不同劃分為五個模塊:客戶端管理模塊、設備鏡像模塊、設備映像模塊、內核模塊、代理模塊。
系統的模塊結構如圖2所示。
2.3.2客戶端管理模塊
客戶端管理模塊提供系統管理的可視化界面,它包含配置、狀態監控和運行控制三個子模塊。配置子模塊對應用服務器、災備網關和備份服務器進行配置管理,使其相關設備具有數據備份/恢復關系;監控子模塊顯示從本地應用服務器、災備網關及遠程備份服務器的代理模塊中返回的系統狀態信息,對系統運行狀態進行有效監控;運行控制子模塊通過災備網關上代理模塊中的備份和恢復控制子模塊,調用內核模塊,實現了用戶控制系統數據備份和恢復的功能。此外通過實時監控體系狀態,系統也實現了不需用戶干涉的數據自動備份和恢復功能。
2.3.3設備鏡像模塊和設備映像模塊
應用服務器和災備網關均包含設備鏡像模塊。設備鏡像模塊采用設備鏡像技術,使主機上兩個設備互為鏡像。設備映像模塊分布于應用服務器、災備網關和備份服務器,分為發起端和目標端兩種類型。采用設備映像技術,實現訪問發起端映像設備如同訪問目標端設備的功能。
系統初始化時用設備鏡像模塊和映像模塊建立各主機上各設備的邏輯關系,如圖3所示,圖中單線箭頭表示系統進行遠程數據備份時數據流的方向。
首先備份服務器的設備映像模塊,作為目標端,與災備網關上作為發起端的設備映像模塊合作,將備份服務器設備S1映像為災備網關的設備S2,記作S2>S1;再使災備網關上作為目標端的設備映像模塊,與應用服務器的作為發起端的設備映像模塊相合作,將災備網關設備R1映像為本地應用服務器的設備R2,記作R2>R1;在本地應用服務器上,通過設備鏡像模塊,使設備R2和R0互為鏡像,即R0=R2(未出現硬盤故障時);若在災備網關上,將設備R1的數據備份到設備S2,記作R1>S2,則相當于將本地應用服務器上設備R2的數據,遠程備份到了備份服務器上的設備S1,即有R2>S1,推導過程為:由R2>R1,S2>S1,R1>S2,可推出R2>S1。又因為R0=R2(未出現硬盤故障時),所以可得R0>S1,即訪問本地應用服務器的設備R0,如同訪問遠程服務器的設備S1。將具有鏡像或映像關系的多個設備記為一個任務組G,即G={R0∪R2∪R1∪S2∪S1},各主機上多個設備間的邏輯關系如圖3所示。
2.3.4內核模塊
內核模塊位于災備網關,包含數據存儲子模塊和數據提取子模塊。設備間邏輯關系如圖4所示。數據存儲子模塊檢測到設備R1中有新數據時,便將數據迅速存入緩沖隊列,然后數據提取模塊從緩沖隊列中提取數據,將數據存入與遠程備份服務器的設備S1具有映像關系的設備S2中,從而實現數據的遠程備份。
2.3.5代理模塊
應用服務器和備份服務器的代理模塊包含監控子模塊,監控本機設備狀態和系統運行狀態,并將監控結果返回災備網關。
災備網關的代理模塊包含配置子模塊、監控子模塊、數據鏡像控制子模塊和數據恢復控制子模塊。配置子模塊在客戶管理端的配置子模塊控制下,向設備映像模塊提供參數,配置應用服務器、災備網關和備份服務器上的設備,使多個設備具有鏡像關系。
災備網關的監控子模塊,監控網關設備運行狀態,并通過網絡通信,獲取應用服務器和備份服務器上各設備狀態,并將狀態值顯示到用戶管理端的可視化界面上。當監測到系統故障發生時,恢復控制子模塊針對故障原因和狀態,采取不同的恢復策略重建數據。系統故障可分為六種情況:①本地應用服務器故障;②災備網關故障;③遠程備份服務器故障;④本地應用服務器與災備網關故障;⑤本地應用服務器與遠程備份服務器故障;⑥災備網關與遠程備份服務器故障。
系統恢復前,必須保證設備具有如圖3所示的邏輯關系?;謴蜁r,需針對故障狀態確定數據的恢復方向,采取不同的恢復策略。當出現上段所述的第②、第③或第⑥種故障時,因本地應用服務器數據完好,將其作為標準原始數據進行恢復,數據流方向如圖4所示。而當本地應用服務器數據遭到破壞后,需判斷災備網關和遠程備份服務器數據的完好性,確定原始數據,再恢復到數據遭到破壞的主機上。例如本地應用服務器與災備網關同時出現故障時,系統恢復方向為:從遠程備份服務器恢復到災備網關,再恢復到本地應用服務器。
3系統的性能測試和分析
在一系統上搭建了遠程備份/恢復環境組成DRC系統后,通過100Mbps的網速測試DRC系統的性能,并將測試結果和原系統在沒有搭建容災環境下的性能測試結果進行對比。測試環境中,本地應用服務器、遠程備份服務器的CPU和內存均為1.70GHz與128MB,而災備網關為504MB,所有的主機均使用RealtekRTL8139的網卡。
圖5將本地應用服務器在原系統和DRC容災系統中的存儲吞吐率作出對比。
從試驗結果可看出,DRC系統比原系統的數據存儲吞吐率下降不足15%,并且隨著存儲數據量的增大,數據吞吐率下降百分比保持穩定,始終不超過15%,由此可見DRC系統的遠程實時數據備份/恢復對原系統的性能影響極小。
4結束語
本文設計并實現一種遠程備份/恢復容災系統DRC,實現了基于網絡的遠程數據備份和恢復,保證了數據安全,同時也使系統的穩定性得到了保證。本地高速數據鏡像的設計,使整個系統的性能得到了很大的提高;提供配置管理工具,方便直觀遠程管理系統;整個系統不需額外硬件設備,大大降低成本。此系統在數據容災的應用中有著積極意義。
參考文獻:
[1]李濤.網絡安全概論[M].北京:電子工業出版社,2004.
[2]LloydScottJ,PeckhamJoan,etal.ROBIB:AnEconomicandEfficienSolutionforRealtimeOnlineRemoteInformationBackup[J].JournalofDatabaseManagement,2003,14(3):5673.
[3]Bryson,KwekuMuata,etal.UsingFormalMS/ORModelingtoSupportDisasterRecoveryPlanning[J].EuropeanJournalofOperationalResearch,2002,141(3):679688.
[4]BergDaniel,EinspruchNormanG.TheServiceRoleofGovernmentinStreamliningOpportunitiesforConstructionPermittinginDisasterRecovery[J].TechnologyandManagement,2004,5(3):312315.
[5]HeJuhou,LiYou,LiWeihua.AutomaticrecoverySecurityModelBasedonAlliedBackup[J].JournalofNorthwesternPolytechnicalUniversity,2004,22(2):176179.
作者簡介:
劉莎(1981),女,碩士研究生,主要研究方向為網絡安全與人工智能;李濤(1965),男,教授,博導,主要研究方向為網絡安全與人工智能;趙奎(1972),男,博士研究生,主要研究方向為網絡安全與人工智能;郭京(1981),男,碩士研究生,主要研究方向為網絡安全與人工智能;王丹丹(1980),女,碩士研究生,主要研究方向為網絡安全與人工智能;王麗輝(1981),女,碩士研究生,主要研究方向為網絡安全與人工智能。