1. 程式人生 > >削減IT投入後,英國航空悲劇了一個週末

削減IT投入後,英國航空悲劇了一個週末

作者介紹

楊志洪,DBAplus社群聯合發起人,新炬網路首席佈道師。Oracle ACE、OCM、《Oracle核心技術》譯者。資料管理專家,擁有十餘年電信、銀行、保險等大型行業核心系統Oracle資料庫運維支援經驗,掌握ITIL運維體系,擅長端到端效能優化、複雜問題處理。現主要從事資料架構、高可用及容災諮詢服務。

這個端午節,對於絕大部分人來說,都非常平靜。對買了英國航空機票的旅行者來說,卻非常懊糟。他們在機場滯留時間有的超過72小時,從圖中可以看出他們非常不開心。

IT系統故障

IT系統故障

原因是英國航空遭遇了重大的IT系統故障。

英國航空

這得多麼重大的IT系統故障,導致英國航空需要2天多時間都不能完全解決呢?

英國航空的執行長克魯茲(Alex Cruz)在27日表示,初步調查認為事故原因跟電腦的電力系統有關。此次故障不僅影響到了英國航空在希斯羅和蓋特威克機場出發來往的航班,還影響到了香港國際機場、北京首都國際機場、上海浦東機場、新加坡樟宜機場、東京成田國際機場和曼谷素萬那普國際機場,所以這是一個全球性的故障,影響了7.5萬旅客。按照英國航空的預計,週二從兩個機場起飛的航班將會全面恢復。

來自BBC的資訊表示:

航空專家佈雷(Julian Bray)對BBC表示,英航的問題似乎癱瘓了負責處理航班升降、處理行李和乘客資料的系統。

對於這次故障,CEO最開始把鍋扔給了電力系統,在29日又解釋說,希思羅附近的資料中心供電短缺,最終導致癱瘓,並且備用系統也無濟於事。不過,隨後“電網公司新聞發言人在接受採訪時表示,英國航空出現電力供應短缺應該是客戶的問題,原因不在他們這邊。希思羅機場新聞發言人也說,機場的私有電網週六沒有出現任何問題。”

同時,克魯茲還表示,沒有受到網路攻擊。

那麼故障最終的真實原因是什麼呢?

跟絕大部分故障一樣,可能最終也不會公佈出來。

但是,用電力供應不足來解釋這樣一個“全球性的故障”,顯然是難以服眾的。

根據 BBC 的報道,2016 年英國航空裁撤了數百名 IT 員工,並將整個 IT 部門外包到了印度。

英國總工會負責航空國家官員 Mick Rix 表示“這些原本完全都能避免的”。2016 年 2 月他曾對英國航空的決定表示抗議。英國航空將 IT 部門外包的決策不僅造成約 800 名員工失業,根據 TechCrunch 的報道,隨後出現的英國航空的新 IT 系統,在過去的一年裡已經崩潰過五次,在 2016 年的 7 月和 9 月,英國航空也曾因為值機系統故障造成了嚴重的延誤。”

那麼,IT外包是罪魁禍首麼?

朋友圈流傳著一個笑話,說蘋果APP越來越不好用了,因為開發主要是印度人。英國航空IT故障頻發,因為維護的是印度人。

印度人顯然也不會背鍋。

作為一個在運維圈混跡了十多年的人來看,核心問題在於公司對IT投入的下降。作為一家老牌的航空公司,IT系統經歷了幾十年的建設和運營,很多系統的維護都得靠“人”,而不是靠“系統”或者所謂的平臺能搞定的。那隨著這些人的被裁,接著轉包,故障的發生也就理所當然了。

在某次D+沙龍閉門會議上,來自國內頂尖雲廠商的同學們也順便談到了這個問題。雲端計算時代,各種裝置、軟體都標準化、自動化、“智慧化”,但你要真以為這樣就萬事大吉,那你就大錯特錯了。他們偶爾也會出現這樣的問題,某臺幾年無人問知的系統,被關機了,自己小組的人都沒反應,突然某個團隊的人會叫起來,配置變更發不出去了。然後,重啟,解決。當然,也會遇到重啟也啟動不了的情況,那當然還是要解決。相對而言,對使用者可能是無感知的。因為大家都是一群傲嬌的人,一遍遍之後,這類問題總會消滅殆盡的。

無獨有偶,就在英國航空CEO克魯茲表示”自己辭職也沒有卵用“的時候(沒錯,也是5月27日),中國國家統計局釋出了2016年的平均工資資料。

工資資料

不出意外的,從各行各業各個層級來說,東部薪水要整體高於其他幾個地區。

可能要稍微有點意外的是,IT行業的薪資超越金融行業在第一位,名義漲幅達到了9.3%。

金融行業

這跟國家提倡大眾創業、萬眾創新有關係,國內的雲端計算、大資料各種IT創業企業層出不窮,IT人才得到重視,拉高了IT行業的薪水的同時,也激發了IT行業的創造和創新能力。當所有的傳統企業都在謀求“網際網路+”或“+網際網路”,都在謀求數字化轉型時,對IT資源和IT人才的需求勢必是一個長期增長的趨勢。

