本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用回滾觸發器在警報洩露時回滾您的 CloudFormation 堆棧
使用回滾觸發程序,您可以在堆棧創建和更新期間 AWS CloudFormation 監視應用程序的狀態,並在應用程序違反您指定的警報的閾值時回滾該操作。針對您建立的每個復原觸發器,您可以指定 CloudFormation 應監視的 CloudWatch 警示。 CloudFormation 在堆疊建立或更新作業期間,以及部署所有資源之後的指定時間,監控指定的警示。如果有任何警示在堆疊作業或監視期間進入ALARM
狀態,請 CloudFormation 復原整個堆疊作業。
您可以設定監控時間,從預設的 0 分鐘到最長 180 分鐘。在此期間,會在堆疊建立或更新作業部署所有必要資源之後, CloudFormation 監視所有復原觸發程序。如果有任何警示在堆疊作業或此監視期間進入ALARM
狀態,請 CloudFormation 復原整個堆疊作業。然後,對於更新作業,如果監視期間到期而沒有任何警示即將陳ALARM
述,則會照常 CloudFormation 繼續處置舊資源。如果您設定監視時間,但未指定任何回復觸發程序,則 CloudFormation 仍會等待指定的時間段,然後再清理舊資源以進行更新作業。您可以使用此監控期間來執行任何手動堆疊驗證,以及視需要手動取消堆疊建立或更新。如果您將監視時間設定為 0 分鐘, CloudFormation 仍會在堆疊建立和更新作業期間監視復原觸發程序,並在警示進入ALARM
狀態時復原作業。接著,對於未發生警示的更新操作,將會在操作完成後立即開始處置舊資源。
默認情況下, CloudFormation 只有在警報進入狀態而不是ALARM
INSUFFICIENT_DATA
狀態時回滾堆棧操作。若要在警示進入INSUFFICIENT_DATA
狀態時還 CloudFormation原堆疊作業,請編輯 CloudWatch 警示以將遺失的資料視為breaching
。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南中的設定 CloudWatch 警示如何處理遺失的資料。
CloudFormation 在更新作業期間回復堆疊時,不會監視回復觸發程序。
您最多可以新增 5 個復原觸發條件。若要新增回滾觸發器,請指定 CloudWatch 警示的 Amazon 資源名稱 (ARN)。目前,AWS::CloudWatch::Alarm
和 AWS::CloudWatch::CompositeAlarm
類型可用作復原觸發條件。如需 CloudWatch 警示的詳細資訊,請參閱 Amazon 使用 CloudWatch 者指南中的使用 CloudWatch警示。
如果指定的 CloudWatch 警示遺失,則整個堆疊作業會失敗並回復。
請注意,存取 CloudWatch 需要認證。這些認證必須具有存取 AWS 資源的權限,例如 CloudWatch 擷取有關資源的指標資料。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南 CloudWatch中的身份驗證和存取控制。
在堆棧創建或更新期間添加回滾觸發器
若要將復原觸發程序新增至堆疊建立或更新
-
請輸入介於
0
–180
分鐘的監控時間。預設值為0
。 -
指定ARN要用作復原觸發器的警示或複合警示,然後選取新增 CloudWatch 警示ARN。 CloudWatch
例如,以下是用ARN於 CloudWatch 警報或複合警報,
arn:aws:cloudwatch:
。us-east-1
:123456789012:alarm:MyAlarmName
-
選取 Next (下一步) 並檢閱堆疊詳細資訊。
-
檢閱堆疊建立設定和堆疊的估算成本後,請選擇 Create stack (建立堆疊) 來啟動您的堆疊。
將倒回觸發程序新增至變更集
若要將倒回觸發程序新增至變更集,請選取堆疊樣板來建立變更集,然後在「還原組態」段落中指定 CloudWatch 警示。
-
在建立或更新變更集期間,在 Configure stack options (設定堆疊選項) 頁面的 Advanced options (進階選項) 下方,展開 Rollback configuration (復原組態) 區段。
-
請輸入介於
0
–180
分鐘的監控時間。預設值為0
。 -
指定ARN要用作復原觸發器的警示或複合警示,然後選取新增 CloudWatch 警示ARN。 CloudWatch
例如,以下是用ARN於 CloudWatch 警報或複合警報,
arn:aws:cloudwatch:
。us-east-1
:123456789012:alarm:MyAlarmName
-
選取 Next (下一步) 並檢閱堆疊詳細資訊。
-
檢閱堆疊建立設定和堆疊的估算成本後,請選擇 Create change set (建立變更集)。
-
請檢閱 Create change set (建立變更集) 模組並選取 Create change set (建立變更集)。
-
(選用) 若要根據變更集完成建立新堆疊,請選擇 Execute (執行),指定您的復原組態,然後選擇 Execute change set (執行變更集)。
檢視堆疊的復原觸發程式
若要檢視堆疊的復原觸發條件,請參閱 Rollback configuration (復原組態) 區段。
-
在 Stacks (堆疊) 頁面上,從左側清單選取您希望檢視的堆疊。
-
在 Stack info (堆疊資訊) 索引標籤上,展開 Rollback configuration (復原組態) 區段。
結果:如果已指定復原觸發條件,則復原觸發條件會顯示在 Rollback configuration (復原組態) 區段。
檢視變更集的倒回觸發程式
若要檢視變更集的復原觸發條件,請參閱復原組態區段。
-
在 Stacks (堆疊) 頁面上,從左側清單選取您希望檢視的堆疊。
-
選取 Change sets (變更集) 索引標籤,然後選取要檢視的變更集。
-
選取 Input (輸入) 索引標籤,然後檢視 Rollback configuration (復原組態) 區段。
結果:如果已指定復原觸發條件,則復原觸發條件會顯示在 Rollback configuration (復原組態) 區段。