對於車諾比核事故, 相信大家應該是印象深刻, 不少反核案例都會舉這個故事. 但是大家知道這個事情是怎樣發生的嗎? 
 
image
 
 
事故的主因為反應爐進行緊急停機後的後備供電測試時, 因操作人員的訓練不足, 最終使功率急劇增加, 破壞反應爐. 最初發生的蒸氣爆炸導致兩人死亡, 往後絕大部分受害者的病因及死因都歸咎於事故中釋放的高能放射線, 然而放射線塵少量放射導致的影響依舊爭論不休.
 
看到這裡, 你可以知道兩件事, (1) 在 production 上做實驗, 即使是核電廠也是會有的. (2) 實驗測試失敗時, 沒有控制得當, 是會死傷慘重的.
 
所以在 混沌工程 中, 如何控制實驗失敗後, 那個受影響的範圍是最小的, 這件事情是十分重要的. 而這個範圍我們稱之為最小化爆炸半徑
 
image
 
那要怎麼確保受影響的範圍是最小的呢?
 
(1) 實驗藥是漸進的
每次實驗都是根據上次的基礎, 再往下增加或擴展, 避免有太多變因無法控制
 
(2) 控制在少量客戶
一開始是少量用戶, 雖然不是全部流量, 但是這會是很好的早期指標, 把大問題或明顯的問題顯處理.
 
(3) 實驗要是自動化的
實驗要是自動化, 避免不知道手動做了什麼, 出事時才好追蹤. 整個實驗時, 也會因為是自動化的, 在心態上是以逸待勞的.
 
(4) 集中實驗
集中在某個地方實驗, 不要一開始就散佈在各地, 增加複雜度或是不可預測性.
 
(5) 要有中止計劃, 並且是自動的
當實驗失敗後, 有沒有辦法在最快時間內, 停止目前的實驗. 下一步如果可以執行災難回覆計畫更好.
 
(6) 實驗時間是在低風險時段
不要挑 營運正忙的時間, 或者同事都不在辦公室的時間. 否則發生事故時, 大家不是很忙, 要不然就是在休假, 無法幫忙立即處理.
 
 
資料來源
arrow
arrow
    文章標籤
    devops chaos engineering
    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()