cdk import - AWS Cloud Development Kit (AWS CDK) v2

這是 AWS CDK v2 開發人員指南。較舊的 CDK v1 已於 2022 年 6 月 1 日進入維護,並於 2023 年 6 月 1 日結束支援。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

cdk import

使用AWS CloudFormation 資源匯入將現有 AWS 資源匯入 CDK 堆疊。

使用此命令,您可以取得使用其他方法建立的現有資源,並開始使用 管理這些資源 AWS CDK。

在考慮將資源移至 CDK 管理時,有時可以建立新的資源,例如使用 IAM 角色、Lambda 函數和事件規則。對於其他資源,例如 Amazon S3 儲存貯體和 DynamoDB 資料表等具狀態的資源,建立新的資源可能會對您的服務造成影響。您可以使用 cdk import 來匯入現有資源,並將服務中斷降至最低。如需支援 AWS 的資源清單,請參閱AWS CloudFormation 《 使用者指南》中的資源類型支援

將現有資源匯入 CDK 堆疊
  1. 執行 cdk diff以確保您的 CDK 堆疊沒有待處理的變更。執行 時cdk import,匯入操作中允許的唯一變更是新增要匯入的資源。

  2. 新增要匯入堆疊之資源的建構。例如,為 Amazon S3 儲存貯體新增下列項目:

    new s3.Bucket(this, 'ImportedS3Bucket', {});

    請勿新增任何其他變更。您也必須確保 確切地模擬資源目前擁有的狀態。針對儲存貯體範例,請務必包含 AWS KMS 金鑰、生命週期政策,以及與儲存貯體相關的任何其他項目。否則,後續的更新操作可能無法如預期般執行。

  3. 執行 cdk import。如果 CDK 應用程式中有多個堆疊,請傳遞特定堆疊名稱做為引數。

  4. CDK CLI會提示您傳入要匯入之資源的實際名稱。在您提供此資訊後,匯入將會開始。

  5. cdk import報告成功時,資源將由 CDK 管理。建構組態中的任何後續變更都會反映在 資源上。

這項功能目前具有下列限制:

  • 無法將資源匯入巢狀堆疊。

  • 不會檢查您為匯入的資源指定的屬性是否正確且完整。匯入後,請嘗試開始偏離偵測操作。

  • 依賴其他資源的資源必須一起匯入,或以正確的順序個別匯入。否則,CloudFormation 部署會失敗,並顯示未解析的參考。

  • 此命令使用部署角色登入資料,這是讀取加密預備儲存貯體的必要條件。這需要引導範本的第 12 版,其中包含部署角色所需的 IAM 許可。

用量

$ cdk import <arguments> <options>

引數

CDK 堆疊 ID

要匯入資源之應用程式的 CDK 堆疊建構 ID。此引數可在單一命令中提供多次。

類型:字串

必要:否

選項

如需適用於所有 CDK CLI命令的全域選項清單,請參閱 全域選項

--change-set-name STRING

要建立的 CloudFormation 變更集名稱。

--execute BOOLEAN

指定是否執行變更集。

預設值true

--force, -f BOOLEAN

根據預設,如果範本差異包含更新或刪除,CDK 會CLI結束程序。指定 true 覆寫此行為,並一律繼續匯入。

--help, -h BOOLEAN

顯示命令的cdk import命令參考資訊。

--record-resource-mapping, -r STRING

使用此選項可產生現有實體資源映射到要匯入的 CDK 資源。映射將寫入您提供的檔案路徑。不會執行實際的匯入操作。

--resource-mapping, -m STRING

使用此選項可指定定義資源映射的檔案。CDK CLI將使用此檔案將實體資源映射到資源以進行匯入,而不是以互動方式詢問您。

此選項可以從指令碼執行。

--rollback BOOLEAN

在失敗時將堆疊復原至穩定狀態。

若要指定 false,您可以使用 --no-rollback-R

指定 false以更快速地反覆運算。包含資源替換的部署一律會失敗。

預設值true

--toolkit-stack-name STRING

要建立的 CDK Toolkit 堆疊名稱。

根據預設, 會將名為 cdk bootstrap 的堆疊部署CDKToolkit到指定的 AWS 環境中。使用此選項為您的引導堆疊提供不同的名稱。

CDK CLI使用此值來驗證您的引導堆疊版本。