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

這是 AWS CDK v2 開發人員指南。較舊的 CDK 第 1 版已於 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 堆疊邏輯識別碼

從您的應用程序將資源導入到的 CDK 堆棧的邏輯 ID。這個引數可以在一個命令中多次提供。

類型:字串

必要:否

選項

如需與所有 CDK CLI 指令搭配使用的全域選項清單,請參閱全域選項

--change-set-name STRING

要建立之 CloudFormation 變更集的名稱。

--execute BOOLEAN

指定是否執行變更集。

預設值true

--force, -f BOOLEAN

根據預設,如果範本 diff 包含更新或刪除,則 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 工具組堆疊名稱