文 | 中國民航信息網(wǎng)絡(luò)股份有限公司 劉建輝 郝立平 陳本錫 修姍姍
隨著信息時代的到來,企業(yè)信息化發(fā)展越來越快,導(dǎo)致積累的數(shù)據(jù)越來越多,這些數(shù)據(jù)對于企業(yè)來說是非常寶貴的資源,尤其對數(shù)據(jù)信息依賴程度很高的行業(yè)更是如此。要保障業(yè)務(wù)系統(tǒng)穩(wěn)定而且持續(xù)的運行,就要保證數(shù)據(jù)的安全性、完整性和可用性。數(shù)據(jù)備份是數(shù)據(jù)安全最基礎(chǔ)的保障,它幾乎是任何信息化系統(tǒng)中必需的組成部分,意外斷電、系統(tǒng)崩潰、操作失誤、硬件損壞都可能造成數(shù)據(jù)庫文件的破壞或丟失,而這些文件往往包含著珍貴數(shù)據(jù),一般的數(shù)據(jù)庫自身帶有一些備份機制,可以形成本地備份避免一些數(shù)據(jù)丟失。但是對于重大自然災(zāi)害(火災(zāi)、洪水、地震、颶風、龍卷風、臺風等)對數(shù)據(jù)安全帶來的威脅,有可能是導(dǎo)致數(shù)據(jù)中心機房損毀。如果這樣的災(zāi)難發(fā)生,不管在本地采用什么樣的安全措施,都有可能造成很大的損失。在這種情況下,如果本地數(shù)據(jù)損毀,數(shù)據(jù)沒有異地備份,對數(shù)據(jù)的保存可以說是一個致命的打擊。
在異地數(shù)據(jù)備份即在異地建立一套完整的、與本地數(shù)據(jù)系統(tǒng)相當?shù)膫浞輵?yīng)用系統(tǒng),當出現(xiàn)災(zāi)難時,遠程應(yīng)用系統(tǒng)將迅速接管或承擔本地應(yīng)用系統(tǒng)的業(yè)務(wù)運行而保證業(yè)務(wù)的連續(xù)性。同時,在實現(xiàn)上述需求的同時保障RPO最小,即當災(zāi)難發(fā)生時丟失的數(shù)據(jù)最少,對于企業(yè)來說損失將會最低。所以需要數(shù)據(jù)容災(zāi)系統(tǒng)可以實現(xiàn)異地數(shù)據(jù)災(zāi)備,同時保障RPO最小。
本文研究基于Oracle RAC、Oracle GoldenGate(以下簡稱OGG)軟件和Cloud Data Replication(以下簡稱CDR)軟件的本地高可用、異地實時備份的解決方案架構(gòu)實現(xiàn)。
圖1 Cloud Data Replication平臺架構(gòu)
1.簡介
Oracle GoIdenGate(以下簡稱OGG)軟件是一種基于日志的結(jié)構(gòu)化數(shù)據(jù)復(fù)制備份軟件,它通過解析源數(shù)據(jù)庫在線日志或歸檔日志來獲得數(shù)據(jù)的增量變化,再將這些變化應(yīng)用到目標數(shù)據(jù)庫, 從而實現(xiàn)源數(shù)據(jù)庫與目標數(shù)據(jù)庫同步。OGG可以在異構(gòu)的IT基礎(chǔ)結(jié)構(gòu)(幾乎包括所有常用OS平臺和數(shù)據(jù)庫平臺)之間實現(xiàn)大量數(shù)據(jù)亞秒級的實時復(fù)制, 從而可以在應(yīng)急系統(tǒng)、在線報表、實時數(shù)據(jù)倉庫供應(yīng)、交易跟蹤、數(shù)據(jù)同步、集中/分發(fā)、容災(zāi)、數(shù)據(jù)庫升級和移植、雙業(yè)務(wù)中心等多個場景下應(yīng)用, 同時它可以實現(xiàn)一對一、廣播(一對多)、聚合(多對一、雙向、點對點、級聯(lián)等多種靈活的拓撲結(jié)構(gòu)。
2.技術(shù)原理
OGG通過Capture進程實時讀取日志信息,捕捉增量數(shù)據(jù)寫到本地Trail File中,通過Pump進程將本地Trail File推送到遠程目標服務(wù)器,遠程服務(wù)器通過Delivery進程解析Trail File文件,形成標準SQL語句,將數(shù)據(jù)投遞到目標數(shù)據(jù)庫。
3.關(guān)鍵特性
實時-亞秒級處理大量數(shù)據(jù);
異構(gòu)-不同數(shù)據(jù)庫和平臺之間捕獲和交付(Capture& delivery);
事務(wù)完整性-事務(wù)數(shù)據(jù)保持可靠和參照完整性。
Oracle RAC(Oracle Real Application Cluster)即Oracle真正應(yīng)用集群。它是由若干個物理計算機組成,每個叫作一個節(jié)點,這些節(jié)點間通過私有網(wǎng)絡(luò)連接。各個節(jié)點通過HBA卡或光纖線連接到共享存儲上,形成“shared—disk”的體系結(jié)構(gòu)模式。RAC的共享磁盤結(jié)構(gòu)模式不但有著更高的可用性,同時也擁有更佳的易擴展性。
1.簡介
Cloud Data Replication是一個集解決方案管理、配置、監(jiān)控、告警的集中管理平臺,圖形化集中管理配置服務(wù)器及災(zāi)備場景,實時的監(jiān)控告警機制協(xié)助關(guān)鍵系統(tǒng)保持 24*7 小時運作,滿足業(yè)務(wù)系統(tǒng)持續(xù)可用的要求。
雙硫-烯的光引發(fā)反應(yīng) ······························劉光耀 苗 苗 安澤勝 (1,83)
2.技術(shù)原理
Cloud Data Replication采用工業(yè)標準的技術(shù)以及開源技術(shù)開發(fā)的一套高性能和輕量級的Web架構(gòu),CDR通過API與OGG進行底層通訊,可以快速的獲取OGG信息,通過與數(shù)據(jù)庫交互,獲取數(shù)據(jù)庫信息,實現(xiàn)對整個鏈路場景的管理監(jiān)控。
平臺包含以下功能組件:
CDR Agent:Agent組件有兩種模式,一種模式是管理服務(wù)器通過定時器的方式主動發(fā)消息給GoldenGate來獲取GoldenGate的進程信息、檢查點信息、狀態(tài)信息、延遲信息和統(tǒng)計信息以及配置信息等等。另外一種模式就是Agent部署在GoldenGate服務(wù)器端,Agent在收集GoldenGate信息以后,會把這些消息發(fā)給管理服務(wù)器。比如GoldenGate的安裝部署、進程監(jiān)控、事務(wù)級監(jiān)控(心跳表功能)、統(tǒng)計信息等定時任務(wù)都是通過Agent來完成的。
Administration Server:管理服務(wù)器主要是完成GoldenGate自動安裝部署、數(shù)據(jù)庫相關(guān)環(huán)境配置、解決方案的應(yīng)用場景配置、相關(guān)進程監(jiān)控、檢查點信息管理、事務(wù)級監(jiān)控、延遲監(jiān)控、告警管理、用戶管理、服務(wù)器和數(shù)據(jù)庫的元數(shù)據(jù)管理、GoldenGate進程配置、數(shù)據(jù)驗證功能等等。管理服務(wù)器會記錄所有相關(guān)的GoldenGate歷史進程信息和參數(shù)信息以保證出現(xiàn)故障可以找到恢復(fù)點。
MySQL資料庫:資料庫主要是保存用戶權(quán)限信息、服務(wù)器配置信息、GoldenGate進程信息、配置信息、日志錯誤信息、延遲監(jiān)控信息、統(tǒng)計信息、檢查點信息以及應(yīng)用場景信息,通過這些信息用戶可以建立完善的運維體系和應(yīng)用場景管理。
3.關(guān)鍵特性
CDR提供了一個實時地基于日志捕獲變化數(shù)據(jù)的數(shù)據(jù)復(fù)制平臺。這個平臺可以大規(guī)模地部署和實施異構(gòu)數(shù)據(jù)平臺之間的數(shù)據(jù)捕獲、路由、轉(zhuǎn)換和數(shù)據(jù)應(yīng)用復(fù)制。利用這個平臺客戶可以實現(xiàn)真正業(yè)務(wù)連續(xù)性和實時地集成數(shù)據(jù)以便快速、容易地訪問正確的和實時的業(yè)務(wù)系統(tǒng)數(shù)據(jù)。解決方案有以下關(guān)鍵特性:
自動化-從安裝到配置,一鍵化、自動化部署;
流程化-解決方案流程化顯示,清晰拓撲架構(gòu);
精細化-進程級、事務(wù)級監(jiān)控精細化監(jiān)控信息;
快速化-實時監(jiān)控,及時告警,快速定位解決問題 ;
可驗證-驗證源端和目標端的表結(jié)構(gòu)、數(shù)據(jù)量差異性,保障備份隨時可用;
擴展性-采用模塊化可擴展架構(gòu)設(shè)計,基于標準的Web的API以及開源技術(shù)實現(xiàn),并采用插件技術(shù),具有很好的兼容性及可擴展性。
圖2 數(shù)據(jù)一致性驗證解決方案
生產(chǎn)端與災(zāi)備端數(shù)據(jù)庫采用Oracle RAC雙實例單數(shù)據(jù)庫的共享存儲體系結(jié)構(gòu),利用OGG建立雙向復(fù)制鏈路,將生產(chǎn)端增量數(shù)據(jù)實時同步到災(zāi)備端,利用CDR實時監(jiān)控數(shù)據(jù)庫及OGG復(fù)制鏈路場景,當有異常發(fā)生及時監(jiān)控告警,保障RPO最小。
1.高可用保障業(yè)務(wù)連續(xù)性
采用Oracle RAC雙實例ACFS(ASM Cluster File Systems )自動存儲管理文件系統(tǒng),OGG安裝在ACFS上,所以當當前節(jié)點發(fā)生故障時,配置應(yīng)用自動漂移到另一節(jié)點IP,并在另一節(jié)點拉起OGG,保障業(yè)務(wù)連續(xù)性,并且數(shù)據(jù)復(fù)制鏈路不停。
當生產(chǎn)數(shù)據(jù)中心癱瘓,由于OGG實時將生產(chǎn)數(shù)據(jù)同步到災(zāi)備端,所以應(yīng)用可以switchover到災(zāi)備端,原災(zāi)備中心變?yōu)樯a(chǎn)中心,此時反向鏈路數(shù)據(jù)同步起作用,由于原生產(chǎn)數(shù)據(jù)中心癱瘓,數(shù)據(jù)無法投遞,OGG會將當前生產(chǎn)中心的增量數(shù)據(jù)抽取到本地,當數(shù)據(jù)中心故障修復(fù)后,將累積的數(shù)據(jù)投遞到數(shù)據(jù)庫,保證數(shù)據(jù)零丟失。
2.數(shù)據(jù)驗證保障數(shù)據(jù)一致性
Cloud Data Replication提供一種高速、低影響的數(shù)據(jù)驗證解決方案,可以在無需中斷正在進行的業(yè)務(wù)流程的情況下,進行驗證數(shù)據(jù)庫之間表數(shù)量差異、表結(jié)構(gòu)差異、表數(shù)據(jù)量差異以及數(shù)據(jù)庫之間的RPO,并報告數(shù)據(jù)庫之間的差異。使用這個應(yīng)用程序,企業(yè)可以最大限度地減少人為錯誤的影響,并快速解決潛在問題,保證主庫與備庫的數(shù)據(jù)一致性。
本文研究了基于Oracle GoldenGate和Cloud Data Replication結(jié)合實現(xiàn)的災(zāi)備解決方案,通過Oracle GoldenGate實現(xiàn)雙向數(shù)據(jù)同步,基于Cloud Data Replication實現(xiàn)監(jiān)控管理、實時告警、數(shù)據(jù)驗證,通過此方案既可以保證數(shù)據(jù)同步的時效性,又可以保證數(shù)據(jù)同步問題的及時發(fā)現(xiàn)處理,降低RPO指標,具有較高的實用價值。