規劃您的 AWS FIS實驗 - AWS 故障注入服務

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

規劃您的 AWS FIS實驗

錯誤注入是指透過建立破壞性事件 (例如伺服器中斷或節流) 來強調應用程式在測試或生產環境中的程序。API通過觀察系統的響應方式,您就可以實施改進。當您在系統上運行實驗時,它可以幫助您以受控的方式識別系統性弱點,在這些弱點影響依賴於您的系統的客戶之前。然後,您可以主動解決問題,以幫助防止不可預測的結果。

在開始使用運行故障注入實驗之前 AWS FIS,我們建議您熟悉下列原則和指導方針。

重要

AWS FIS在真實執行真實的行動 AWS 系統中的資源。因此,在開始使用之前 AWS FIS若要執行實驗,我們強烈建議您先在生產前或測試環境中完成規劃階段和測試。

基本原則和指引

在開始實驗之前 AWS FIS,請執行下列步驟:

  1. 識別實驗的目標部署 — 從識別目標部署開始。如果這是您的第一個實驗,我們建議您從生產前或測試環境開始。

  2. 檢閱應用程式架構 — 您必須確定已識別每個元件的所有應用程式元件、相依性和復原程序。從檢閱應用程式架構開始。視應用程式而定,請參閱 AWS Well-Architected 的框架。

  3. 定義穩定狀態行為 — 根據重要的技術和業務指標來定義系統的穩定狀態行為,例如延遲、CPU載入、每分鐘登入失敗、重試次數或頁面載入速度。

  4. 形成假設 — 形成一個假設,說明您期望系統行為在實驗過程中發生什麼變化。假設的定義遵循以下格式:

    If fault injection action 被執行,business or technical metric impact 不應超過 value.

    例如,驗證服務的假設可能如下所示:「如果網路延遲增加 10%,則登入失敗次數增加不到 1%。」 實驗完成後,您可以評估應用程式恢復能力是否符合您的業務和技術期望。

我們也建議您在使用時遵循這些準則 AWS FIS:

  • 始終開始嘗試 AWS FIS在測試環境中。永遠不要從生產環境開始。隨著故障注入實驗的進展,您可以在測試環境以外的其他受控環境中進行實驗。

  • 從簡單的小型實驗開始,例如在一個目標上執行 aw: ec2: stop- instance 動作,建立團隊對應用程式彈性的信心。

  • 故障注入可能會導致真正的問題。謹慎行事,並確保你的第一個故障注射是在測試實例,所以沒有客戶受到影響.

  • 測試,測試和測試更多。故障注入旨在通過精心計劃的實驗在受控環境中實施。這使您可以對應用程序和工具的功能建立信心,以承受湍流條件。

  • 我們強烈建議您在開始之前擁有出色的監視和警報程序。沒有它,您將無法理解或衡量實驗的影響,這對於可持續的故障注入實踐至關重要。

實驗規劃指南

同 AWS FIS,你在你的 AWS 用於測試應用程序或系統在故障條件下如何執行的理論的資源。

以下是規劃您的建議準則 AWS FIS實驗。

  • 檢閱中斷歷史記錄 — 檢閱系統先前的中斷和事件。這可以幫助您建立系統的整體健康狀況和恢復能力的圖片。在您開始在系統上執行實驗之前,您應該解決系統中的已知問題和弱點。

  • 識別影響最大的服務 — 檢閱您的服務,並識別對最終使用者或客戶造成最大影響的服務 (如果使用者或客戶停機或無法正常運作)。

  • 識別目標系統 — 目標系統是您將在其上執行實驗的系統。如果您是新手 AWS FIS或者您以前從未進行過故障注入實驗,我們建議您先在生產前或測試系統上執行實驗。

  • 諮詢您的團隊 — 詢問他們擔心什麼。你可以形成一個假設來證明或反駁他們的擔憂。您也可以詢問您的團隊他們不擔心什麼。這個問題可以揭示兩個常見的謬誤:沉沒成本謬誤和確認偏差謬誤。根據團隊的答案形成假設可以幫助您提供有關系統狀態現實情況的更多信息。

  • 檢閱您的應用程式架構 — 檢閱您的系統或應用程式,並確定您已識別每個元件的所有應用程式元件、相依性和復原程序。

    我們建議您檢閱 AWS Well-Architected 的框架。此架構可協助您為應用程式和工作負載建置安全、高效能、彈性且有效率的基礎架構。如需詳細資訊,請參閱 AWS Well-Architected

  • 識別適用的指標 — 您可以監控實驗對您的影響 AWS 使用 Amazon CloudWatch 指標的資源。您可以使用這些指標來判斷應用程式執行最佳狀態時的基準線或「穩定狀態」。然後,您可以在實驗期間或之後監視這些指標,以確定影響。如需詳細資訊,請參閱使用亞馬遜監控AWS FIS 使用量指標 CloudWatch

  • 為您的系統定義可接受的效能臨界值 — 識別代表系統可接受、穩定狀態的測量結果。您將使用此指標來創建一個或多個代表實驗停止條件的 CloudWatch 警報。如果警報被觸發,實驗將自動停止。如需詳細資訊,請參閱AWS FIS 的停止條件