1、01價值分析02混沌工程平臺03自動化閉環演練04攻防演練目錄Content01價值分析2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站價值分析2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站復雜的系統群2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站故障類型機房問題:機房斷電、網絡不通、網絡延遲機器問題:load高、cpu滿、磁盤滿、IO滿中間件問題:zk集群故障、mq故障、數據庫故障、緩存故障依賴問題:下游dubbo/http接口延遲、拋異常應用問題:fullGC、服務下線、日志拖慢、線程池滿2023 DevOp
2、s 國際峰會 暨 BizDevOps 企業峰會 北京站混沌工程介紹概念In software development,a given software systems ability to tolerate failures while still ensuring adequate quality of serviceoften generalized as resiliencyis typically specified as a requirement.However,development teams often fail to meet this requirement due to
3、 factors such as short deadlines or lack of knowledge of the field.Chaos engineering is a technique to meet the resilience requirement.目標 建立系統抵御生產環境中發生不可預知問題的信心。把不確定變確定。2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站混沌工程收益用戶:穩定的用戶體驗測試:提前發現隱患并降低故障復發率開發和運維:提升故障應急效率01、人02、流程故障治理體系:完善故障治理體系,從被動發現轉為主動發現故障應急:驗證報警有效
4、性與及時性,預案的可行性韌性:提升系統容錯、容災能力基礎能力:可監控、可回滾可降級03、系統02混沌工程平臺2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站應用層次架構2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站實踐路徑關機演練機房、中間件實體機虛擬機01應用演練服務依賴故障02攻防演練常態化攻防混沌文化032023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站應用演練技術選型組件支持平臺支持場景開源整體性侵入型特點ChAPVM豐富否好高實驗參照對比ChaosbladeVM/K8S豐富是差(當時只有agent)低簡單易
5、用、擴展性好、社區活躍ChaosMeshK8s豐富是好無云原生、社區活躍2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站依賴關系不健康導致的蝴蝶效應強弱依賴超時是否合理、熔斷是否符合預期、異常是否被處理等強依賴太多,能否降級為弱依賴 目標:弱依賴掛掉,主流程不受影響2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站關鍵點1:依
6、賴關系收集2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站關鍵點2:故障注入編排并行手工控制串行一次性注入多個故障,快速定制化、靈活出問題容易排查ABC2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站演練流程1、服務治理依賴關系收集2、用戶標記依賴關系3、進行強弱依賴演練4、問題修復結果確認0102演練收益1、混沌平臺基礎能力建設2、演練經驗、流程沉淀3、演練系統68個,工時70PD,發現問題136個4、認知統一,價值認可03問題1、覆蓋面低2、人工成本高3、會影響用戶03自動化閉環演練2023 DevOps 國際峰會 暨 BizDevOps
7、 企業峰會 北京站日常周期性01低成本02高覆蓋032023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站自動閉環演練-難點如何保證對線上無損自動觸發如何自動斷言結果如何確保命中率如何確保準確率2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站010203自動化測試平臺自動生成測試用例混沌平臺對壓測流量進行識別,只對壓測流量注入故障,實現在線上無損演練壓測標識流量,線上數據和日志能夠識別壓測標識,進行隔離
8、壓測平臺2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站斷言維度斷言標準斷言方法1、對入口的結果數據進行對比,核心業務字段對比產生斷言結論2、標記核心監控和核心指標,有問題及時熔斷1、對于C端用戶,功能有沒有受到影響2、核心數據有沒有問題:金額、訂單數據鏈路入口級別2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站增量演練命中率90%3.0版本精準case命中率80%2.0版本隨機case命中率45%1.0版本命中概念:故障注入期間,壓測流量打到當前依賴2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站02根據演練結果d
9、iff出的差異點,補充0103和開發確認配置關心忽略節點,進行強弱依賴斷言入口應用自動化平臺獲取初始關心忽略節點2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站自動閉環演練-效果覆蓋21個核心入口,2800個依賴,不合理依賴96個,演練成本由260PD,降低到10PD04攻防演練2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站攻防演練01背景故障處理經驗欠缺故障持續時間長、恢復慢P1P2故障解決時長超時率62.5%02目標提升技術同學故障處理能力完善故障應急預案體系2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站攻防演練 攻擊方注入攻擊點,防守方排查出異常后上報給攻擊方,攻擊方確認攻擊點是否正確正確則得分2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站攻防演練攻擊點編排攻擊點上報攻擊終止積分復盤 場景設計:歷史高頻故障 防守方定位排查后,上報給攻擊方 攻擊方確認,正確則得分 根據定位時長 根據故障難易程度 排名、公示 防守方定位成功 超時自動終止 問題排查、修復2023 DevOps 國際峰會 暨 BizDevOps 企業峰會 北京站ThanksDevOpsDevOps 時代社區時代社區榮譽出品