本頁說明 Fault Injection Testing 中的排除視窗,以及如何使用這些視窗,在重要業務營運期間保護應用程式和服務。
排除時段可讓您進一步控管韌性測試時間表。排除期是指您定義的一段時間範圍,在這段時間內,系統會禁止啟動新的錯誤插入實驗。這項功能可協助您在重大事件期間保護應用程式和服務,例如:
- 流量高峰時段或大量銷售活動
- 重大系統遷移或升級
- 重大維護期間
排除期生效時,Fault Injection Testing 會封鎖在定義範圍內啟動新實驗的所有嘗試。排除期生效前已執行的實驗,仍可繼續進行直到完成。
排除期的運作方式
範圍和指定目標
設定排除期時,請選取特定 Cloud 區域。啟用後,排除期會只禁止在指定區域啟動新實驗,無論使用哪種實驗範本都一樣。
啟用和持續時間
建立排除期時,您會定義排除期的參數,但不會立即啟用。您必須明確啟動視窗,才能啟用這項功能。
排除期結束後,實驗就會恢復運作,方法有兩種:
- 自動到期:每個排除時間範圍都會設定持續時間。啟用後,視窗會在經過這段時間後自動停用。系統會計算結束時間 (開始時間 + 持續時間),並在目前時間超過結束時間後,停止封鎖新實驗。
- 手動停止:您可以手動停止目前排除期,不必等到排定的時間結束。如果重要期間比預期更早結束,且您想立即恢復測試,這項功能就非常實用。
在 Google Cloud 控制台中管理排除時段
繼續操作前,您必須具備 roles/faulttesting.operator 角色。
建立及設定排除期
- 在 Google Cloud 控制台中,前往「Fault Injection Testing Exclusion windows」(故障注入測試排除視窗) 頁面。
- 按一下「建立排除時間範圍」。
- 指定「雲端區域」、「時間長度」,並視需要輸入「說明」。
- 點選「建立」。
手動控管排除期
您可以直接在 Google Cloud 控制台中,手動觸發任何已設定排除期的「開始」和「停止」動作。
自動啟用排除期
舉例來說,您可能想配合排定的維護期間或週期性活動。如要自動啟用排除期,請按照下列步驟操作:
- 建立排除時間範圍後,請複製 UI 中顯示的
StartExclusionWindowRPC 的 HTTPS 網址。 - 使用 Cloud Scheduler 等排程服務設定工作,在您選擇的時間將要求傳送至這個網址。
使用 Google Cloud CLI 管理排除視窗
您可以使用 gcloud alpha fault-testing
exclusion-windows 指令管理排除視窗資源。
建立排除期
如要建立排除時間範圍,請使用 create 指令。指定視窗 ID、目標區域和時間長度:
gcloud alpha fault-testing exclusion-windows create EXCLUSION_WINDOW_ID \
--location=REGION \
--duration=DURATION \
[--description="DESCRIPTION"]
更改下列內容:
EXCLUSION_WINDOW_ID:視窗的專屬 ID (例如black-friday-freeze)。REGION:這個時間範圍適用的 Google Cloud 區域 (例如us-central1)。DURATION:有效時間,以秒為單位指定 (例如86400s代表 24 小時)。DESCRIPTION:(選用) 視窗用途的說明。
範例:
gcloud alpha fault-testing exclusion-windows create black-friday-freeze \
--location=us-east1 \
--duration=259200s \
--description="Exclusion window for Black Friday to Cyber Monday sales period"
刪除排除期
如要刪除排除時段定義,請使用 delete 指令:
gcloud alpha fault-testing exclusion-windows delete EXCLUSION_WINDOW_ID \
--location=REGION
開始排除期
如要啟用已設定的排除時段,請使用 start 指令:
gcloud alpha fault-testing exclusion-windows start EXCLUSION_WINDOW_ID \
--location=REGION
停止排除期
如要提早手動停用有效的排除期,請使用 stop 指令:
gcloud alpha fault-testing exclusion-windows stop EXCLUSION_WINDOW_ID \
--location=REGION
最佳做法
建立排除時間範圍時,請注意下列事項:
- 規劃實驗重疊。請在重要業務期開始前,稍微提前啟動排除期。由於系統允許實驗完成,因此提早開始排除期可確保所有故障都在重要時期開始前清除。
- 使用描述性 ID。使用清楚且有意義的 ID (例如
black-friday-freeze或system-migration-us-east1) 識別視窗的用途和範圍。 - 配合活動類型調整時間長度。將時間範圍長度設為重大事件的預期長度。如果是大型節慶特賣活動,建議設定多天 (例如
259200s3 天)。 - 善用自動化功能。使用 Cloud Scheduler 自動啟用週期性事件或計畫性維護的排除時間範圍,減少手動作業和遺漏風險。
- 維持彈性。請注意,如果重要時期比預期更早結束,您可以使用
stop指令提早結束視窗,立即恢復韌性測試。