陳世亮
隨著企業(yè)IT系統(tǒng)的建設,決策者已經(jīng)意識到不能依賴單一的云環(huán)境,需要建設多云環(huán)境來承擔技術的風險。多云建設帶來容災的挑戰(zhàn),如何建設完整的容災管理系統(tǒng),統(tǒng)一進行容災調(diào)度,來提升企業(yè)抵御多云下防范風險的能力。本文在分析某公司現(xiàn)有環(huán)境下,基于業(yè)務連續(xù)性針對其業(yè)務和IT系統(tǒng)特點,提出了一種適應該類公司業(yè)務系統(tǒng)的容災管理系統(tǒng)建設方法。
某運營中心承接集團各類營銷渠道的規(guī)劃、建設、日常運營以及推廣拓展等工作。考慮到業(yè)務系統(tǒng)的健壯性,在北京、廣州和上海建設了3個云資源池,分別部署不同的業(yè)務。隨著業(yè)務的發(fā)展,3個云資源池陸續(xù)出現(xiàn)一些運營上的問題,主用系統(tǒng)出現(xiàn)故障后,無法快速地切換到備用系統(tǒng),而且從故障出現(xiàn)到故障判斷、決策,準備切換到真正切換耗時良久,導致業(yè)務長時間中斷,對生產(chǎn)經(jīng)營產(chǎn)生了嚴重的影響,造成了重大經(jīng)濟損失。為了解決快速切換問題,運營中心提出容災管理系統(tǒng)的建設需求,目標是解決由于故障導致長時間業(yè)務中斷問題,以實現(xiàn)快速切換業(yè)務,提升業(yè)務連續(xù)性。
對運營中心進行調(diào)研分析,IT系統(tǒng)現(xiàn)狀如下:在上海云資源池部署互聯(lián)網(wǎng)卡系統(tǒng)、自營支付系統(tǒng)、網(wǎng)廳系統(tǒng)以及實名系統(tǒng)等,在廣州和北京部署了部分業(yè)務系統(tǒng)如訂單查詢、系統(tǒng)報竣等。在廣州和北京部署了網(wǎng)廳、互聯(lián)網(wǎng)卡以及自營支付和實名等系統(tǒng)的備用系統(tǒng),部分查詢功能在這2個節(jié)點實現(xiàn)。在資源池之間已經(jīng)建立了數(shù)據(jù)同步機制,在上海和廣州之間搭建了基于存儲的復制體系,核心數(shù)據(jù)庫可通過存儲進行同步,在上海和北京之間搭建了基于OGG的數(shù)據(jù)庫復制體系,核心數(shù)據(jù)庫通過日志方式同步。應用系統(tǒng)之間尚未建立同步機制,采用同步部署的方式以及版本發(fā)布同時進行的方式保持數(shù)據(jù)一致。
基于上述IT現(xiàn)狀,分析后可知3個資源池之間已經(jīng)具備了應用切換的基礎,但要實現(xiàn)快速切換還需要增加應用之間的同步,通過應用復制軟件將上海的文件同步復制到廣州和北京,滿足三朵云之間的數(shù)據(jù)一致需求,考慮到廣州網(wǎng)絡條件更好,優(yōu)先切換到廣州。根據(jù)現(xiàn)狀,制定容災系統(tǒng)建設的思路:將部署在上海的自營支付系統(tǒng)、互聯(lián)網(wǎng)卡系統(tǒng)和網(wǎng)廳系統(tǒng)納入到容災管理系統(tǒng),通過容災管理系統(tǒng)進行DNS管理和切換管理,配合災難恢復預案、災備演練方案以及容災運營方案,實現(xiàn)上海出現(xiàn)故障后,能夠自動快速地將業(yè)務切換到廣州或者北京,RPO和RTO都達到30 min以內(nèi)。運營中一旦上海出現(xiàn)災難,則采用系統(tǒng)閾值判斷或者通過人工干預方式啟動切換系統(tǒng),通過調(diào)用切換引擎驅動應用系統(tǒng)和數(shù)據(jù)庫的切換,進行相應的配置更改和通報,實現(xiàn)業(yè)務系統(tǒng)的完全切換,達到業(yè)務連續(xù)的目的。
根據(jù)上述思路,構建容災管理系統(tǒng)功能體系,包括預案管理、應急管理、切換管理及演練管理等主要功能以及關聯(lián)關系管理、配置管理、日志管理及業(yè)務驗證等輔助功能。其中預案管理用于災難恢復預案的統(tǒng)一管理,用戶采用拖拽方式將文本預案的各個環(huán)節(jié)錄入到系統(tǒng),形成電子預案。組織結構和流程等因素將綁定到流程中,充分降低預案管理的工作量、難度和復雜度。預案管理實現(xiàn)的功能包括預案控制、模板控制、流程關聯(lián)以及報表關聯(lián)等。
演練管理用于保證業(yè)務連續(xù)性計劃和預案可以得到持續(xù)、全面的檢驗。通過演練,各部門熟悉緊急事件處理的過程和方法以及部門人員間的分工和協(xié)作機制,從而保證業(yè)務連續(xù)性計劃可以長期有效的執(zhí)行。根據(jù)演練的目的不同,有桌面演練、模擬演練及實戰(zhàn)演練等不同的方式。演練管理實現(xiàn)功能包括演練流程管理、腳本管理、過程管理及大屏展示等。
切換管理則是以任務控制模塊為核心,構建高度可伸縮的、具備容錯性的切換管理自動化引擎。引擎構建后根據(jù)預先定制的場景和切換步驟對整個系統(tǒng)切換做自動處理,以不同用戶在不同主機系統(tǒng)上執(zhí)行切換指令來實現(xiàn)系統(tǒng)的自動化切換。切換自動化管理包括腳本管理、流程設計和部署、流程關聯(lián)以及腳本關聯(lián)等。
應急管理是對突發(fā)事件發(fā)生后所采取的措施和行動,是確定是否進行災備切換的前期過程,包括事件上報、災難預警、災害評估和災難宣告等步驟。當發(fā)生災難事件時,在事件上報模塊中上報,接著在災難預警和災害評估中對此事件進行分析,最終在災難宣告中確定是否進行災備切換。
運營中心在3個云資源池之間部署了容災管理系統(tǒng)并根據(jù)業(yè)務系統(tǒng)和組織架構的特性,對容災管理系統(tǒng)進行配置。首先,配置容災管理的崗位、角色和權限,將主機、存儲及網(wǎng)絡等基礎信息錄入到系統(tǒng)。其次,在預案管理模塊中配置了3個電子預案:自營支付系統(tǒng)切換預案、互聯(lián)網(wǎng)卡系統(tǒng)切換預案以及網(wǎng)廳系統(tǒng)切換預案;隨后,梳理3個業(yè)務系統(tǒng)的啟動流程,把應用的啟停、數(shù)據(jù)庫的啟停、數(shù)據(jù)庫的連接、存儲的掛載、網(wǎng)絡的切換以及DNS域名解析的修改等各種腳本配置到切換管理的切換引擎中,通過切換引擎將腳本和各業(yè)務系統(tǒng)主機進行關聯(lián)綁定,同時將組織、角色和切換步驟進行綁定。此外還有應急管理、日志管理以及報表管理的相關配置。
流程配置后,可以進行模擬演練和實戰(zhàn)演練。模擬演練時將關聯(lián)的腳本進行失效處理,主要檢查流程是否正確。經(jīng)過多次演練,可以確保規(guī)劃的演練和切換流程符合預案。模擬演練成功后進行實戰(zhàn)演練,實戰(zhàn)演練中,首先模擬生產(chǎn)中心故障,停止生產(chǎn)系統(tǒng)服務。容災管理系統(tǒng)檢測到故障后自動啟動廣州的切換模塊,進行整體切換并修改域名解析;然后通過業(yè)務驗證模塊進行自動驗證,整個過程在指揮中心的大屏上展示。在實際演練中,整個切換步驟在10 min左右,加上應急評估和決策時間,基本控制RTO在30 min以內(nèi),達到了系統(tǒng)建設的目的。
實踐證明,在多云環(huán)境下部署自動的容災管理系統(tǒng)可以對業(yè)務系統(tǒng)進行統(tǒng)一管理,一旦某個節(jié)點發(fā)生故障后,可通過系統(tǒng)中一系列預置的流程和方法對業(yè)務系統(tǒng)進行自動處理,達到業(yè)務連續(xù)的目的。