從絕望到希望:微盟的驚魂168小時
“我們倖免於這次’天災’,卻不料一場’人禍’讓我們處於無比艱難的境地。”2月27日,微盟創始人孫濤勇說出這句話時,微盟正面臨公司歷史上最大的危機。2月25日,微盟在港交所發布一則自願性公告,對外公佈2月23日19點以後公司SaaS業務生產環境和數據遭到破壞的消息;
2月28日,微盟恢復了所有的SaaS業務生產環境,但沒有找回全部的備份數據,而是僅恢復了微站產品的備份數據;3月1日20點,數據才全部找回。
如果這部分數據無法找回,那對微盟的影響將難以想像。2013年創立的微盟,於2019年1月登陸港交所,根據其2019年中期財報,SaaS業務的收入佔微盟總收入33.4%,毛利潤佔比48.5%。
事實上,微盟此次遇到的並非員工誤操作導致的數據丟失,而是一次人為惡意破壞。此前,有位多業內人士向記者表示,這種情況下想完全恢復如此大規模的數據,幾乎是不可能的事情,但微盟很幸運。從數據丟失到數據找回,微盟經歷了驚魂168小時。
數據消失
2月23日下午6點多,微盟服務器發出故障報告,排查後發現,所有服務器都處於服務無法響應的狀態。緊接著,技術人員重啟了其中一台服務器,結果發現系統內所有的數據都不見了。
“這個時候情況已經非常緊張,因為服務器是大面積出現故障,這可能有兩個原因,一是被入侵,二是被故意破壞。”騰訊雲運維中心和客戶服務部門負責人徐勇州表示。
騰訊云隨即安排兩條業務線同時進行進一步排查,一條線是服務器團隊,他們繼續對服務器進行檢查,最終確定,微盟服務器上所有文件已全部丟失;另一條線是安全團隊,他們通過與微盟的技術人員合作,定位到是一個經授權的賬號進入數據庫進行了刪除操作。
做技術工作的人有時相互開玩笑會提到“rm -rf /* ”,這是Linux系統下的文件刪除命令,它將刪除包括系統和數據在內的所有文件,且不可恢復。
而微盟,正是遭遇了這一黑天鵝事件。據介紹,微盟除了數據庫被刪除外,備份的服務器也無法登錄,這意味著備份數據也被一併刪除。原因是公司一位核心運維員工刪除了相關業務數據。
數據恢復其實是一個非常專業的領域,正常來說,都是由企業主導,雲廠商作為協助。但微盟當時已經沒有更多辦法,只能依靠騰訊雲,而騰訊方面面對這個情況,其實信心也不大。
“數百T的數據,連備份都被刪除了,還想在較短的時間內恢復,這在過往的歷史上還沒發生過。我們諮詢了幾家數據恢復公司,他們均表示這種情況能恢復20%左右的數據就非常不錯了。”徐勇州坦言。
緊急救援
通常來說,數據恢復工作可以分為三個階段:第一步,是控制受損面,這是要保證那些有機會找回數據的服務器不要再發生任何問題;第二步,就是通過專業軟件找回數據;第三步,則是公司進行數據驗證、上線聯調等操作。
其中,最關鍵的是前兩步,如果前兩步能順利完成,那數據也就順利找回了。這次微盟的數據找回工作,也基本是按照這個流程。
徐勇州表示,按照第一步,他們首先要為源數據做鏡像拷貝,以保護好源數據。但通過對微盟情況的分析,他們覺得無論是傳統的網絡對拷還是硬件對拷,在時效性和安全性上都無法滿足。
於是,騰訊雲團隊做了一個大膽的決定:越過鏡像拷貝的步驟,將另外一塊系統盤安裝到原有服務器上,通過新系統盤加載OS和數據恢復軟件,直接對服務器進行掃描。
“在進行操作時,很多同事無法到達現場,我們一群人就通過視頻連線,對前方的每一步操作進行確認”,徐勇州回憶說,整個過程非常緊張,因為這是不可逆的過程,做錯任何一步,都無法挽回。
好在最後有驚無險,源數據的讀取工作順利完成,接下來的挑戰是數據提取。2月26日,騰訊雲團隊拿到第一批次數據,導入驗證後也正常,這讓他們非常興奮,感覺勝利近在咫尺。但他們很快發現,這些都是截至2月17日的數據,即便這份數據完整,也仍有一周的數據丟失。
整個團隊的心情隨即再次落入谷底。但事實上,通過前面的一系列操作,已經證明數據仍然存在,只不過當時希望找回的是全部數據。
於是,騰訊雲團隊又重新制定了“打撈”方案。這次,他們決定按照數據公司的恢復方案,對磁盤的每一“塊(block)”都進行掃描,與此同時,騰訊雲團隊還制定了一個B計劃,即從服務器的OS層進入打撈數據。
“B計劃是備用方案,它需要海量的嘗試和數據驗證,非常耗時。一旦需要採用B計劃,那微盟的數據肯定無法按預期完成,具體的時間也難以確定。”徐勇州說。
幸運的是,第一台服務器的第一“塊(block)”便掃描成功,拿到的數據經驗證也是完整的,這說明A計劃可行。只不過,通過這個方式得到的數據大小,都遠遠小於微盟核心數據的大小,這就像被打亂了的巨大拼圖,想要獲得完整數據,需要進行拼接。
“數據越大,拼接的難度也越大。但好在微盟的備份機制比較完整,數據類型也相對統一,最後通過一系列技術手段,終於完成了拼接工作,微盟的數據也成功找回。”徐勇州說。
3月2日,微盟發佈公告稱,截至2020年3月1日晚8點,在騰訊雲的協助下,公司備份的數據已經找回,並將於3月2日凌晨2點至上午8點進行數據恢復上線演練,於3月2日晚10點至3月3日上午9點,進行數據恢復上線。
3月3日上午,微盟宣布,截至2020年3月3日上午6點,公司的SaaS業務數據已恢復上線。
敲響警鐘
數據丟失,微盟損失慘重。在2月25日正式披露數據丟失後,微盟的股價連續三日大幅下跌,從6.18港元一度跌至4.8港元,跌幅超20%。而針對商家,微盟則準備了1.5億元的賠付資金,並提供了現金賠付和流量賠付兩種賠付方式。
一位信息安全專家告訴記者,人為因素,現在已經是引發企業數據安全問題的最主要導火索,有些就是員工的一個誤操作,導致服務器崩潰或者刪除了核心數據庫,另外還有就是像微盟遇到的惡意破壞,這種危害性更大。
針對這一問題,徐勇州向記者表示,企業的數據安全不能僅依靠哪一項單獨策略,而是要有一整套完整的體系,且每一個環節都不能有疏忽。相比傳統的數據管理,在雲上,數據的安全將會得到更多保障。
比如通過雲賬號管理權限的管控,可以讓企業對賬戶下資源的訪問權限做到粒度可控,比如允許某些子賬號只擁有某個COS存儲桶的讀權限,而另外一個賬號擁有該COS存儲對象的寫權限等,這樣可以大大降低誤操作或非必要操作引起的數據損壞、丟失的風險。