災難恢復旨在減輕災難對企業(yè)運營帶來的不良影響,而不管災難發(fā)生的原因是什么。
范圍
災難對企業(yè)運營影響的范圍可大可小,比如一個天文觀測站,觀測望遠鏡的調(diào)焦系統(tǒng)出現(xiàn)故障在某種意義上是一種災難。如果這個觀測站有兩臺或者更多的望遠鏡,由于具有冗余功能,觀測工作仍能正常進行。然而,如果觀測站僅有的一臺望遠鏡或者調(diào)焦系統(tǒng)發(fā)生一定程度的故障,則該企業(yè)(天文觀測站)的觀測工作仍不能正常進行。
持續(xù)時間
災難對企業(yè)運營最明顯的影響是停機時間??指整個或局部企業(yè)不能正常運營的時間。故障時間(圖1)是指企業(yè)不能正常運營的開始時間。T2是指企業(yè)從災難中完全恢復的時間,停機時間是指T1和T2之間的時間間隔。
發(fā)生時間
一般來說,災難造成的停機時間越短,企業(yè)的損失就越小。然而災難的影響與災難發(fā)生時間和災難導致的停機時間有關(guān)。例如,在觀測站的例子中,如果望遠鏡調(diào)焦系統(tǒng)發(fā)生故障的時間正好是彗星飛過地球的時間,則故障對觀測站的影響要比白天或宇宙相對平靜時發(fā)生故障的影響大得多。
災難對信息服務的影響
災難對企業(yè)信息服務的影響通常大于對企業(yè)運營其他方面的影響。舉例來說,如果記錄某些活動的服務器及其在線存儲服務器同時在T1(圖2)時間遭到災難性破壞,災難影響將從最近的日志備份時間T0(圖2)持續(xù)到系統(tǒng)完全恢復時間T2(圖2)。T0和T1之間記錄的活動與在線存儲一旦丟失,T1和T2之間的活動就未被記錄,因為日志系統(tǒng)無法正常運行,生成日志。
災難造成的影響還與企業(yè)所記錄活動的程度密切相關(guān)。如果日志只是概念測試的部分記錄,災難影響可能無關(guān)緊要,因為測試還可以重新運行。然而,如果活動日志用來生成規(guī)范企業(yè)運作的報表或者用來處理客戶訂單,那么,災難造成的損失將十分巨大。
準備工作和恢復計劃
災難恢復計劃和準備通常遵循以下兩種方法:
盡管筆者認為總體上第一種方法更可取,但本部分我們還是列舉了這兩種方法的優(yōu)劣勢。
全面災難恢復計劃
有些企業(yè)設計的全面災難預防和恢復計劃可以對任何可預見的災難事件進行全部或部分的調(diào)用。這些計劃與其說是災難事件驅(qū)動,倒不如說是不得已而啟動,它們一般根據(jù)能夠預見的最壞災難事件而設計。執(zhí)行全面災難恢復計劃,必須采取的第一步是評估災難影響,從而確定應當調(diào)用哪些團隊和哪些資源。正因為如此,災難發(fā)生和開始恢復之間,通常會有一段延時。
特定災難恢復計劃
與上述辦法相反,有些企業(yè)制定了幾套特定災難恢復計劃。這些計劃考慮了最可能發(fā)生的災難和災難的最大潛在影響。這些企業(yè)列出了可能發(fā)生影響的不同災難,同時考慮了這種災難對整個行業(yè)、地區(qū)、產(chǎn)品、服務和供應鏈的影響。他們會采用歷史信息和最好的假設方法對每一種災難進行量化分析,并計劃出最壞的和最有可能的影響。通過最詳細的計劃,他們會高度重視最有可能發(fā)生的災難和具有最大潛在影響的災難。
例如,在加利福尼亞和日本,發(fā)生地震的機率很高,所以建筑都設計成抗震建筑。而在新英格蘭和倫敦,地震發(fā)生的機率很小,因此人們在防震上投入的精力就較?。ǖ荒芎雎园l(fā)生地震的可能)。另一個例子就是以上幾個地區(qū)幾乎都沒有防御龍卷風侵襲的措施。因為龍卷風在上述地區(qū)十分罕見。有些災難獨立于自然環(huán)境因素,絕大多數(shù)企業(yè)都具有緊急恢復計劃,以應對電源中斷、火災、洪水、網(wǎng)絡故障和其他不可預知的災難。
執(zhí)行特定災難恢復計劃,應當遵循特定的步驟和流程。只要災難的性質(zhì)清楚,就不需要在恢復初期做太多決策。多數(shù)情況下,初始恢復步驟可以自動完成。但特定災難恢復計劃的主要缺點是不能預料災難,比如企業(yè)有可能采用電源中斷應急方案來進行火山爆發(fā)災難恢復。
混合恢復計劃
實際上,大多數(shù)企業(yè)采用上述兩種偏激方法的組合方案。即制定一些針對常見災難(如斷電、暴風雪等)的特定計劃,同時特定全面恢復計劃,應對其他所有災難。此外,也有一些企業(yè)擁有多個全面恢復計劃,以應對不同影響類型的災難(例如一個計劃應對某棟建筑被毀,另一個計劃應對計算機系統(tǒng)大面積故障)。
企業(yè)通常傾向于采用能滿足自身要求的恢復策略。根據(jù)筆者的經(jīng)驗,最佳的方案是一定要有一個可以應對各種災難事件的全面恢復方案。隨著時間的推移,不斷檢驗和修改計劃,加快初始決策速度,從而克服全面恢復方案的這一主要缺點。
事實證明,哪怕是最好的恢復計劃,無論是全面災難恢復計劃還是特定災難恢復計劃都可能不完整。本文重點探討可預知災難的規(guī)劃和準備。然而,如前面所述,有些意想不到的災難會隨時發(fā)生,恢復計劃必須隨機應變。
測試災難恢復計劃
不管是為了讓審計人員滿足、取悅管理人員、符合法規(guī)要求,還是真的為了企業(yè)擁有彈性,災難恢復計劃的編寫如果沒有經(jīng)過完整、定期的測試,那簡直就是浪費時間?;謴陀媱潙斆磕曛辽贉y試一次,并在計劃本身或應用環(huán)境發(fā)生重大變化之后再測試一次。對于快速變化的彈性企業(yè),其災難恢復計劃應當每三個月進行一次完整的測試。
測試的目地不是檢驗恢復計劃是否通過。如果每次測試都完全成功,那么這種測試就毫無意義。最好的測試應會發(fā)現(xiàn)哪些部分不能正常運行,因為在測試中發(fā)現(xiàn)問題并加以改正的成本,要遠遠低于在真正的災難恢復過程中發(fā)現(xiàn)問題并解決問題的成本。
定期測試是災難恢復計劃保持生命力的關(guān)鍵。盡管每一次測試都被視為一個獨立的項目,有始有終,但測試本身是一個永無終結(jié)的過程。每一次測試都使企業(yè)有機會了解、提高自身的彈性。將討論災難恢復測試的準備、執(zhí)行和追蹤,以最大限度地了解和提高企業(yè)彈性。
四種類型的測試
災難恢復測試的分類或演練方法有很多,下面重點討論災難恢復測試的四種基本類型:
在現(xiàn)實測試中,這四種類型可以組合使用,恢復團隊成員要到測試開始前的最后一分鐘才知道測試的真正日期和時間。例如,在日常防火演習結(jié)束后,大部分員工可以返回工作崗位,但此時可能開始一次呼叫測試,要通知恢復團隊模擬災難已經(jīng)宣告,一次實際的災難恢復測試將馬上開始。依據(jù)恢復計劃,幾個團隊要轉(zhuǎn)移到災難恢復站點,執(zhí)行企業(yè)恢復任務。測試包括恢復已保存的介質(zhì)、恢復正常網(wǎng)絡、重新路由電話線以及讓系統(tǒng)上線等。一些實際的業(yè)務和功能被轉(zhuǎn)移到恢復站點,而其他業(yè)務和功能的測試則采用模擬方式。
準備恢復測試
恢復測試應當由協(xié)調(diào)者領導。協(xié)調(diào)者負責編寫測試場景,確保企業(yè)作好了執(zhí)行、調(diào)整模擬恢復步驟的準備,通常還應當保證參與者專注于恢復測試。
災難測試場景編寫好之后,企業(yè)應當檢查測試場景的合理性、可行性,清楚而有意義。在某個測試場景被批準采用,角色和職責也確定好了之后,應當舉行測試前會議,以協(xié)調(diào)安排測試時間,設定期望并做好后勤安排。全天和幾天的恢復測試通常需要在幾個月時間內(nèi)召開數(shù)十次甚至更多次會議,來進行各種準備和協(xié)調(diào)。
最好的恢復測試應當是有限制的災難場景,特別是新組建的恢復團隊。有限制的災難場景能讓參與者專注于易處理的可恢復問題,而不是用最糟糕的情況挫敗他們,這只會使測試人員不知所措,錯誤百出。隨著企業(yè)測試計劃的日趨成熟,可能引入更復雜和更有挑戰(zhàn)性的測試場景。例如,宣布重要恢復團隊成員不能到位,必要備份磁帶丟失,或者通往恢復站點的道路被封鎖等。意外的復雜場景用來提醒恢復團隊成員任何事情都有可能發(fā)生,有助于參與者保持積極參與解決問題的狀態(tài)。
恢復測試計劃需要考慮的事項
一方面,災難恢復測試場景應當盡可能真實;另一方面,從實踐的角度看,企業(yè)進行災難恢復計劃測試時,通常沒有必要中斷其正常功能。進行恢復測試規(guī)劃時考慮企業(yè)運營的某些方面尤為重要,這包括:
執(zhí)行恢復測試
恢復測試一開始,應當舉行一次所有參與人員都參與的介紹會議。介紹會議旨在傳達測試的目的意義,并感謝團隊的參與。盡管恢復測試是非常嚴肅的事情,但保持“輕松”的心情通常很有必要,它可以減輕壓力,并有助于恢復人員區(qū)分測試和真正的災難。測試不需要太正式,比如說,不要求統(tǒng)一著裝。測試過程應當提供一些食物和飲料,特別是延時測試。在測試進度允許的范圍內(nèi),企業(yè)一般會鼓勵工作人員微調(diào)測試場景和恢復工作。
當恢復團隊測試他們的部分恢復時,協(xié)調(diào)者應當做一份詳細記錄,內(nèi)容包括測試部分、測試時間、測試持續(xù)時間、正常運行的部分,更重要的是要記下不能正常運行的部分。測試指揮部應當設在會議室或其他適當?shù)牡胤?。恢復團隊應當?shù)街笓]部匯報工作結(jié)果,領取進展報告,請求援助。
恢復測試中遇到問題時應當做好記錄,但測試通常應當繼續(xù)進行,這樣才能盡可能多地從測試中發(fā)現(xiàn)恢復計劃的缺陷。例如,應用程序恢復團隊丟失了一組必需的數(shù)據(jù),這一事故應當記錄下來,然后從實際應用中找回這組數(shù)據(jù)的副本,以便繼續(xù)進行測試。然而,關(guān)鍵的是,在這一問題沒有找到根源并排除時,不能簡單地一筆帶過。
恢復測試之后
災難恢復測試結(jié)束后,組織者應感謝所有恢復團隊成員的參與,并鼓勵他們就恢復測試的成功或不足之處提出反饋意見。測試中遇到的問題應逐一記錄,并及進安排徹底解決。測試結(jié)束后的短期內(nèi),協(xié)調(diào)者應公布測試報告,測試報告應記錄遇到的所有問題,并推薦解決措施,具體包括問題解決的具體負責人或組織,以及問題解決的具體時間。
從災難恢復或測試過程中吸取的經(jīng)驗和教訓,要應用到恢復計劃和下一次測試中。通過這種方式,企業(yè)的彈性才能日趨成熟,災難恢復計劃才能保持適應性。最重要的是,當與某一次恢復計劃測試相關(guān)的所有措施都完成時,新一輪災難恢復測試又應當開始。因此,恢復計劃的測試越頻繁,真正需要災難恢復時它就越可靠。
圖1 停機時間
圖2 停機時間和數(shù)據(jù)丟失