本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
透過復原觸發,您可以在堆疊建立和更新期間 AWS CloudFormation 監控應用程式的狀態,並在應用程式違反您指定的警示閾值時復原該操作。對於建立的每個復原觸發條件,您都要指定 CloudFormation 應監控的 Cloudwatch 警示。CloudFormation 會在堆疊建立或更新操作期間,以及所有資源部署後一段指定的時間量內,監控指定的警示。如有任何警示在堆疊操作或監控期間進入 ALARM
狀態,CloudFormation 將會復原整個堆疊操作。
您可以設定監控時間,從預設的 0 分鐘到最長 180 分鐘。在這段期間,CloudFormation 會在堆疊建立或更新操作部署所有必要的資源之後,監控所有復原觸發條件。如有任何警示在此堆疊操作或監控期間進入 ALARM
狀態,CloudFormation 將會復原整個堆疊操作。接著,以更新操作而言,如果監控期間過期,而且沒有任何警示進入 ALARM
狀態,CloudFormation 會繼續照常處置舊資源。如果您設定監控時間,但未指定任何復原觸發條件,CloudFormation 仍會等待指定的期間,然後再清理更新操作的舊資源。您可以使用此監控期間來執行任何手動堆疊驗證,以及視需要手動取消堆疊建立或更新。如果您設定 0 分鐘的監控時間,CloudFormation 仍會在堆疊建立和更新操作期間監控復原觸發條件;如有警示進入 ALARM
狀態,將會復原操作。接著,對於未發生警示的更新操作,將會在操作完成後立即開始處置舊資源。
在預設情況下,如果警示進入 ALARM
狀態 (而非 INSUFFICIENT_DATA
狀態),CloudFormation 只會復原堆疊操作。若要在警示進入 INSUFFICIENT_DATA
狀態時,也讓 CloudFormation 復原堆疊操作,請編輯 CloudWatch 警示,將缺少資料視為 breaching
。如需詳細資訊,請參閱「Amazon CloudWatch 使用者指南」中的設定 CloudWatch 警示如何處理遺失資料。
CloudFormation 在更新操作期間復原堆疊時,不會監控復原觸發條件。
您最多可以新增 5 個復原觸發條件。若要新增復原觸發條件,請指定 CloudWatch 警示的 Amazon Resource Name (ARN)。目前,AWS::CloudWatch::Alarm
和 AWS::CloudWatch::CompositeAlarm
類型可用作復原觸發條件。如需 CloudWatch 警示的詳細資訊,請參閱《Amazon CloudWatch 使用者指南》中的使用 CloudWatch 警示。 Amazon CloudWatch
如果找不到指定的 Cloudwatch 警示,整個堆疊操作將會失敗並復原。
請注意,對 CloudWatch 的存取需要登入資料。這些登入資料必須具有存取 AWS 資源的許可,例如擷取資源的 CloudWatch 指標資料。如需詳細資訊,請參閱《Amazon CloudWatch 使用者指南》中的 CloudWatch 的身分驗證和存取控制。 Amazon CloudWatch
在堆疊建立或更新期間新增復原觸發
在堆疊建立或更新期間新增復原觸發 (主控台)
-
建立或更新堆疊時,請在設定堆疊選項頁面的進階選項下,展開回復組態區段。
-
請輸入介於
0
–180
分鐘的監控時間。預設值為0
。 -
指定要用作復原觸發的 CloudWatch 警示或複合警示的 ARN,然後選擇新增 CloudWatch 警示 ARN。
例如,以下是 CloudWatch 警示或複合警示的 ARN:
arn:aws:cloudwatch:
。us-east-1
:123456789012
:alarm:MyAlarmName
-
選擇下一步並檢閱堆疊的詳細資訊。
-
當您準備好時,請選擇提交以建立或更新堆疊。
在堆疊建立或更新期間新增復原觸發 (AWS CLI)
使用 create-stack或 update-stack命令搭配 --rollback-configuration
選項。
例如,下列update-stack命令會將 MyCompositeAlarm
設定為具有 5 分鐘監控期間的復原觸發:
aws cloudformation update-stack --stack-name
MyStack
\ --use-previous-template \ --rollback-configuration \ "RollbackTriggers=[{Arn=arn:aws:cloudwatch:us-east-1
:123456789012
:alarm:MyCompositeAlarm
,Type=AWS::CloudWatch::CompositeAlarm
}],MonitoringTimeInMinutes=5
"
將復原觸發條件新增至變更集
將復原觸發新增至變更集 (主控台)
-
建立變更集時,在設定堆疊選項頁面的進階選項下,展開回復組態區段。
-
請輸入介於
0
–180
分鐘的監控時間。預設值為5
。 -
指定要用作復原觸發的 CloudWatch 警示或複合警示的 ARN,然後選擇新增 CloudWatch 警示 ARN。
例如,以下是 CloudWatch 警示或複合警示的 ARN:
arn:aws:cloudwatch:
。us-east-1
:123456789012:alarm:MyAlarmName
-
選擇下一步並檢閱變更集的詳細資訊。
-
當您準備好時,請選擇建立變更集以建立變更集。
將復原觸發條件新增至變更集 (AWS CLI)
使用 create-change-set 命令搭配 --rollback-configuration
選項。
檢視堆疊的復原觸發
若要檢視堆疊的復原觸發條件,請參閱 Rollback configuration (復原組態) 區段。
-
在堆疊頁面上,從左側的清單中選擇您要檢視的堆疊。
-
在堆疊資訊索引標籤上,展開回復組態區段以檢視回復觸發條件。
檢視變更集的復原觸發
若要檢視變更集的復原觸發條件,請參閱復原組態區段。
-
在堆疊頁面上,從左側的清單中選擇您要檢視的堆疊。
-
選擇變更集索引標籤,然後選擇您要檢視的變更集。
-
選擇輸入索引標籤,並檢視回復組態區段。