混沌工程,一種革命性且受到國際業界注目的新興軟體安全驗證方式



混沌工程(Chaos Engineering)顧名思義,就是以人為方式有意無意地干擾、弄亂系統的完整性,讓系統陷入「混沌」狀態,藉此進行整體系統容錯率評估,以及探討潛在漏洞及可恢復性。

混沌工程最早由Netflix導入運用,並以自家系統從本機端轉移到雲端為契機,進行此一策略的驗證;後來Netflix也將混沌工程的運用成果對外推廣,並獲得各國軟體、雲端、資安等業界矚目,並開始朝業界標準化邁進。

無預警停機解方:混沌工程

首創混沌工程的Netflix,隨著訂閱數和影片庫的不斷成長,Netfix也遇到了機房轉移、流量過載、無預警停機等威脅因子,因此Netflix開發團隊必須設想出一種能夠在無預警停機狀態下儘可能減少停機衝擊的方法,在停機維護的同時來尋找潛在的安全漏洞或效能瓶頸。

Netflix進行了一系列的實驗,利用各種人為有意或無意的可控式干擾,讓一部分的伺服器停擺或超載、陷入混沌狀態,接著蒐集和分析這些事故的成因,找出具體可行的補救方法,並消弭足以影響伺服器正常運作的不穩定因子。

 

資料來源: (Dumiak, 2021)

圖 1 Netflix與行動版App

 

2023年將有4成企業導入混沌工程

自從混沌工程受到業界矚目後,國際各大雲端和網路服務龍頭也隨之跟進。根據國際諮詢顧問機構Gartner的預測,到了2023年,將有40%的企業組織導入渾沌工程,並應用於DevOps之中,且預計能減少20%的非預期停機時間。

另外,中國信息通信研究院也在2021年推出了《混沌工程實踐指南》,藉由彙整國外混沌工程實務,做為推動中國軟體業界導入混沌工程的建議指引,由此可見混沌工程同樣獲得中國相關業界的矚目。

混沌工程自從獲得中外軟體業界逐步導入後,臺灣軟體業界所依存的基礎設施和軟硬體平台,由於要面臨未來更密集的不穩定因子威脅,而導致業務停擺等衝擊和損失,期盼臺灣業界也能及時導入混沌工程,針對各種內外部威脅及早做出應變處置方針。

 

封面圖片來源:123RF圖庫授權 

參考資料

  1. Costello, K. (2021, October 28). The I&O Leader’s Guide to Chaos Engineering. Retrieved from Gartner: https://www.gartner.com/smarterwithgartner/the-io-leaders-guide-to-chaos-engineering
  2. Dumiak, M. (2021, March 3). Chaos Engineering Saved Your Netflix. Retrieved from IEEE Spectrum: https://spectrum.ieee.org/chaos-engineering-saved-your-netflix
  3. 中國信息通信研究院. (2021年12月21日). 混沌工程實踐指南(2021年). 擷取自 中國信息通信研究院: http://www.caict.ac.cn/kxyj/qwfb/ztbg/202112/t20211223_394449.htm

 

 

 

 

延伸閱讀