Linux中國
在 Kubernetes 中使用混沌工程
混沌工程是由科學、規劃以及實驗組成的。它是一門在系統上進行實驗的學科,用來建立系統在生產中承受混亂條件能力的信心。
首先,我會在文章導論部分解釋混沌系統如何工作。
如何開始學習混沌系統呢?
以我的經驗,開始學習混沌系統的最好方式是觸發一個此前生產中出現的事故來進行實驗。使用過去的數據,制定一個計劃,以相同的方式破壞你的系統,然後建立修復策略,並確認結果滿足你預期。如果計劃失敗,你就有了一種新的實驗方式,並朝著快速處理問題的新方式前進。
最重要的是,你可以隨時記錄所有內容,這意味著,隨著時間的推移,整個系統將被完整記錄下來,任何人都可以值守而無需太多加碼,每個人都可以在周末好好休息。
你要在混沌工程中做什麼?
混沌系統實驗運行背後有一些科學依據。我記錄了其中一些步驟:
- 定義一個穩定狀態: 使用監控工具來搜集當系統沒有問題或事故時,看起來功能正常的數據。
- 提出假設或使用先前的事故: 現在你已經定義了一個穩定狀態,請提出一個關於在事故或中斷期間會發生(或發生過)的情況的假設。用這個假設來得出一系列將會發生的事故,以及如何解決問題的理論。然後你可以制定一個故意引發該問題的計劃。
- 引發問題: 用這個計劃來破壞系統,並開始在真實環境中測試。收集破壞時的指標狀態,按計劃修復,並追蹤提出解決方案所需時長。確保你把所有的東西都記錄下來,以備將來發生故障時使用。
- 試圖推翻你的假設: 實驗中最精彩的部分是嘗試推翻你的思考或計劃。你要創建一個不同的狀態,看看你能走多遠,並在系統中生成一個不同的穩定狀態。
確保在你在另一個系統中生成的破壞因素前,建立一個處於穩定狀態的控制系統。這將使你更容易在實驗前、期間和之後發現各種穩定狀態的差異。
混沌工程需要什麼?
這有一些初學混沌工程很好的工具:
- 良好的文檔編製方法
- 一個捕捉你系統是否處於穩定狀態的監控系統
- Grafana
- Prometheus
- 混沌工程工具:
- Chaos mesh
- Litmus
- 之後的文章我會介紹更多
- 一個假設
- 一個計劃
去搞破壞吧
現在你已經掌握了基礎,是時候去安全的摧毀你的系統了。我計劃每年製造四次混亂,然後努力實現每月一次的破壞。
混沌工程是一種很好的實踐,也是推進你的內部文檔保持最新的好方法。此外,隨著時間的推移,新升級或應用程序部署將更加順暢,你的日常生活管理將通過 Kubernetes 變得更加輕鬆。
via: https://opensource.com/article/21/5/kubernetes-chaos
作者:Jessica Cherry 選題:lujun9972 譯者:Donkey 校對:turbokernel, wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive
對這篇文章感覺如何?
太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
More in:Linux中國
如何通過 VLC 使用字幕
使用 VLC 媒體播放器播放和管理字幕的新手指南。
Unix 桌面:在 Linux 問世之前
僅僅開源還不足以實現開放,還需開放標準和建立共識。
Valve 對於 Ubuntu 的 Snap 版本的 Steam 並不滿意:原因何在
你可能會發現,Snap 版本的 Steam 並不如你期待的那樣好,你怎麼看?
Wine 9.0 發布,實驗性地加入了 Wayland 驅動
Wine 的這個新版本正在為未來做好準備!