為什麼 CloudFormation 堆疊停留在 UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS 或 UPDATE_COMPLETE_CLEANUP_IN_PROGRESS 狀態?

1 分的閱讀內容
0

我的 AWS CloudFormation 堆疊停留在 UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS 或 UPDATE_COMPLETE_CLEANUP_IN_PROGRESS 狀態。我想讓堆疊進入 UPDATE_ROLLBACK_COMPLETE 或 UPDATE_COMPLETE 狀態。

簡短說明

在以下情況時,CloudFormation 堆疊會停留在 UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS 或 UPDATE_COMPLETE_CLEANUP_IN_PROGRESS 狀態:

  • CloudFormation 仍在移除舊資源,或者由於相依性問題而無法移除該資源。
  • 清理資源暫停是因為巢狀堆疊的同層級堆疊無法更新或復原。

解決方法

檢查堆疊狀態

  1. 開啟 CloudFormation 主控台
  2. 在瀏覽窗格,選擇堆疊
  3. 選擇停留在 UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS 或 UPDATE_COMPLETE_CLEANUP_IN_PROGRESS 狀態的堆疊。
  4. 檢查堆疊名稱旁邊是否具巢狀標籤。
  5. 選擇堆疊的資源索引標籤,然後檢查是否有任何資源處於 DELETE_IN_PROGRESS 狀態。
    注意: 狀態欄會顯示資源狀態。

如堆疊名稱旁邊具巢狀標籤,請根據疑難排解巢狀堆疊區段完成步驟。

如堆疊名稱旁邊無標籤,請根據疑難排解非巢狀堆疊區段完成步驟。

疑難排解巢狀堆疊

如堆疊具有一項以上資源處於 DELETE_IN_PROGRESS 狀態,請檢查資源狀態。或者,請遵循為什麼 CloudFormation 堆疊停留在 CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、UPDATE_ROLLBACK_IN_PROGRESS 或 DELETE_IN_PROGRESS 狀態?中的檢查 AWS CloudTrail 日誌區段所述步驟。

資源可能因以下原因而停留在 DELETE_IN_PROGRESS 狀態:

  • 資源需額外時間才能刪除。例如,相較於其他資源,像 AWS::RDS::DBInstanceAWS::CloudFront::Distribution 這類資源需要更長的時間刪除。
  • 其他資源相依於您的資源。例如,CloudFormation 堆疊以外的其他資源可能使用 Amazon Elastic Compute Cloud (Amazon EC2) 安全群組 。使用 AWS 管理主控台檢查資源無手動建立的相依項。

注意: CloudFormation 會先嘗試刪除資源三次,然後略過資源並繼續清理程序。

如堆疊無任何資源處於 DELETE_IN_PROGRESS 狀態,請完成以下步驟:

  1. 開啟 CloudFormation 主控台
  2. 從導覽窗格選擇堆疊,然後選擇您的堆疊。
  3. 在堆疊的概觀索引標籤,選擇根堆疊區段的堆疊。
  4. 狀態區段,檢查根堆疊的狀態。

如根堆疊處於 UPDATE_IN_PROGRESS 或 UPDATE_ROLLBACK_IN_PROGRESS 狀態,則堆疊的其他相依性資源仍會更新。在更新所有相依性資源 (包括巢狀堆疊資源) 之後,CloudFormation 便會啟動清理程序。

如根堆疊處於 UPDATE_ROLLBACK_FAILED 狀態,在堆疊進入 UPDATE_ROLLBACK_IN_PROGRESS 狀態之後,請識別無法復原的第一個資源。若要識別此資源,請在 CloudFormation 主控台檢查根堆疊的事件索引標籤。

如無法復原資源非巢狀堆疊,請完成當 CloudFormation 堆疊停留在 UPDATE_ROLLBACK_FAILED 狀態時,如何進行更新?中所述步驟。

如無法復原的資源是巢狀堆疊,請完成下列步驟:

  1. 巢狀堆疊進入 UPDATE_ROLLBACK_IN_PROGRESS 狀態之後,識別無法復原的第一個資源。若要識別此資源,請在 CloudFormation 主控台檢查巢狀堆疊的事件索引標籤。如資源仍是巢狀堆疊,請針對巢狀堆疊重複此步驟,直到您識別無法復原的資源為非巢狀堆疊為止。
  2. 繼續復原程序,直到堆疊進入穩定狀態。

**重要事項:**如果您在 ContinueUpdateRollback 作業期間略過資源,CloudFormation 會將指定資源的狀態設定為 UPDATE_COMPLETE。接著 CloudFormation 會繼續復原堆疊。在復原完成之後,已略過資源的狀態會與堆疊範本的資源狀態不一致。在再次更新堆疊之前,請更新資源讓彼此保持一致。否則,後續堆疊更新可能失敗,且堆疊將無法復原。

疑難排解非巢狀堆疊

如堆疊具有一項以上資源處於 DELETE_IN_PROGRESS 狀態,請使用 AWS 管理主控台檢查資源狀態。或者,請遵循為什麼 CloudFormation 堆疊停留在 CREATE_IN_PROGRESS、UPDATE_IN_PROGRESS、UPDATE_ROLLBACK_IN_PROGRESS 或 DELETE_IN_PROGRESS 狀態?中的檢查 AWS CloudTrail 日誌區段所述步驟。

注意: 狀態欄會顯示資源狀態。

如無資源處於 DELETE_IN_PROGRESS 狀態,請使用適用 CloudFormation 的 AWS Service Health Dashboard 尋找操作問題。


相關資訊

使用巢狀堆疊

更新復原失敗

AWS 官方
AWS 官方已更新 2 年前