不管是航空公司也好,金融企業也罷,節流固然是一種守成的方法,當大家都大踏步的邁向開源的時代,吝嗇IT投入,給自己帶來的可能不只是一個週末的驚慌,而是給使用者難以抹去的長久的陰影。

回到英國航空的故障,據英國《每日電訊報》的統計,這已是英航電腦系統自去年以來第六次出現故障。對於此次故障,有航空專家指出,英航應該及時啟用備用系統,避免給乘客造成如此大的影響,而CEO克魯茲表示,啟用了備用系統,但是沒有生效。

其實航空公司IT系統故障並非是個案,據不完全統計:

  • 2016年3月22日,全日航空由於IT故障導致了100多個航班取消。原因據說是由於網路問題,UDP通訊異常(壞包增加),導致Oracle RAC叢集異常。
  • 2016年7月,美國西南航空耗時數天,才從一起因為路由器故障導致的系統崩潰事件中緩過氣來。《達拉斯晨報》估算西南航空的IT系統問題造成的損失超過5400萬美元。
  • 2016年8月8日,達美航空IT系統因斷電而癱瘓,達美被迫取消或推遲約2000個航班。達美航空對投資者稱IT系統故障導致它損失了大約1.5億美元。(今年1月發生的暴雪遊戲《爐石傳說》官方宣稱也是由於斷電所致)
  • 2017年1月22日,美聯航的IT系統也出現了故障,導致其航班運營中斷了大概兩個小時。
  • ……

不難看出,IT系統故障時有發生,影響的範圍有大有小。但像英國航空這樣,一年之內連續發生幾次影響極大的故障,還是極為罕見的。

端午節正好看了阿里王堅博士的《線上》,裡面有個觀點很有意思,所有的資料線上才有更意義,離線的價值就很小。對於IT系統更是這個道理,離線就非但沒有價值,而且還造成了很大的問題。

那麼英國航空這樣的故障、這樣的悲劇是可以避免的麼?英國航空的說法是,無法避免,其它航空公司也會同樣會遇到。對於一個有幾百個系統、上萬臺裝置的大型公司來說,故障確實天天可能都有,只看影響面的大小。

但這種影響極大的故障,是可以逐步減少,直至避免的。

而且,這種故障的減少和避免,通常是需要專業服務商的介入和幫助的,因為他們具有大量的類似案例,可以舉一反三,避免類似故障在同一行業甚至是不同行業的反覆出現。

比如說,由於網路原因導致資料庫叢集節點間的UDP壞包增大,最後會造成Oracle RAC節點hang甚至是重啟的故障。不僅是在航空業,在電信行業也是屢屢發生。儘管故障造成的影響會很大,但故障預防卻極其簡單,通過vmstat檢測 UDP failure增長數,每秒超過50發生預警即可。

比如說比特幣勒索。

一方面通過管控,禁止未經稽核的軟體接入生產,一方面通過自動化運維平臺,定期檢查系統物件,在它還未發作之前就把它廢除掉。

在各種航空公司IT故障中,大多數發言人都提到一個問題,就是收購和整合了很多公司後,系統整合出現極大的麻煩,也是導致故障的一個潛在因素。老的系統雖然老,但是穩定,新研發的系統往往才是故障爆發的源頭。

這個說法基本跟我們的運維經驗是吻合的。新系統不穩定的原因,除了業務邏輯導致的問題,就是上線前SQL未經過稽核所致,招商銀行最近的隱私洩露問題就屬於此類。

SQL

這份銀監會的文章是針對2016年11月、12月的手機號碼洩露問題的答覆書。不幸的是,招行在5月27日,發生了A使用者查詢自己資訊時,會顯示B使用者的資訊(而且還可以修改),重新整理還會顯示C使用者的資訊。

伺服器快取要背鍋麼?

我們可以看到,IT故障有其普適性,跟具體行業關係不大。不管是航空,還是運營商,或者是遊戲公司或者是金融行業,我們都得遵循它的基本規律,解決它的基本問題。

它的基本問題,就有6個,簡稱六脈神劍,這是新炬團隊2012年匯美論劍的產物。

每一劍都是為了保命,理解起來並不難。做起來,需要配合具體的實施步驟。

備份管理,有兩層道理。首先是保全資料,另一層是作為高可用方案的最低階存在。更進一步要做到本地高可用,異地災備。說一千道一萬,要平時做演練,不然就跟CEO克魯茲說的一樣,啟用了備用系統,但是沒有用。

活著只是IT的基本要求,每一個IT人都想活得好。

活得好完全靠個人能力是不現實的。所以我們還逐步研發了一些工具/平臺為人賦能:

  • 為解決新系統效能低下問題,上線SQL稽核平臺
  • 為解決人工檢查效率低下問題,上線一鍵巡檢工具
  • 為解決人工倒數誤操作頻發的問題,上線了資料生命週期管理平臺
  • 為解決效能問題被動響應問題,上線了資料庫效能管理平臺
  • 為解決架構複雜、機器眾多、故障難查問題,上線了日誌統一分析平臺
  • 為解決半夜加空間、刪檔案的問題,上線了自動化運維平臺
  • …….

極為重要的是,這些工具介面統一,互聯互通,不會造成額外的運維負擔。

但是,這就一定能解決英國航空的悲劇了麼

未必

文章來知微信公眾號:DBAplus社群