簡體   English   中英

AWS CDK:如何將資源部署到不同的賬戶?

[英]AWS CDK: how to deploy resources to different accounts?

是否可以使用 CDK 將資源部署到兩個不同的 AWS 賬戶?

作為一個簡單的例子,假設有 2 個鏈接的資源(可能是 2 個不同的 IAM 角色),需要部署到賬戶accountAaccountB 它們是相互關聯的,因此它們的生命周期應該聯系在一起(即它們是同時創建和銷毀的,我不應該運行兩個部署操作)。 我希望能夠在部署時指定資源的去向,而不是在綜合時。

使用 Terraform(通過兩個不同的provisioner定義)可以輕松實現此要求。 我如何使用 CDK 實現這一點? 這可以在單個堆棧中實現,還是每個目標帳戶一個堆棧的 CDK 模型? 一個簡單的例子是什么樣的?

是的,這是可能的。 您需要將環境配置對象傳遞給堆棧道具。

從文檔:

AWS CDK 應用程序中的每個 Stack 實例都與環境 (env) 顯式或隱式關聯。 環境是要部署堆棧的目標 AWS 賬戶和 AWS 區域。

用法:

const envEU  = { account: '2383838383', region: 'eu-west-1' };
const envUSA = { account: '8373873873', region: 'us-west-2' };

new MyFirstStack(app, 'first-stack-us', { env: envUSA, encryption: false });
new MyFirstStack(app, 'first-stack-eu', { env: envEU, encryption: true  });

更多信息 在這里

如果您想將同一堆棧中的 2 個不同資源部署到 2 個不同的帳戶,目前尚不支持此操作。 您需要為每個資源創建不同的堆棧並相應地傳遞環境對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM