3月11日是東日本地震海嘯災難6周年紀念日。在這次人類歷史上罕見的浩劫中,福島核電站事故造成的損失最為慘重。與前蘇聯的切爾諾貝利核電站事故相比,福島的災難最初是由地震和海嘯的天災引起,似乎不應該算作人為事故。
但是,靜下心來仔細研究,發現這個事故發生得實在蹊蹺:
- 日本作為一個世界上自然災難發生最頻繁的國家,地震與其說是一種災難不如說是一種常見的自然現象。就算是這次地震的震級很強,作為世界上最大的核電站,難道沒有應對的預案?還是說應對預案不起作用?
- 相比切爾諾貝利事故從開始到爆炸只有8分鐘的時間,這次事故并不是一瞬間發生的。從3月11日的地震和海嘯,到3月14日三號機組的爆炸,這么長的時間,難道大家真的已經盡了全力,就是沒有辦法阻止事故發生嗎?
- 整個事故的根本原因是冷卻系統的電力中斷造成的。這就更奇怪了。這類問題連所有數據中心的管理員都知道該怎么解決,怎么一個專業的電力機構,反倒被難住了呢?難道不能用多個電力源來解決嗎?連數據中心都標配UPS了,難道核電站會沒有類似機制來保障電力嗎?沒有柴油發電機嗎?沒有第二路電力供給嗎?實在不行不能開輛發電車來嗎?怎么會活生生地拖死了呢?
- 日本作為唯一一個遭受過核打擊的國家,對核的敏感遠超其他國家。難道不能設計一個終極機制來防止核污染嗎?
- 切爾諾貝利發生災難的時候,前蘇聯政府第一時間就組織了大規模的疏散撤離;而這次福島似乎大家都很淡定,事故發生后好幾天才開始慢慢陸續疏散。這是因為日本人的高素質,還是另有原因?
實際上,面對災難,福島核電站確實啟動了預案。而這個預案卻仍然沒能挽救核電站。核電站也有多道屏障來防止發生電力中斷。但是這些屏障竟然在這次災難面前全部失效了。而且核電站也的確有一個終極的自毀機制可以防止災難發生,卻始終沒有使用。疏散早該以最快速度進行,以高效率著稱的日本人,居然由于人為的原因,把救命的時間耽誤掉了。
所以,這分明不是一場天災而是人禍。讓我們來重新復盤一下六年前究竟發生了什么。
天災?
2011年3月11日14點46分,日本本州島東海岸區域發生里氏9級地震。雖然是罕有的大地震,選址嚴苛、地震監測準確的核電站本來也毫無壓力,在第一時間啟動了相應的預案,反應堆自動停堆。
停堆之后核電站仍然在產熱,在自身無法發電的情況下必須由外部輸入電源運轉冷卻系統。因此,停堆之后最重要的一件事就是如何確保關鍵的冷卻系統能夠繼續供電。而這就是后來一切麻煩的根源。
像所有設計完善的容災系統一樣,核電站設計了多道屏障來確保在任何情況下冷卻系統仍然可以繼續供電。首先,第一道屏障是,電站各反應堆之間有很復雜完善的機制來確保可以在各種情況下相互供電。這就和數據中心容災設計中的雙活或者多活是一個道理。但是,預案要求地震時所有的反應堆全部停機,因此這個多活系統現在是個全死的狀態,不能再相互供電,于是第一道防護屏障失去了作用。
核電站的第二道屏障是啟動應急柴油機,給反應堆核心供電進行冷卻。為了防止單點故障,每個機組都有多臺柴油機發電。這個機制和很多現代大型數據中心的柴油應急發電的機制是完全一樣的。但是,地震帶來了另一個惡魔——海嘯!
由于疏于對海嘯的防御,當時整個核電站幾乎都泡在了10米深的水中。而更糟糕的是,大概出于應對戰爭和恐怖襲擊的考慮,核電站的應急柴油發電機都被放在了海平面以下的地下室。海嘯一來,直接全部淹掉,無一幸免。同時,應急供電設計的第三道屏障——廠外供電也失效了——海嘯將核電站外的輸電線路全部毀壞,整個電網癱瘓了。
那么,核電站還剩下最后一道屏障,就是蓄電池組。這跟我們數據中心管理員最熟悉的UPS道理是一樣的。核電站的蓄電池能夠撐八小時。八小時內必須恢復電力,否則不堪設想。
至此,層層供電保障在“天有不測風云”的情況下,幾乎全軍覆沒。但是,最終爭取到了八個小時的寶貴時間。但是在這八個小時的時間里,“人禍”開始彰顯威力。
人禍!
首先是問題的嚴重性在層層信息傳遞中丟失了。核電站第一時間向東電公司總部求援,而總部因為怕丟面子,再向政府發出求援過程中,嚴重隱瞞了事態的嚴重性。
第二是居然遇到了兼容問題。日本各個電力公司的供電系統互不兼容,比如東電使用60赫茲頻率,而最先趕到支援的移動發電機組是50赫茲的,根本不能使用。
第三是疏于演練。從前的災難演練都是在紙面上進行的,生死關頭之際竟沒人知道如何接入備用電源,最終還是支援人員自己研究圖紙,白白耽誤了最重要的幾個小時的時間。
更令人憤怒的是,為了避免報廢反應堆的幾億美元的損失,東電公司還是決定采用向空氣中泄壓,而不使用大量注入加硼海水的終極手段,以保住核反應堆,結果表明這根本就無法阻止災難的發生。
2011年3月12日15時36分,福島核電站一號機組首先爆炸。隨后是二號機組的小爆炸。東電仍然試圖讓奇跡發生,遲遲不肯注入海水,以免損毀正在步其后塵的三號機組。然后就是又一次不可避免的爆炸。至此,東電公司才開始動員疏散。疏散工作進行得不慌不忙,是因為東電公司還在安慰說民眾,事故不會對環境產生太大影響。直到日本政府派自衛隊接管撤離疏導工作,才意識到了事故的嚴重性。
警鐘!
至此可以得出結論福島核電站事故,雖然是天災引起,實際上都是人禍。那么,對于作為為企業信息系統容災的我們來說,可以學到什么呢?
1.大家應該明白,災難最可怕的是它的連鎖反應,這會導致災難不斷擴大和升級。容災過程中所有決策的核心,不是去“希望”災難不會升級;而恰恰相反,是去按照最壞的場景假設,以決策如何避免災難升級。本來以最快速度不惜代價接入電力就可以確保事故不必發生;當冷卻失敗后不惜損毀反應堆就可以防止核污染;當核污染無法避免時及時通報盡全力疏散就可以避免更大的損失。但是當事人做出一系列錯誤的決策,恰恰是因為“希望”災難不會擴大和升級。
2.不要把所有希望都寄托在雙活、多活的架構上。多活可以輕松面對一些災難,但對另外一些災難完全束手無策。數據中心的多活更是如此。
3.預案要設想各種災難的具體情況。福島災難最開始的原因是他們執行的預案是針對地震的而非海嘯。
4.預想災難時要充分考慮本地的具體情況。福島的海堤高度是依據1960年智利大地震的數據設計的。但日本地震調查研究促進會發現因為地質結構不同,福島很有可能面臨高得多的海嘯,督促東電公司需加高防護海堤。但是東電以耗資巨大,并且理論中預測的海嘯實際發生率太低為由,未采取任何行動。
5.多種手段防止災難。福島在災難設計上用了多道屏障保障電力供應。如果沒有這些屏障連最初的八個小時都不會有。
6.必須充分考慮兼容性問題。電力系統還會互不兼容的問題大概只有日本才會出現。但是這正好為我們IT容災提了醒,因為IT系統上面臨的兼容性問題遠比電力系統更復雜。
7.充分演練。如果核電站之前有過哪怕一次全面演練,就不會出現備用電力無人能夠接入的尷尬。
8.保證真實信息的準確流通。沒有完整確切的信息就無法準確決策。試想如果日本政府了解到時間的緊迫性,調動所有資源和力量,在蓄電池耗盡前接入電力應該是可以做到的。
9.真的災難發生時,我們要考慮的不是系統或者本公司的損失而是整個社會的損失。東電公司恰是由于一次次錯誤決策盡失人心。
最后,讓我們一起努力,而不只是祈禱,不要讓這樣的災難再次發生。