在事件偵測與回應中測試上線的工作負載
警示擷取 完成後,AWS 事件偵測與回應就會開始監控您的工作負載,並傳送 Go-Live 確認。從現在開始,您的工作負載會受到主動監控。
警示測試會驗證您的已上線警示是否如預期與 AWS 事件偵測與回應互動、觸發適當的執行手冊,以及任何其他必要的動作,例如自動建立案例 (若您在警示擷取期間選取的話)。
測試為選用,但強烈建議這樣做。您負責在真實事件發生之前,驗證您的回應安排。
測試選項
AWS 事件偵測與回應提供兩個測試選項。
選項 1:排定的 GameDay (建議)
排定的 GameDay 是即時端對端模擬,呈現實際事件期間可能發生的情形。AWS 事件偵測與回應會依照您制定的執行手冊步驟,讓您深入了解實際事件可能發生的情形。GameDay 是您提出問題或精進指示,以改善參與度的機會。
若要排程 GameDay,請完成下列步驟:
-
通知 AWS 事件偵測與回應偏好日期和一段 1 小時的時間,包括時區。提供至少 48 小時的前置時間。
-
規劃 GameDay 的資源,包括您的 SRE/Ops 團隊和上報聯絡人。
GameDay 時程表:
-
您和 AWS 事件偵測與回應加入通話。
-
您停用警示動作 (如適用)。
-
您使用 如何測試您的警示 中的指示,手動將警示設為 ALARM 狀態。
-
AWS 事件偵測與回應確認收到警示通知。
-
AWS 事件偵測與回應會回應警示,並聯結執行手冊中制定的橋接器。
-
您和 AWS 事件偵測與回應確認 GameDay 成果。
選項 2:離線警示測試
您隨時可單獨測試警示,不需排程通話。觸發警示會根據您的執行手冊聯絡 AWS 事件偵測與回應,就像發生實際事件一樣。
若要執行離線警示測試,請完成下列步驟:
-
為防止不經意的動作,請停用任何 Amazon CloudWatch 警示動作。
-
使用 如何測試您的警示 中的指示觸發警示。
-
在 5 分鐘內,系統會代您建立支援案例,而 AWS 事件偵測與回應會依照執行手冊中指定的方式與您聯絡。
-
通知 Incident Manager 您正在進行離線警示測試。
-
Incident Manager 會確認收到哪些警示狀態變更,並驗證回應安排。
若未在 5 分鐘內建立支援案例,則提交事件請求以手動聯絡 AWS 事件偵測與回應進行故障診斷。
如何測試您的警示
Amazon CloudWatch 警示
注意
您用於警示測試的 AWS Identity and Access Management 使用者或角色必須具有 cloudwatch:SetAlarmState 許可。
使用 AWS Command Line Interface 或 AWS CloudShell 手動將警示設定為 ALARM 狀態。這些命令會變更警示狀態,但不會影響您的工作負載。
為了防止不經意的動作,例如 Amazon EC2 執行個體重新啟動,請在變更警示狀態前停用任何 CloudWatch 警示動作。您可以在測試完成後重新啟用 CloudWatch 警示動作。若要進一步了解停用或啟用警示動作,請參閱《Amazon CloudWatch API 參考》中的 DisableAlarmActions 和 EnableAlarmActions。
停用警示動作。
aws cloudwatch disable-alarm-actions --alarm-names "ExampleAlarm" --regionus-east-1
將警示狀態設定為 ALARM:
aws cloudwatch set-alarm-state --alarm-name "ExampleAlarm" --state-value ALARM --state-reason "Testing AWS Incident Detection and Response" --regionus-east-1
測試後重新啟用警示動作:
aws cloudwatch enable-alarm-actions --alarm-names "ExampleAlarm" --regionus-east-1
警示狀態會在幾秒鐘內自動恢復為 OK。
複合警示
set-alarm-state 命令不保證複合警示會恢復為 OK 狀態。最佳實務是在測試後驗證複合警示的狀態。若要手動重設複合警示,請使用下列命令:
aws cloudwatch set-alarm-state --alarm-name "ExampleCompositeAlarm" --state-value OK --state-reason "Testing AWS Incident Detection and Response" --regionus-east-1
若要進一步了解手動變更 CloudWatch 警示的狀態,請參閱 Amazon CloudWatch API 參考中的 SetAlarmState。
若要進一步了解 CloudWatch API 操作所需的許可,請參閱 Amazon CloudWatch 許可參考。
第三方 APM 警示
使用 Datadog、Splunk、New Relic 或 Dynatrace 這類第三方應用程式效能監控 (APM) 工具的工作負載,需要不同的指示來模擬警示。
-
在 APM 中停用警示動作,以防止不經意的動作。
-
修改您的警示閾值或比較運算子,以強制警示進入 ALARM 狀態。這樣會觸發 AWS 事件偵測與回應的承載。
-
測試完成後,將閾值或比較運算子的變更復原,以將警示還原為 OK 狀態。
重要成果
測試成功後:
確認警示擷取,且您的警示組態正確。
AWS 事件偵測與回應收到警示。
此時會建立支援案例,且您指定的聯絡人也會收到通知。
AWS 事件偵測與回應可依照您指定的電話會議方式與您聯絡。
測試期間產生的所有警示和支援案例都會獲得解決。
常見問答集
- 警示測試是否必要?
-
否。測試是選用的,但強烈建議您在實際事件發生之前,驗證端對端回應安排。
- 我的工作負載是否會受到影響?
-
否。不過,在測試期間會觸發警示上設定的任何警示動作,除非您將其停用。在測試之前停用警示動作,以防止不經意的影響。
- 誰會在測試期間收到通知?
-
在排定的 GameDay 期間,執行手冊中的所有聯絡人和上報路徑都會收到通知以進行驗證。在離線警示測試期間,只會通知警示上線期間指定的初始聯絡人。
- 是否可透過電子郵件回覆案例更新?
-
否。支援 案例通訊的電子郵件副本會從無回覆地址傳送。若要更新案例,請使用 AWS Support Center Console
。 - 如何在 go-live 後請求 GameDay?
-
回覆現有的上線支援案例 (若有的話),或建立 在事件偵測與回應中請求變更已上線的工作負載。