當前位置: 主頁 > 國內 >

        混沌工程如何控制爆炸半徑?掌動智能為你揭秘!

        時間:2023-02-04來源:互聯網 作者:編輯 點擊:
        在數字化時代,IT系統成為業務發展的主要載體,其可靠性直接影響業務的可持續性。隨著系統架構逐漸向微服務架構演化、開發效率以及系統擴展性的答復提高, 系統的復雜性 隨之增

        在數字化時代,IT系統成為業務發展的主要載體,其可靠性直接影響業務的可持續性。隨著系統架構逐漸向微服務架構演化、開發效率以及系統擴展性的答復提高,系統的復雜性隨之增長。傳統的測試方法已經不能全面覆蓋系統所有的行為,測試的有效性也隨之大打折扣。

        為了保障系統穩定運行,很多企業都上了“容災方案”以及各種“監控告警手段”。但都是“被動響應”,并且沒有任何一個團隊或個人,可以保障自己的“容災方案”、“監控告警手段”在任何情況下都能夠正常生效。同時,業務規模的不斷增長使得服務之間的依賴性帶來的不確定性也呈指數級增長。在這種復雜的服務調用網中,任何一個環節出現異常變化,都有可能導致整個業務無法運行。SRE(Site Reliability Engineering/Engineer,站點可靠性工程師)發現“混沌工程”是非常有效的“主動預防”手段。

        混沌工程

        混沌工程是一門對系統進行實驗的學科,旨在了解系統應對生產環境中混亂狀況的能力,建立對系統的信心,其目的是在系統缺陷導致中斷等危機發生前,發現系統缺陷。

        混沌工程的基礎是經驗主義,但實驗高于測試,驗證高于清查。混沌工程原則中的高級原則首次描述了混沌工程的黃金標準。高級原則如下:

        ●建立關于穩態行為的假說

        ●多樣化地引入現實世界的事件

        ●在生產環境中進行實驗

        ●持續運行自動化實驗

        ●最小化爆炸半徑

        最小化爆炸半徑

        在實際的混沌工程實驗操作中,最小化爆炸半徑目標與所面對的復雜系統的上下文高度相關。在某些系統中這可能意味著使用影子流量,也可能是將對業務有重大影響的請求排除在實驗之外。因此,如何精準的控制/測量爆炸半徑已經成為混沌工程實驗的核心。

        下文將為您揭示掌動智能實施團隊是如何在混沌工程的實驗中控制爆炸半徑的。

        爆炸半徑控制

        由于混沌工程實驗可能會給業務系統帶來風險,所以對于爆炸半徑的控制要始終貫穿于整個實驗過程:從實驗設計階段、實驗執行階段、到結束實驗階段,在整個實驗生命周期中,我們應該時刻牢記“最小化爆炸半徑”這一點。下文將分階段為大家展示各時延階段常見的爆炸半徑控制方法。

        一、實驗設計階段

        “凡事預則立,不預則廢”,在實驗設計階段,最重要的是要討論清楚實驗的范圍,并跟相關團隊做好溝通,調整每個人的思維模式以保持對實驗認知的一致性。

        在實驗設計階段,常見的“最小化爆炸半徑”控制方法有如下幾種:

        1、確定合理的實驗范圍

        明確實驗范圍是在混沌工程實驗生命周期中控制爆炸半徑最基礎的手段。在確定實驗范圍時,我們要根據“實驗假設”進行充分考慮,為滿足“實驗假設”,我們要注入故障的目標對象到那個級別,比如:節點、node、pod、或者是進程。一般情況下,我們會在滿足“實驗假設”的情況下,選擇最小的故障注入級別。

        2、設置準確的觀測指標

        準確的觀測指標,有助于混沌工程時延過程中控制爆炸半徑。觀測指標的設計一般會從如下三個方面進行考慮:

        業務性指標能否反映業務狀況的關鍵指標,比如:每秒內成功打開重要活動頁面的用戶數、每秒內關鍵業務交易成功率、關鍵業務的用戶停留時長等。

        應用健康指標能夠反映應用健康狀況的指標,比如:平均用戶操作時延,數據庫連接池可用連接數量等。

        其他系統指標能否反應基礎設施和系統運行狀況的指標,比如:應用服務器和數據庫服務器的CPU利用率,內存利用率等、JVM可用內存大小等。

        3、明確系統處于不良狀態的定義

        在明確混沌工程實驗的范圍和“觀測指標”后,還要明確系統“處于不良狀態”的定義,比如:平均用戶響應時間超過10秒、應用服務器或數據庫服務器CPU使用率達到95以上等。當出現這種情況時,預示著系統即將處于失效狀態或不可用狀態,要及時終止實驗或者調整實驗參數。

        二、實驗執行階段

        由于混沌工程實驗相較于傳統的測試工作有著更強的不確定性,為了避免影響太多用戶正常使用,一般會在實驗進行時進行用戶分流,讓很少一部分用戶參與到實驗中作為實驗組,剩余的用于作為對照組,并且在實驗的執行的過程中,密切關注系統的各項指標反饋,及時調整實驗的參數或者終止實驗。

        1、用戶分流

        在實驗執行階段,精準的用戶分流是一個重要的控制爆炸半徑的手段。這種模式需要前后端配合,比如前端在發送請求時可以帶上一個特殊的標識(可以是,特殊的版本號,或者其他標識),后端根據前端發送請求時帶的標識,進行分流。詳見下圖:

        image.png

        用戶分流后在實驗過程中實時關注“實驗組”和“對照組”的數據,根據實際觀測數據進行實驗參數的調整或終止實驗操作,以達到在實驗執行過程中控制爆炸半徑的目的。

        2、指標采集監控

        由于混沌工程實驗相較于傳統的測試工作有著更強的不確定性,需要對系統運行狀態有更好的把控,除了實驗前進行用戶分流外,還需要在實驗執行的過程中密切關注在實驗設計階段,設計的“觀測指標”的變化,關注系統是否出現告警或業務異常。如果發現系統失效,可以隨時終止實驗執行。

        3、調整實驗參數

        實驗執行的過程中,可以根據“觀測指標”的波動情況,隨時調整實驗參數,改變實驗的影響范圍和強度,如指標波動不明顯,可適當增加實驗強度。如系統發生大范圍失效,難以定位故障原因,則可適當降低實驗強度或終止實驗。

        一般我們在創建實驗的時候,對實驗“添加防護策略”,在實驗的過程中,根據監控指標進行實驗參數的調整,或者終止實驗。

        image.png

          三、結束實驗階段

        在實驗終止后,需要確保沒有殘留的進程,并且需要對系統在實驗結束后,繼續觀測一段時間,確保各項關鍵指標(業務指標、應用健康指標、系統資源指標等)都恢復正常。

        結 語

        隨著IT技術的更新以及業務發展,IT系統的復雜度也隨之提高,傳統的IT系統穩定性保障技術也需要隨之更新以解決新架構下面臨的新問題。而混沌工程通過向系統注入隨機和不可預知行為的受控實驗來識別系統的脆弱點,大大地提升了IT系統的穩定性。在我們實際進行混沌工程實驗時,除了將“最小爆炸半徑”貫穿于整個實驗過程中,還需要配合使用“可觀測性平臺”、“業務壓測工具”等工具或技術,組合搭建系統穩定性保障平臺,全方位保障系統的可靠性和連續性。有興趣的朋友,歡迎關注廣州掌動智能官網具體了解“三位一體超級混沌工程解決方案”。

        頂一下
        (0)
        0%
        踩一下
        (0)
        0%
        ------分隔線----------------------------
        發表評論
        請自覺遵守互聯網相關的政策法規,嚴禁發布色情、暴力、反動的言論。
        評價:
        文章導航
        推薦內容
        主站蜘蛛池模板: 日本最新免费二区| 精品久久久久久亚洲综合网| 在线成年人网站| 中文字幕日韩欧美一区二区三区| 欧美大香线蕉线伊人久久| 六月丁香色婷婷| 高清不卡毛片免费观看| 国产黄在线观看免费观看不卡| 中文字幕一区二区三区人妻少妇| 欧美V国产V亚洲V日韩九九| 伊人一伊人色综合网| 色综合久久中文字幕网| 国产白嫩美女在线观看| 99国内精品久久久久久久| 成年人视频网址| 久久精品女人的天堂AV| 欧美日韩国产人成在线观看| 全免费A级毛片免费看网站| 青娱乐在线播放| 国产精亚洲视频| 91麻豆爱豆果冻天美星空| 强波多野结衣痴汉电车| 久久亚洲欧美国产精品| 果冻传媒电影在线| 亚洲欧美日韩久久精品| 男人扒开女人下身添免费| 四虎国产精品免费久久久| 高清一级做a爱免费视| 国产精品久久久久久久伊一| 99久久99久久精品免费观看| 干妞网在线观看| 中文无遮挡h肉视频在线观看| 日韩精品免费一级视频| 亚洲国产一区在线观看| 波多野つ上司出差被中在线出| 公交车老师屁股迎合我摩擦| 蜜桃视频无码区在线观看| 国产成人精品97| youjizz国产| 国产精品高清一区二区人妖| av在线亚洲欧洲日产一区二区|