摘要:對于業(yè)務(wù)連續(xù)性要求較高的系統(tǒng),采用容災(zāi)系統(tǒng)實(shí)現(xiàn)數(shù)據(jù)保護(hù)和信息系統(tǒng)業(yè)務(wù)連續(xù)性保護(hù)已顯得越來越重要。文章介紹了杭州市勞動信息系統(tǒng)的業(yè)務(wù)連續(xù)性特點(diǎn)以及建設(shè)容災(zāi)備份系統(tǒng)的背景;提出了容災(zāi)備份系統(tǒng)建設(shè)的具體目標(biāo);通過對當(dāng)前有關(guān)容災(zāi)備份系統(tǒng)建設(shè)的技術(shù)分析,提出了杭州市勞動信息系統(tǒng)容災(zāi)備份系統(tǒng)建設(shè)方案;分析了方案的局限性,并對系統(tǒng)進(jìn)一步發(fā)揮作用提出了建議。
關(guān)鍵詞:業(yè)務(wù)連續(xù)性;容災(zāi)系統(tǒng);RTO(Recovery Time Object);RPO(Recovery Point Object)
0 引言
信息系統(tǒng)在當(dāng)今生產(chǎn)、生活中起著越來越重要的作用。如何保護(hù)信息系統(tǒng)的正常健康地運(yùn)行是每一個有效運(yùn)行的信息系統(tǒng)都要面對的重大課題。尤其對每天24小時、每周7個自然日、每年365天連續(xù)不間斷實(shí)時運(yùn)行的系統(tǒng),更需要有措施來應(yīng)對災(zāi)難性事件對信息系統(tǒng)特別是數(shù)據(jù)信息的毀滅性破壞,必須認(rèn)真考慮和提出信息數(shù)據(jù)的保護(hù)方法和保持信息系統(tǒng)業(yè)務(wù)連續(xù)性工作的切實(shí)可行的解決方案。對于實(shí)時性要求不高的信息系統(tǒng),主要是進(jìn)行數(shù)據(jù)保護(hù)如數(shù)據(jù)備份與異地保存;對于業(yè)務(wù)連續(xù)性要求較高的系統(tǒng),要采用容災(zāi)系統(tǒng)進(jìn)行業(yè)務(wù)連續(xù)性保護(hù)。在勞動保障行業(yè),隨著信息化深入到社會保障業(yè)務(wù)經(jīng)辦、勞動就業(yè)、行政審批等各個方面,信息系統(tǒng)成為支撐生產(chǎn)、管理正常進(jìn)行的基礎(chǔ)。醫(yī)療保險業(yè)務(wù)更是對信息系統(tǒng)的實(shí)時性、可靠性提出了非常高的要求。杭州市社會保障管理信息系統(tǒng)是勞動保障信息系統(tǒng)的核心子系統(tǒng),關(guān)系到所有市民的切身利益,是實(shí)時準(zhǔn)金融系統(tǒng),對數(shù)據(jù)安全和業(yè)務(wù)連續(xù)都有很高的要求。為此我們提出建設(shè)一個杭州市社會保障管理信息系統(tǒng)應(yīng)用級容災(zāi)系統(tǒng)以減小災(zāi)難和重大事故造成的數(shù)據(jù)損失和業(yè)務(wù)影響,切實(shí)提高應(yīng)對突發(fā)災(zāi)難的能力。下面結(jié)合杭州市勞動保障容災(zāi)系統(tǒng)建設(shè),談?wù)勅轂?zāi)系統(tǒng)建設(shè)的目標(biāo)確定、系統(tǒng)建設(shè)的具體方案和項(xiàng)目建設(shè)中的一些體會。
1 容災(zāi)系統(tǒng)建設(shè)的目標(biāo)
首先,確定容災(zāi)系統(tǒng)建設(shè)的目標(biāo)是項(xiàng)目建設(shè)的關(guān)鍵步驟,容災(zāi)系統(tǒng)的建設(shè)目標(biāo)對系統(tǒng)方案的確定和具體的技術(shù)實(shí)現(xiàn)方式以及項(xiàng)目建成后的管理、維護(hù)都起決定性的作用,系統(tǒng)建設(shè)初期一定要充分論證。從技術(shù)上看,衡量容災(zāi)系統(tǒng)有兩個主要指標(biāo):RPO(Recovery Point Object)和RTO(Recovery TimeObject),其中RPO代表了當(dāng)災(zāi)難發(fā)生時允許丟失的數(shù)據(jù)量,而RTO則代表了系統(tǒng)恢復(fù)的時間。RPO與RTO越小,系統(tǒng)的可用性就越高,當(dāng)然用戶需要的投資也越大。各種應(yīng)用對RTO要求不同。業(yè)務(wù)繁忙的關(guān)鍵業(yè)務(wù)需要較小的RTO,如果系統(tǒng)恢復(fù)時間過長就會影響到業(yè)務(wù)運(yùn)行;而許多業(yè)務(wù)系統(tǒng)的RTO較長,如果一些較小災(zāi)難發(fā)生在非業(yè)務(wù)運(yùn)行時間,那么對業(yè)務(wù)連續(xù)性幾乎不會造成任何影響。因此,應(yīng)當(dāng)根據(jù)項(xiàng)目資金的投入,業(yè)務(wù)特點(diǎn)與業(yè)務(wù)性質(zhì),確定恰當(dāng)?shù)腞PO和RTO目標(biāo)。災(zāi)難備份本身可分為數(shù)據(jù)級備份與應(yīng)用級備份兩大類。數(shù)據(jù)級備份就是數(shù)據(jù)的遠(yuǎn)程容災(zāi),當(dāng)主站點(diǎn)發(fā)生災(zāi)難時,備份站點(diǎn)仍然保存著數(shù)據(jù)的副本,從而達(dá)到保護(hù)數(shù)據(jù)的目的。應(yīng)用級備份則是為了實(shí)現(xiàn)完全的應(yīng)用容災(zāi),一旦主站點(diǎn)發(fā)生災(zāi)難,將由備份站點(diǎn)接管整個應(yīng)用系統(tǒng),繼續(xù)對外提供服務(wù),它不僅僅保存數(shù)據(jù),還要保證業(yè)務(wù)系統(tǒng)的連續(xù)運(yùn)行即業(yè)務(wù)連續(xù)性。應(yīng)用級容災(zāi)系統(tǒng)涉及的技術(shù)和管理問題很復(fù)雜,一般來說,資金投入也較大。只有業(yè)務(wù)需求迫切,系統(tǒng)規(guī)模較大,其他技術(shù)手段無法保證業(yè)務(wù)連續(xù)性時才需要采用。由于勞動保障業(yè)務(wù)數(shù)據(jù)記錄市民的養(yǎng)老、醫(yī)療、就業(yè)信息,數(shù)據(jù)涉及市民切身利益,業(yè)務(wù)數(shù)據(jù)量大,生產(chǎn)、變更極為頻繁,在任何條件下都不允許數(shù)據(jù)的丟失。勞動保障業(yè)務(wù)系統(tǒng)是7×24不間斷系統(tǒng),長時間的系統(tǒng)中斷將引起較大的社會問題。通過對社會影響、業(yè)務(wù)影響、資金投入、技術(shù)方案的比較,確定杭州市勞動保障容災(zāi)備份系統(tǒng)建設(shè)的目標(biāo)是:為勞動保障局信息系統(tǒng)的社會保障業(yè)務(wù)提供應(yīng)用級災(zāi)備,當(dāng)社會保障業(yè)務(wù)的生產(chǎn)系統(tǒng)發(fā)生導(dǎo)致應(yīng)用系統(tǒng)中斷的重大災(zāi)難時,系統(tǒng)能夠在半小時之內(nèi)迅速切換到災(zāi)備系統(tǒng)運(yùn)行,保持社會保障業(yè)務(wù)的連續(xù)進(jìn)行。整個切換過程,需保障應(yīng)用系統(tǒng)數(shù)據(jù)只有少量或者“零”丟失,從生產(chǎn)中心切換到災(zāi)備系統(tǒng)的時間不能大于30分鐘;當(dāng)生產(chǎn)中心恢復(fù)正常,完成了生產(chǎn)系統(tǒng)所有軟硬件的安裝、配置和數(shù)據(jù)同步后,以相同的數(shù)據(jù)與技術(shù)指標(biāo)恢復(fù)運(yùn)行,即RPO為“零”,RTO為30分鐘切換回生產(chǎn)系統(tǒng)。
2 應(yīng)用級容災(zāi)系統(tǒng)建設(shè)技術(shù)分析
應(yīng)用級容災(zāi)系統(tǒng)對應(yīng)于生產(chǎn)系統(tǒng)一般由數(shù)據(jù)復(fù)制與存儲系統(tǒng)、應(yīng)用系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)組成。系統(tǒng)結(jié)構(gòu)如圖1所示。
在整個系統(tǒng)中,數(shù)據(jù)是整個應(yīng)用的生命,數(shù)據(jù)保護(hù)是系統(tǒng)建設(shè)的根本目的,所以采用何種技術(shù)進(jìn)行遠(yuǎn)程數(shù)據(jù)復(fù)制是系統(tǒng)建設(shè)的重點(diǎn),容災(zāi)存儲系統(tǒng)建設(shè)以及如何處理它與生產(chǎn)存儲系統(tǒng)的關(guān)系是關(guān)鍵。各存儲設(shè)備生產(chǎn)廠家在其高端存儲服務(wù)器中提供了各自的容災(zāi)解決方案,如IBM公司的PPRC、IIDS公司的True Copy、EMC公司的SRDF等,另外還有利用虛擬存儲等方式的異構(gòu)存儲容災(zāi)解決方案,VARITAS的軟件解決方案,以及利用數(shù)據(jù)庫功能(如ORACLE公司的DataGuard)實(shí)現(xiàn)容災(zāi)備份的方案。具體的解決方案要根據(jù)生產(chǎn)系統(tǒng)的設(shè)備、應(yīng)用、數(shù)據(jù)量、通訊、容災(zāi)與生產(chǎn)系統(tǒng)的距離、RPO和RTO設(shè)定的目標(biāo)等多個方面綜合考慮,并充分了解各產(chǎn)品及方案實(shí)現(xiàn)的技術(shù)細(xì)節(jié)才能確定。數(shù)據(jù)復(fù)制方案的不當(dāng)選擇可能會導(dǎo)致項(xiàng)目無法實(shí)施或失敗。在我們的方案中除考慮上述幾個方面的因素外,還特別考慮到盡量降低項(xiàng)目風(fēng)險,盡量減小項(xiàng)目建設(shè)對生產(chǎn)系統(tǒng)的影響和便于系統(tǒng)運(yùn)維等因素,確定采用同構(gòu)存儲系統(tǒng)的實(shí)時數(shù)據(jù)復(fù)制即在SAN環(huán)境下的I-IDS異步TrueCopy技術(shù)。在實(shí)施過程中還要充分考慮數(shù)據(jù)復(fù)制對生產(chǎn)系統(tǒng)的性能影響,復(fù)制鏈路故障對生產(chǎn)系統(tǒng)的影響等方面,細(xì)化與之相關(guān)的設(shè)備配置,避免因容災(zāi)系統(tǒng)引起生產(chǎn)系統(tǒng)的故障或停頓。如在HDS的TrueCopy方案中有同步復(fù)制和異步復(fù)制兩種方式,分別采用bitmap(位圖)和timestamp(時間戳)兩種機(jī)制實(shí)現(xiàn)。異步復(fù)制對線路帶寬的要求低,從而可以實(shí)現(xiàn)遠(yuǎn)距離傳輸,對生產(chǎn)系統(tǒng)的性能影響小,但可能有少量的數(shù)據(jù)丟失;而同步復(fù)制由于其“寫確認(rèn)”機(jī)制對線路帶寬要求高,不利于遠(yuǎn)距離傳輸,對生產(chǎn)系統(tǒng)性能影響大,但能保證數(shù)據(jù)的“零”丟失,即真正的RPO=0。另外,這兩種方式在數(shù)據(jù)庫支持上也存在區(qū)別。在系統(tǒng)平臺方面,我們采用同構(gòu)系統(tǒng),但采用了不同操作系統(tǒng)版本,這樣要求我們在版本兼容性方面做好充分的測試,對應(yīng)用服務(wù)相關(guān)軟件進(jìn)行重新編譯、測試,以確保應(yīng)用切換的成功。
應(yīng)用級容災(zāi)的網(wǎng)絡(luò)系統(tǒng)也是項(xiàng)目建設(shè)中的重要部分,當(dāng)災(zāi)難發(fā)生時,我們要求網(wǎng)絡(luò)系統(tǒng)能根據(jù)業(yè)務(wù)要求,部分或完全接替生產(chǎn)系統(tǒng)運(yùn)行,保證應(yīng)用的連續(xù)性。網(wǎng)絡(luò)系統(tǒng)如圖2所示。 在網(wǎng)絡(luò)系統(tǒng)中怎樣進(jìn)行快捷有效的網(wǎng)絡(luò)切換是網(wǎng)絡(luò)系統(tǒng)中的主要問題。在生產(chǎn)中心和容災(zāi)中心的局域網(wǎng)絡(luò)中系統(tǒng)的切換必須解決服務(wù)器TP的切換或解析的問題。如果系統(tǒng)中建有完整的域名系統(tǒng)且所有應(yīng)用都基于域名系統(tǒng)運(yùn)行,可采用域名解析的方法實(shí)現(xiàn)應(yīng)用服務(wù)IP切換的問題,否則可采用手工切換。在一些方案中采用群集技術(shù)進(jìn)行IP切換,這種方法在實(shí)際的關(guān)鍵系統(tǒng)運(yùn)行中可靠性和可控性有一定的問題。網(wǎng)絡(luò)系統(tǒng)的另一個問題是接入網(wǎng)路切換問題,在我們的系統(tǒng)中采用了BGP協(xié)議實(shí)現(xiàn)生產(chǎn)系統(tǒng)的主、備接入線路與災(zāi)備接入線路的按序自動切換。同時,我們在制定災(zāi)備網(wǎng)絡(luò)方案時,將生產(chǎn)網(wǎng)絡(luò)與災(zāi)備網(wǎng)絡(luò)作為一個整體考慮,這有效地降低了網(wǎng)絡(luò)的復(fù)雜性并便于管理。
3 容災(zāi)系統(tǒng)的局限性
容災(zāi)系統(tǒng)在災(zāi)難發(fā)生時能起到很大的作用,但根據(jù)采用的技術(shù)不同,也存在不同的局限性。如我們所采用的容災(zāi)方式至少有如下兩點(diǎn)不足:第一,容災(zāi)系統(tǒng)無法處理數(shù)據(jù)庫本身損壞或被人為破壞。由于生產(chǎn)數(shù)據(jù)被實(shí)時復(fù)制到容災(zāi)系統(tǒng),所以損壞后的數(shù)據(jù)庫數(shù)據(jù)也將立即存在于容災(zāi)系統(tǒng)。第二,無法在所有情況下做到絕對的數(shù)據(jù)零丟失。當(dāng)突發(fā)的災(zāi)難和大面積設(shè)備故障發(fā)生時,在數(shù)據(jù)庫緩存中的數(shù)據(jù)還在服務(wù)器的內(nèi)存中,并沒有寫入磁盤陣列,因而無法傳送至容災(zāi)備份中心,將會導(dǎo)致數(shù)據(jù)丟失。因此,容災(zāi)系統(tǒng)并不能代替?zhèn)鹘y(tǒng)的數(shù)據(jù)備份,兩者在功能上具有互補(bǔ)性,另一方面,業(yè)務(wù)管理等非技術(shù)手段也是彌補(bǔ)技術(shù)局限的方法。在通常的容災(zāi)系統(tǒng)建設(shè)中,災(zāi)備系統(tǒng)的處理能力會小于生產(chǎn)系統(tǒng),災(zāi)難發(fā)生時,也不可能完全接管所有生產(chǎn)業(yè)務(wù),只能保證其中重要業(yè)務(wù)的連續(xù)運(yùn)行。
對于應(yīng)用級容災(zāi)系統(tǒng),系統(tǒng)運(yùn)維和定期的災(zāi)備切換演練與系統(tǒng)建設(shè)同等重要,只有在良好的運(yùn)維狀況下,才能保證容災(zāi)系統(tǒng)隨時有效,只有制定正確的災(zāi)備切換方案并定期進(jìn)行切換演練,才能保證災(zāi)難發(fā)生時能有條不紊地進(jìn)行正確的切換,真正達(dá)到建設(shè)項(xiàng)目的目的。杭州市勞動保障信息系統(tǒng)容災(zāi)備份系統(tǒng)在建成試運(yùn)行兩個月后成功組織了災(zāi)備切換演練,達(dá)到了演練的預(yù)期效果。
4 結(jié)束語
本文總結(jié)了容災(zāi)備份系統(tǒng)建設(shè)中的一些經(jīng)驗(yàn),闡述了系統(tǒng)規(guī)劃建設(shè)的方法,對系統(tǒng)建設(shè)中應(yīng)該注意的問題和容災(zāi)備份系統(tǒng)的局限性也進(jìn)行了分析,希望為相關(guān)的系統(tǒng)建設(shè)提供有益的借鑒。