如果我的 CloudFormation 堆疊停留在 UDPATE_ROLLBACK_FAILED 狀態,該如何予以更新?

1 分的閱讀內容
0

我的 AWS CloudFormation 堆疊停留在 UPDATE_ROLLBACK_FAILED 狀態。

簡短說明

如果您的堆疊在更新失敗之後停留在 UPDATE_ROLLBACK_FAILED 狀態,則唯一可以對堆疊執行的動作就是 ContinueUpdateRollbackDeleteStack 操作。這是因為 CloudFormation 需要您進一步的輸入,以確認堆疊與堆疊嘗試復原至的範本不同步。若要重試復原並解決錯誤,可以使用 ContinueUpdateRollback

**提示:**若要解決錯誤,您可能需要提高限制、變更許可或修改其他設定。如需導致更新復原失敗的常見錯誤相關資訊,請參閱更新復原失敗

在某些情況下,重試復原並不能解決錯誤。在這些情況下,您必須略過資源,並在 CloudFormation 範本中確認這些資源不再反映所需的狀態。若要略過造成復原失敗的資源,請完成解決方案區段中的下列步驟。

解決方案

您可以使用 CloudFormation 主控台或 AWS Command Line Interface (AWS CLI) 將堆疊復原至工作狀態。

**注意事項:**如果您在執行 AWS CLI 命令時收到錯誤訊息,請確定您使用最新版本的 AWS CLI

CloudFormation 主控台

1.    開啟 CloudFormation 主控台

2.    在導覽窗格中,選擇堆疊

3.    從堆疊名稱資料欄中,選取停留在 UPDATE_ROLLBACK_FAILED 狀態的堆疊。

4.    如果您不想略過資源,請選擇堆疊動作,然後選擇繼續更新復原

-或-

如果您要在復原期間略過 FAILED 資源,請完成以下動作:

1.    從堆疊名稱資料欄中,選取停留在 UPDATE_ROLLBACK_FAILED 狀態的堆疊。

2.    選擇堆疊動作,然後選擇繼續更新復原

3.    在繼續更新復原對話方塊中,展開進階疑難排解

4.    在要略過的資源 - 選用區段中,選取您要略過的資源。

5.    選擇繼續更新復原

AWS CLI

在 AWS CLI 中,執行 continue-update-rollback 命令。例如:

$ aws cloudformation continue-update-rollback --stack-name awsstackname123 --resources-to-skip awsfaultyresource123

**注意事項:**將 awsstackname123 取代為您的堆疊名稱。將 awsfaultyresource123 取代為資源的邏輯 ID。

**重要事項:**CloudFormation 會將指定資源的狀態設為 UPDATE_COMPLETE。然後,CloudFormation 會繼續復原堆疊。復原完成之後,已略過資源的狀態會與堆疊範本中的資源狀態不一致。在執行其他堆疊更新之前,請先更新堆疊或資源,使其彼此保持一致。如果不這樣做,後續的堆疊更新可能會失敗,並且堆疊變得無法恢復。

如果您的巢狀堆疊必須復原為工作狀態,請參閱使用 ResourcesToSkip 復原巢狀堆疊階層


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