王景艷,劉 洋
(中國鐵路信息科技集團有限公司 運行維護與生產(chǎn)調(diào)度部,北京 100844)
中國鐵路主數(shù)據(jù)中心是鐵路一體化信息集成平臺的核心,承擔著鐵路信息資源服務、關(guān)鍵業(yè)務計算、數(shù)據(jù)存儲備份等重要任務[1]。主數(shù)據(jù)中心基礎(chǔ)設(shè)施基于云平臺搭建,實現(xiàn)重要信息資源的集中存儲、管理和綜合利用,確保核心業(yè)務應用系統(tǒng)的安全性、可靠性和連續(xù)性[2]。為保證業(yè)務連續(xù)性要求和信息系統(tǒng)合規(guī)性要求,鐵路災備中心即將投入建設(shè),如何利用基礎(chǔ)設(shè)施云平臺滿足鐵路應用系統(tǒng)災備需求是亟待研究解決的重要課題。
災備技術(shù)自上世紀70 年代起源,經(jīng)歷了信息系統(tǒng)備份、災難恢復規(guī)劃(DRP)、業(yè)務連續(xù)性規(guī)劃(BCP)3 個階段,關(guān)注重點由備份技術(shù)本身逐漸發(fā)展為生產(chǎn)中心保障,再到業(yè)務保障和恢復。隨著業(yè)務連續(xù)性要求的不斷提升,越來越多的行業(yè)加強了災備技術(shù)的研究與災備中心的建設(shè)[3-4]。鐵路災備技術(shù)研究起步較早,目前12306 互聯(lián)網(wǎng)售票和電子支付應用已完成雙活中心建設(shè),貨運票據(jù)電子化應用雙中心也已上線,實現(xiàn)跨不同數(shù)據(jù)中心的高可用[5]。傳統(tǒng)災備技術(shù)(如數(shù)據(jù)復制技術(shù)、雙活技術(shù)、業(yè)務切換等)已在鐵路信息系統(tǒng)災備建設(shè)中有較為成熟的應用經(jīng)驗[6]。在云環(huán)境下,大量災備新技術(shù)逐漸取代傳統(tǒng)技術(shù),如IP 存儲網(wǎng)絡替代FC 存儲網(wǎng)絡,通過域名系統(tǒng)(DNS)實現(xiàn)大二層網(wǎng)絡[7];通過智能DNS 實現(xiàn)應用雙活,滿足基于域名的災備切換需求[8];使用虛擬機、容器代替實體機,實現(xiàn)整體系統(tǒng)災備和災備調(diào)度[9];基于虛擬機的CDP 技術(shù),實現(xiàn)數(shù)據(jù)同步和災備等[10]。
本文主要研究鐵路主數(shù)據(jù)中心適用的災備關(guān)鍵技術(shù),并根據(jù)鐵路應用系統(tǒng)特點提出災備等級劃分建議。
數(shù)據(jù)復制技術(shù)由下至上可分為存儲和操作系統(tǒng)層、數(shù)據(jù)庫層、應用層,如圖 1 所示。
圖1 數(shù)據(jù)復制技術(shù)層次劃分
(1)基于存儲和操作系統(tǒng)層的數(shù)據(jù)復制:基于系統(tǒng)底層物理卷、數(shù)據(jù)塊,通過存儲硬件、虛擬化存儲等實現(xiàn),與上層的應用和邏輯無關(guān)。
(2)基于數(shù)據(jù)庫層的數(shù)據(jù)復制:大部分數(shù)據(jù)庫提供數(shù)據(jù)復制工具,實現(xiàn)數(shù)據(jù)的物理復制和邏輯復制,主要有日志復制重做、日志交易解析復制重做等幾種方式。
(3)基于應用層的數(shù)據(jù)復制:通過雙寫實現(xiàn),可根據(jù)需要采用強一致性、弱一致性、最終一致性設(shè)計。
(4)數(shù)據(jù)備份:利用備份軟件實現(xiàn)數(shù)據(jù)復制,復制成本低,可節(jié)約傳輸帶寬和存儲空間;其缺點是RTO 相對較高,一般作為最后的恢復手段。
應用系統(tǒng)的雙數(shù)據(jù)中心部署通常有4 種模式:主備、互備、雙活、準雙活。
(1)主備模式:只有生產(chǎn)中心承擔業(yè)務,災備中心作為生產(chǎn)中心的備份;當生產(chǎn)中心出現(xiàn)故障時,災備中心接管生產(chǎn)中心的業(yè)務,如圖2a 所示。
(2)互備模式:主備中心互為備份,生產(chǎn)中心和災備中心可同時承擔業(yè)務,避免浪費災備中心資源;當一個中心故障時,其業(yè)務轉(zhuǎn)移至另一中心,如圖2b 所示。
(3)雙活模式:雙活應用部署在兩個數(shù)據(jù)中心/ 機房,同時在線運行,用戶請求通過負載均衡設(shè)備分配到不同數(shù)據(jù)中心的應用服務器,兩中心的數(shù)據(jù)庫實時同步;當一個中心出現(xiàn)故障時,通過負載均衡將請求切換到另一中心,如圖2c 所示。
(4)準雙活模式:與雙活模式的主要區(qū)別是,不進行兩中心的數(shù)據(jù)庫實時同步,應用服務器與指定中心的數(shù)據(jù)庫進行實時數(shù)據(jù)交換,兩中心的數(shù)據(jù)庫定期同步,如圖2d 所示。
圖2 數(shù)據(jù)中心主備/雙活部署模式
這4 種部署模式中,雙活模式可最大程度保障業(yè)務連續(xù)性。采用雙活技術(shù)建設(shè)容災系統(tǒng),涉及接入層、應用層、數(shù)據(jù)庫層、存儲層和網(wǎng)絡層的改造,各層次中均有相應的解決方案。
(1)接入層雙活一般可采用DNS 和全局負載均衡(GSLB)機制構(gòu)建接入層雙活架構(gòu),根據(jù)后端服務器負載和鏈路狀況實現(xiàn)不同中心間流量調(diào)配。
(2)應用層雙活需要在每個數(shù)據(jù)中心分別部署一套完整的且規(guī)模相同的服務和應用,平時每個中心均為生產(chǎn)中心,具備接管其它中心業(yè)務的能力。
(3)數(shù)據(jù)庫層包含物理數(shù)據(jù)庫和內(nèi)存數(shù)據(jù)庫兩類,物理數(shù)據(jù)庫層可采用Active-Standby、Active-Active 或第三方數(shù)據(jù)復制軟件實現(xiàn),內(nèi)存庫雙活集群部署可采用讀寫分離、讀寫并行、線性拆分或分布式集群4 種模式實現(xiàn)。
(4)存儲層雙活實現(xiàn)方式包括基于遠程卷管理軟件的虛擬化、基于存儲網(wǎng)關(guān)虛擬化、基于存儲自身卷鏡像3 種技術(shù)。
1.3.1 業(yè)務切換
業(yè)務切換技術(shù)主要包括接入層切換、應用系統(tǒng)間/應用系統(tǒng)內(nèi)切換和數(shù)據(jù)復制切換。
(1)接入層切換:在網(wǎng)絡接入層面將源端業(yè)務切換到備端數(shù)據(jù)中心,以保障業(yè)務的連續(xù)性,包括網(wǎng)絡切換、安全切換、負載均衡切換。
(2)應用系統(tǒng)間/應用系統(tǒng)內(nèi)切換:在災備切換過程中,應用系統(tǒng)之間、應用系統(tǒng)內(nèi)子系統(tǒng)之間可能存在技術(shù)依賴關(guān)系,由此產(chǎn)生應用系統(tǒng)間或應用系統(tǒng)內(nèi)不同的災備切換次序要求,災備管理人員需要制定合理的災備切換策略,通過災備切換流程文檔或災備切換管理軟件來設(shè)計實現(xiàn)相應的流程。
(3)數(shù)據(jù)復制切換:許多高可用軟件提供切換能力,支持存儲、存儲網(wǎng)關(guān)、數(shù)據(jù)庫、應用等各層次切換。存儲切換需要先將上層的應用和數(shù)據(jù)庫停止,反轉(zhuǎn)存儲的遠程復制關(guān)系,啟動數(shù)據(jù)庫和應用,向災備中心的存儲寫入數(shù)據(jù),將數(shù)據(jù)同步復制到生產(chǎn)中心的存儲上。數(shù)據(jù)庫切換主要依賴數(shù)據(jù)庫提供的工具,先將生產(chǎn)中心的主數(shù)據(jù)庫降級為備用數(shù)據(jù)庫,再將災備端備用數(shù)據(jù)庫提升為主數(shù)據(jù)庫,反轉(zhuǎn)數(shù)據(jù)庫的遠程復制關(guān)系,將災備中心主數(shù)據(jù)庫生成的日志傳送回生產(chǎn)中心的備用數(shù)據(jù)庫。
1.3.2 故障自愈
云平臺承載的應用災備設(shè)計可以從數(shù)據(jù)中心本地高可用、數(shù)據(jù)中心內(nèi)自愈、跨數(shù)據(jù)中心自愈3 個方面進行考慮。(1)數(shù)據(jù)中心本地高可用:通過集群的保護方式,實現(xiàn)應用在多個宿主機之間故障遷移;當集群中單點故障時,可通過集群高可用實現(xiàn)應用的連續(xù)性保護,即數(shù)據(jù)中心本地高可用。
(2)數(shù)據(jù)中心內(nèi)自愈:通過云服務中心動態(tài)檢查應用健康狀態(tài),當發(fā)現(xiàn)問題時自動創(chuàng)建新的應用容器,同時進行應用內(nèi)部的環(huán)境和應用的配置工作,啟動服務繼續(xù)處理用戶請求;當整個應用集群出現(xiàn)故障時,通過鏡像或容器復制的方式,鏡像管理在同一數(shù)據(jù)中心的其它集群上重新生成應用,繼續(xù)對外提供服務,即數(shù)據(jù)中心內(nèi)自愈。
(3)跨數(shù)據(jù)中心自愈:通過云平臺底層存儲、對象存儲或數(shù)據(jù)復制組件的同步能力,進行鏡像和容器的異地數(shù)據(jù)中心保護;當數(shù)據(jù)中心出現(xiàn)災難時,通過跨數(shù)據(jù)中心鏡像復制的異地保護功能,在另外一個數(shù)據(jù)中心動態(tài)生成相同的應用,繼續(xù)對外提供服務,即跨數(shù)據(jù)中心自愈。
云災備服務基于云的自動化資源管理,通過將災備服務化,提供按需服務和自服務能力,用戶可在云管理平臺上,按需選擇備份、恢復及監(jiān)控服務,根據(jù)使用情況計量和計費。
災難恢復即服務(DRaaS)是一種云計算和備份服務模型,使用云資源來保護應用程序和數(shù)據(jù)免受災難造成的中斷,整合業(yè)務應急、切換演練等容災調(diào)度服務,保障業(yè)務連續(xù)性。通常在應用層實現(xiàn)DRaaS,并與備份即服務(BaaS)集成,提供最佳的托管備份/恢復和災難恢復,如圖 3 所示。
圖3 云災備服務化模型
DRaaS 將資源復制到多個不同站點,以確保在一個或多個站點不可用的情況下進行連續(xù)備份,同時對跨備份域的各數(shù)據(jù)中心實現(xiàn)統(tǒng)一管理,解決傳統(tǒng)災備系統(tǒng)數(shù)據(jù)分散、管理難度大的問題,極大地降低擴容和維護成本。
依據(jù)對數(shù)據(jù)及業(yè)務的保障程度,應用系統(tǒng)災備一般分為3 個級別:數(shù)據(jù)級、應用級和業(yè)務級。
數(shù)據(jù)級災備是建立一個異地災備系統(tǒng)作為本地關(guān)鍵數(shù)據(jù)的可用復制,利用網(wǎng)絡數(shù)據(jù)復制工具,實現(xiàn)生產(chǎn)中心和災備中心之間異步/同步的數(shù)據(jù)傳輸。
應用級災備在數(shù)據(jù)級災備的基礎(chǔ)上,在異地災備中心另外構(gòu)建一套支撐系統(tǒng),具有應用接管能力,減少系統(tǒng)停機時間,提高業(yè)務連續(xù)性。
業(yè)務級災備在信息系統(tǒng)之外的還需考慮業(yè)務因素,包括備用辦公場所、辦公人員等。
應用系統(tǒng)不同災備等級的特點見表 1。為每個業(yè)務系統(tǒng)制定災備方案時,需要先對現(xiàn)有業(yè)務系統(tǒng)進行充分的調(diào)研和業(yè)務影響分析(BIA),確定業(yè)務系統(tǒng)的關(guān)鍵程度以及業(yè)務系統(tǒng)的RTO 和RPO 要求,進而確定業(yè)務系統(tǒng)的災備范圍和方案。表 2 列出不同等級災備要求的應用系統(tǒng)推薦采用的災備方案及應用示例。
表1 數(shù)據(jù)級、應用級、業(yè)務級災備的特點
表2 同城/異地災備模型
對于連續(xù)性需求高的運作類關(guān)鍵應用,其影響范圍大,實時性要求高,RTO 要求小于6 h,不允許數(shù)據(jù)丟失。在同城數(shù)據(jù)中心/機房宜采用雙活技術(shù),將應用系統(tǒng)同時部署在兩個數(shù)據(jù)中心/機房,同時接收用戶讀寫請求,實現(xiàn)數(shù)據(jù)庫雙活和存儲雙活;異地災備中心可使用主備模式,由主數(shù)據(jù)中心負責讀寫數(shù)據(jù),備用數(shù)據(jù)中心提供熱備,兩個數(shù)據(jù)中心之間實現(xiàn)雙向數(shù)據(jù)復制。這類應用雙活架構(gòu)如圖 4 所示。
主備中心均部署應用服務器和數(shù)據(jù)庫,同時承載業(yè)務;服務器和數(shù)據(jù)庫采用集群形式部署,實現(xiàn)本地高可用。應用服務器讀寫本地數(shù)據(jù)庫,主數(shù)據(jù)中心和災備中心庫實現(xiàn)同步雙向數(shù)據(jù)復制,同時各自備份本地數(shù)據(jù)。用戶請求通過CDN 分發(fā)給主數(shù)據(jù)中心和災備中心;當某一中心出現(xiàn)故障時,可通過CDN 迅速將流量切換至另一中心,實現(xiàn)業(yè)務連續(xù)性保護。
云計算等新技術(shù)的日趨成熟為容災備份提供了更多選擇,鐵路信息系統(tǒng)云化也對災備提出新的要求。系統(tǒng)災備方案設(shè)計需考慮云環(huán)境場景,確定合適的災備連續(xù)性保護策略,對云平臺與承載應用進行統(tǒng)一的災備規(guī)劃,并根據(jù)應用的不同災備需求,采用不同災備方案實現(xiàn)連續(xù)性保護。
圖4 運作類應用雙活架構(gòu)
本文根據(jù)鐵路信息系統(tǒng)實際需求,重點探討數(shù)據(jù)復制等4 種災備關(guān)鍵技術(shù),并以典型應用為例,提出適用于不同業(yè)務需求的災備方案。下一步的研究可針對鐵路信息系統(tǒng)未來的“兩地三中心”布局,結(jié)合業(yè)務應用災備需求進一步細化災備方案,深化災難恢復即服務研究,充分發(fā)揮云環(huán)境特性,滿足鐵路業(yè)務系統(tǒng)災備需求。