AWS re:Invent 2018 — Chaos Engineering for Modern Applications on AWS

smalltown
smalltownslowmedia
Published in
4 min readNov 26, 2018

Background

第一天第一場選到有關 Chaos Engineering 的分享,之前比較深入聽到關於該主題是在去年的 re:Invent 2017 由 Netflix 所分享 (傳送門),這一堂的主講人為大神 Adrian Cockcroft ,記得今年他來台灣時,還不小心有跟他吃到飯XD

Disaster Recovery

傳統私有資料中心的災難復原,不外乎會提到 RPO (Recovery Point Objective)以及 RTO (Recovery Time Objective);Adrian 也稍微提了一下,而在真的遇到災難時,除了資料的復原之外,其實 Switching 是很痛,而且還不一定會成功的,為了確保一切是可行的,可能必須要有年度大演習,季度小練習…等

Gremlin — Failure As A Service

就在講到傳統做法有多辛苦的時候 Guest Speaker 就上台了,開始介紹他們公司的產品 Gremlin,一個可以讓 Chaos Engineering 變成自動化流程的服務,譬如可以設定好掉封包的機率,Kubernetes Pod 死掉的情況…etc 在這些前提下,開發者就可以接著去測試應用程式所展現出來的行為,是不是符合預期,譬如是不是還可以正常運作,只是變得比較慢;或是應該要出現的 Error Handling 有沒有正常的呈現出來,現場看完 Demo,老實說滿想用用看的XD 因為以前當 QA 的時候要做這些 Error Handling Test Case 的 Setup 跟Teardown 其實是很累的,尤其是某些 Test Case 根本做不出來…

Epidemic Examples

而平常在設計的時候,就要去思考現有的設計在遇到問題時,該如何解決,譬如 Linux 作業系統發生問題,自己的應用程式是不是有能力跑在 Windows 上,DNS 要如何設計才能避免遇到問題…

Contiunous Chaos Engineering

但在把 Service 都逐漸的往雲端般的過程中,什麼東西都可以 Cross Zone/Region,Cloud Resource 的管理也都可以透過 API 來自動化,所以其實傳統的 DR 應該漸漸的會被淘汰掉 (除了維護困難之外,有些關鍵點施行起來也不簡單),取而代之的當然就是 Chaos Engineering,而且要做到 Contiunous 的喔,CI/CD 是要包多少東西啊 (累倒)

Reflection

去年聽到的概念,今年就有 Startup 以此為主題出發當成服務在賣錢了,果然當產業一大的時候,任何需求都相對的會被重視,美國的軟體進展跟在飛一樣,不過既然 Service 都做出來了,可以直接拿來用就好,站在巨人的肩膀上看東西有效率很多 = =+

--

--

smalltown
smalltownslowmedia

原來只是一介草 QA,但開始研究自動化維運雲端服務後,便一頭栽進 DevOps 的世界裏,熱愛鑽研各種可以提升雲端服務品質及增進團隊開發效率的開源技術