□ 文 孫淳曄 梁 楊
運營商業(yè)務(wù)支撐系統(tǒng)主要面向客戶服務(wù)和業(yè)務(wù)管理,隨著近年來的不斷建設(shè)、發(fā)展、完善,已從企業(yè)內(nèi)部IT系統(tǒng)轉(zhuǎn)型為開放的移動互聯(lián)網(wǎng)節(jié)點,成為客戶運營的核心和連接數(shù)字化服務(wù)的紐帶,新形勢下的競爭環(huán)境、業(yè)務(wù)、客戶、產(chǎn)品和網(wǎng)絡(luò)的變化都對現(xiàn)有的系統(tǒng)架構(gòu)帶來巨大挑戰(zhàn),實現(xiàn)系統(tǒng)架構(gòu)的穩(wěn)定可靠性,保證業(yè)務(wù)連續(xù)性,以便更好地支撐市場拓展及客戶服務(wù)的發(fā)揮顯得極為必要。
為實現(xiàn)業(yè)務(wù)的連續(xù)性保障,制度上應(yīng)建立風(fēng)險防控手段、應(yīng)急管理辦法措施進行規(guī)避,技術(shù)上通過建立容災(zāi)、備份等應(yīng)急保障實現(xiàn)。本文通過調(diào)研部分省份的容災(zāi)技術(shù)選擇,詳細分析了技術(shù)原理及特點,針對某省公司現(xiàn)網(wǎng)單中心的現(xiàn)狀提出了雙中心建設(shè)方案。
應(yīng)急保障措施按照由低到高程度主要分為雙機、集群、備份、應(yīng)急、容災(zāi)幾個層次。
運營商進行容災(zāi)備份建設(shè)主要出于以下目的:
系統(tǒng)安全運行需求
單生產(chǎn)環(huán)境做到的應(yīng)急保障程度有限,一旦發(fā)生自然災(zāi)害,大面積且長時間停電等不可抗拒因素會造成系統(tǒng)癱瘓,影響公司整體收入,造成嚴(yán)重社會影響。
運營、運維連續(xù)性需求
單生產(chǎn)環(huán)境進行業(yè)務(wù)升級時為避免可能造成的日常營業(yè)影響,通常會采用較短的上線窗口,造成上線范圍有限,此外部分升級還需中斷業(yè)務(wù),影響業(yè)務(wù)連續(xù)性。對于系統(tǒng)的升級無法快速響應(yīng),難以滿足市場快速支撐響應(yīng)。
此模式下的升級多采用夜間上線升級,以人工操作為主,效率不高且易出錯,不具備可視化運維能力,對支撐人員造成嚴(yán)重壓力。
系統(tǒng)架構(gòu)演進需求
云化時代,工程投資精細化,投入產(chǎn)出數(shù)字化,保持系統(tǒng)的穩(wěn)定、安全、可擴展性顯得至關(guān)重要,容災(zāi)建設(shè)模式架構(gòu)合理,符合演進趨勢,正常狀態(tài)負(fù)荷分擔(dān),資源復(fù)用,降低系統(tǒng)壓力,提高設(shè)備利用率;發(fā)生系統(tǒng)重大故障或災(zāi)難時實現(xiàn)應(yīng)用接管,起到容災(zāi)作用。
應(yīng)急保障措施按照由低到高程度主要分為雙機、集群、備份、應(yīng)急、容災(zāi)幾個層次。雙機、集群涉及范圍最小,主要為單個業(yè)務(wù)或應(yīng)用模塊的保障,其中雙機又分為雙機HA,負(fù)載均衡模式,集群主要指集群主機共同完成某項任務(wù)并能自動化實現(xiàn)宕機的業(yè)務(wù)接管。
備份保障直接面向基礎(chǔ)數(shù)據(jù),主要是在單個數(shù)據(jù)中心內(nèi)實現(xiàn)關(guān)鍵數(shù)據(jù)的備份,承載介質(zhì)多為帶庫,虛擬帶庫以及各類分布式存儲等,備份為粒度最小的應(yīng)急保障,也是最易實現(xiàn)、投資最少的方式,常用的備份工具有Networker、NBU等商業(yè)備份軟件等。
應(yīng)急面向?qū)ο鬄橄到y(tǒng)級或平臺級,目的在于故障發(fā)生時通過主備系統(tǒng)快速切換,實現(xiàn)業(yè)務(wù)的連續(xù)性保障、達到客戶無感知的目的,應(yīng)急的范圍一般局限于單個數(shù)據(jù)中心內(nèi)的核心系統(tǒng),覆蓋底層數(shù)據(jù)庫至應(yīng)用層,需單獨的設(shè)備物理隔離部署,應(yīng)充分考慮與生產(chǎn)設(shè)備在機房、供電等配套資源的區(qū)分,以實現(xiàn)保障程度的最大化。
容災(zāi)為最高級的應(yīng)急保障機制,也是投資最高的建設(shè)模式。容災(zāi)建設(shè)在物理格局上可分為多地多中心模式、同城多中心模式,運營模式上有冷備、熱備、雙活、多活等方式,功能架構(gòu)上劃分全量和降級容災(zāi)模式建設(shè),進行容災(zāi)建設(shè)最為關(guān)鍵的是解決了風(fēng)、火、雷、電等自然災(zāi)害帶來的風(fēng)險,在災(zāi)難發(fā)生時實現(xiàn)業(yè)務(wù)的快速切換,并盡量縮短RPO和RTO,以保證業(yè)務(wù)連續(xù)性、減少經(jīng)濟損失、保障客戶利益為最終目的。本文僅就保障級別最高的容災(zāi)技術(shù)進行研究分析,并以雙中心雙活模式進行說明。
進行雙中心容災(zāi)建設(shè)首先考慮第二中心的配套問題,具備數(shù)據(jù)中心機房的各類資源保障條件,具備良好的擴展性,連續(xù)的空調(diào)制冷環(huán)境,獨立冗余的電力保障以及中心間可靠的傳輸條件等。除物理配套因素外,系統(tǒng)的技術(shù)選型、業(yè)務(wù)邏輯也至關(guān)重要,目前雙中心建設(shè)功能上存在兩種分類:
垂直劃分
垂直劃分是以業(yè)務(wù)功能為單位進行劃分,根據(jù)業(yè)務(wù)功能的特性,按業(yè)務(wù)耦合程度在生產(chǎn)中心和容災(zāi)中心分別運行不同的應(yīng)用,同時向另一中心同步數(shù)據(jù),如圖1、圖2所示。
在實現(xiàn)數(shù)據(jù)級容災(zāi)的基礎(chǔ)上,任一中心出現(xiàn)災(zāi)難時,另一個中心接管全部業(yè)務(wù),相應(yīng)的雙中心數(shù)據(jù)復(fù)制以應(yīng)用維度進行復(fù)制。
水平劃分
水平劃分是以地域為單位進行劃分,根據(jù)用戶歸屬,分別在生產(chǎn)中心和容災(zāi)中心運行完整的系統(tǒng),正常情況下某一中心只負(fù)責(zé)處理歸屬用戶的業(yè)務(wù)(跨地區(qū)業(yè)務(wù)除外),同時向另一中心同步數(shù)據(jù),如圖3、圖4所示。
當(dāng)任一中心出現(xiàn)災(zāi)難時,另一個中心接管全部業(yè)務(wù),相應(yīng)的雙中心數(shù)據(jù)復(fù)制以地市維度進行復(fù)制。
應(yīng)急保障是一個系統(tǒng)工程,需要雙中心接入層、應(yīng)用層、數(shù)據(jù)層、存儲層分別設(shè)置訪問策略及切換機制,同時保證數(shù)據(jù)的安全備份機制。
接入層、應(yīng)用層主要依賴IP地址、DNS域名等配置解決,而涉及應(yīng)用層以下則需要專門的同步復(fù)制工具,目前主流方向有三種:基于存儲復(fù)制、基于數(shù)據(jù)庫日志復(fù)制、基于數(shù)據(jù)庫的復(fù)制,如圖5所示。
圖1 垂直劃分模式
圖3 水平劃分模式
圖2 垂直劃分同步
圖4 水平劃分同步
圖5 雙中心總體架構(gòu)
存儲復(fù)制:通過存儲控制或者虛擬卷控制實現(xiàn)數(shù)據(jù)在存儲設(shè)備之間的復(fù)制;所有的數(shù)據(jù)變化在兩個站點進行鏡像。
數(shù)據(jù)庫日志復(fù)制:由數(shù)據(jù)庫系統(tǒng)的輔助程序或第三方工具,逆向解析數(shù)據(jù)庫交易日志并施行于遠端數(shù)據(jù)庫完成數(shù)據(jù)復(fù)制。
應(yīng)急保障是一個系統(tǒng)工程,需要雙中心接入層、應(yīng)用層、數(shù)據(jù)層、存儲層分別設(shè)置訪問策略及切換機制,同時保證數(shù)據(jù)的安全備份機制。
數(shù)據(jù)庫復(fù)制:由數(shù)據(jù)庫系統(tǒng)軟件完成數(shù)據(jù)復(fù)制,復(fù)制的粒度是數(shù)據(jù)庫內(nèi)數(shù)據(jù)操縱動作,復(fù)制涉及的范圍為單個數(shù)據(jù)庫。
“’互動性’存在于口語交際的各個環(huán)節(jié)和話語理解的各個層面”,是指參與語言交流的雙方在口語交際中形成聽和說的交互作用。
為實現(xiàn)某省公司的容災(zāi)建設(shè),充分考慮了兄弟省份的建設(shè)經(jīng)驗,調(diào)研了部分省份的在用技術(shù),結(jié)果如表1所示:
針對上述省份的技術(shù)選型,對三類流派技術(shù)從以下維度進行了分析,如表2所示:
各類同步復(fù)制產(chǎn)品特點差距較大,對現(xiàn)網(wǎng)環(huán)境依賴性也不同,而大多數(shù)省份已考慮了應(yīng)急保障的建設(shè),但近年來新的數(shù)據(jù)中心啟用則需要各個省公司情根據(jù)現(xiàn)網(wǎng)實際情況及業(yè)務(wù)讀寫要求選擇適合的同步產(chǎn)品,以下針對各產(chǎn)品的進行了總結(jié)建議,如表3所示。
表1 部分省份同步復(fù)制技術(shù)選擇
表2 同步復(fù)制技術(shù)對比
表3 技術(shù)使用場景分析
圖6 整體架構(gòu)圖
針對某運營商目前單數(shù)據(jù)中心的實際情況以及迫切建設(shè)第二中心的需求,結(jié)合在網(wǎng)在用數(shù)據(jù)庫產(chǎn)品及存儲產(chǎn)品,采用基于數(shù)據(jù)庫的同步復(fù)制技術(shù)進行雙中心雙活容災(zāi)建設(shè),對各層的配置分析如下,如圖6所示。
自頂而下劃分渠道層、接入層、應(yīng)用中心層及數(shù)據(jù)層,分別設(shè)置不同的接入方式和切換機制,雙中心間提供網(wǎng)絡(luò)層、存儲網(wǎng)絡(luò)層的雙鏈路、高帶寬保障。
主機按等量部署在雙中心,單中心內(nèi)根據(jù)不同外部訪問入口劃分多個集群,在WEB層設(shè)置DNS,根據(jù)請求源地址與兩個中心IP的對應(yīng)關(guān)系,將不同地市的訪問請求轉(zhuǎn)發(fā)到不同的中心進而訪問對應(yīng)中心的WEB集群。
當(dāng)WEB集群組1內(nèi)的一臺主機發(fā)生故障時,由集群機制保障WEB集群組1內(nèi)的其他主機承擔(dān)其負(fù)載的訪問請求;當(dāng)WEB集群組1內(nèi)的主機大面積發(fā)生故障時,通過策略調(diào)整DNS解析配置,使所有請求切換到第二中心內(nèi),確保業(yè)務(wù)不間斷。
應(yīng)用層
物理上兩個機房分別部署主機,應(yīng)用邏輯上跨機房集群部署形成統(tǒng)一的應(yīng)用支撐中心。
WEB層通過解析用戶屬性與歸屬地市映射關(guān)系,歸屬路由請求通過客戶端訪問控制機制,執(zhí)行客戶分組的訪問策略,將WEB請求指向?qū)?yīng)應(yīng)用中心集群。
原則上客戶端訪問應(yīng)用中心集群組采取就近策略訪問本局應(yīng)用中心,當(dāng)應(yīng)用集群組內(nèi)的服務(wù)器發(fā)生故障時,由集群機制保障應(yīng)用集群組內(nèi)的其他服務(wù)器能夠承擔(dān)其負(fù)載的請求量,當(dāng)本中心獲取不到較近的應(yīng)用服務(wù)器地址,自動將請求指向?qū)Χ藨?yīng)用中心集群組,確保業(yè)務(wù)連續(xù)性。
數(shù)據(jù)層
現(xiàn)網(wǎng)一中心某核心系統(tǒng)采用的是Oracle數(shù)據(jù)庫,由于第二中心所購設(shè)備按照第一中心同構(gòu)等量考慮,按照全量1:1考慮全量災(zāi)備建設(shè),優(yōu)先考慮數(shù)據(jù)庫性能影響及數(shù)據(jù)壞塊的處理機制,選用Oracle ADG技術(shù)進行雙中心同步技術(shù),雙中心數(shù)據(jù)庫主備庫跨機房交叉部署,一中心部署A主庫、B備庫,二中心部署A備庫、B主庫。
每個業(yè)務(wù)應(yīng)用存在兩個或多個數(shù)據(jù)庫連接。根據(jù)訪問主備庫要求,設(shè)定數(shù)據(jù)庫DNS可解析的IP地址;用于優(yōu)先訪問備庫的連接將備庫IP地址設(shè)為首選,用于優(yōu)先訪問主庫的連接將主庫IP地址設(shè)為首選。注冊服務(wù)與主備優(yōu)先連接設(shè)定關(guān)聯(lián)關(guān)系,按照對應(yīng)策略從對應(yīng)的連接池中獲取數(shù)據(jù)庫連接。數(shù)據(jù)主庫出現(xiàn)故障,可通過人工干預(yù)或根據(jù)策略進行自動切換。
單中心數(shù)據(jù)庫通過RAC實現(xiàn)高可用,雙中心通過第三方數(shù)據(jù)同步軟件保障主庫與備庫的數(shù)據(jù)一致性。雙中心的數(shù)據(jù)同時可讀寫,數(shù)據(jù)相互備份,并且在其中一個中心出現(xiàn)異常的時候,對端中心可以馬上接管。
雙活模式下的應(yīng)用升級:基于分布式中心架構(gòu),只要不涉及數(shù)據(jù)庫變更,應(yīng)用變更或升級可以通過在線方式升級,保證業(yè)務(wù)不中斷。利用雙中心的在線切換機制,即便涉及數(shù)據(jù)庫變更的升級,也可以做到在線升級,保障業(yè)務(wù)不中斷。
本文針對業(yè)界主流的容災(zāi)建設(shè)模式做出來詳細分析,歸納總結(jié)了技術(shù)對比分析,并針對某公司提出了兩地雙中心的具體實現(xiàn)方案。當(dāng)今時代運營商既面臨機遇,又面臨挑戰(zhàn),只要把握自身優(yōu)勢地位,充分保障系統(tǒng)穩(wěn)定,保持架構(gòu)先進,不斷優(yōu)化業(yè)務(wù)能力、提高客戶感知,才能在互聯(lián)網(wǎng)的前進大潮中立于不敗之地?!?/p>