如何解決 CloudFormation 中的變更集錯誤?

1 分的閱讀內容
0

當我嘗試將資源匯入 AWS CloudFormation 堆疊時,我收到錯誤訊息。

簡短說明

根據您收到的錯誤類型,完成本文章相關章節中的步驟。

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請確認您使用的是最新的 AWS CLI 版本

解決方法

對輸出錯誤進行疑難排解

**「建立此變更集時發生錯誤。**作為匯入操作的一部分,您無法修改或新增 [Outputs]」

將資源匯入堆疊時,就會發生此錯誤。當使用透過 CloudFormation 主控台輸出的資源匯入範本建立新的堆疊時,也會發生這種情況。請嘗試下列疑難排解步驟:

  1. 將最新 CloudFormation 範本的 Outputs (輸出) 區段與您的堆疊目前正在使用的範本進行比較。兩個範本中的 Outputs (輸出) 區段必須相同。 如果值不相同,請更新最新範本,以符合目前範本 Outputs (輸出) 區段中的值和輸出。

**重要事項:**匯入操作不能包含對 Outputs(輸出) 中 Logical ID (邏輯 ID)、Description(說明)、Value(值)、Export (輸出) 和其他屬性的新增及修改。

  1. 匯入操作完成後,使用 Outputs (輸出) 組態中所需的變更更新堆疊。

對堆疊屬性的身分驗證錯誤進行疑難排解

「呼叫 CreateChangeSet 操作時發生錯誤 (ValidationError): 作為匯入操作的一部分,您無法修改或新增 [Tags]」

當您使用 AWS CLI 或 AWS SDK 建立包含已修改或已新增堆疊屬性的匯入類型變更集時,就會發生此錯誤。

請嘗試下列疑難排解步驟:

  1. 確認所包含用於變更集建立操作的堆疊屬性與目前的堆疊屬性值同步。

**重要事項:**請勿更新或新增任何新的屬性值。

  1. 匯入資源之後,透過單獨的更新作業更新您的屬性。

對已修改的資源錯誤進行疑難排解

「建立此變更集時發生錯誤。 您已修改範本中未匯入的資源 [ResourceName]。匯入操作期間無法執行更新、建立或刪除操作。」

當您在資源匯入操作期間修改現有資源時,就會發生此錯誤。在匯入操作期間,您無法建立、更新和刪除資源。

請嘗試下列疑難排解步驟:

  1. 建立更新類型變更集,而不是匯入類型變更集。這會顯示資源變更的來源。

  2. 使用與現有資源相同的 Resources (資源) 規格,並僅新增要匯入至範本的適當資源。

對要匯入的資源清單錯誤進行疑難排解

當您使用 AWS CLI 或 AWS SDK 建立匯入類型變更集時,通常會發生下列錯誤。

「呼叫 CreateChangeSet 操作時發生錯誤 (ValidationError): 資源 [<ResourceName>] 從 ResourceToImport 清單中遺失」

如果您收到前述錯誤,請嘗試下列疑難排解步驟:

在您的 CloudFormation 範本中,驗證您是否正在將實體 ID 傳遞至想要匯入至堆疊的所有資源的 ResourceToImport 屬性。

「呼叫 CreateChangeSet 操作時發生錯誤 (ValidationError): 必須提供至少一個要匯入的資源」

如果您收到前述錯誤,請嘗試下列疑難排解步驟:

驗證您是否在 AWS CLI 命令中包含 --resources-to-import,或在 API 呼叫中包含 ResourceToImport。此外,請務必列出要匯入的所有資源。

**重要事項:**您必須將實體 ID 傳遞給所有要匯入的新資源。

相關資訊

從現有資源建立堆疊

將現有資源匯入堆疊

支援匯入和偏離偵測操作的資源

使用 CloudFormation 管理現有資源

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