首页 > 解决方案 > 如何将 AWS CDK 堆栈部署到多个账户?

问题描述

AWS CDK 堆栈以基于环境的账户或区域为目标,详情请点击此处。这是将一个堆栈部署到多个目标帐户的应用程序示例:

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

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

我的问题是如何部署这两个堆栈 - 是否可以将它们部署为单个操作?如果是这样,使用什么凭据以及这 2 个帐户需要什么角色?

理想情况下,我希望能够执行一个命令来跨所有帐户部署所有堆栈:

cdk deploy ...

还是只能通过 2 个步骤进行部署?

cdk deploy first-stack-eu --profile=profile_for_account_2383838383
cdk deploy first-stack-us --profile=profile_for_account_8373873873

标签: amazon-web-servicesamazon-cloudformationaws-cdk

解决方案


在 cloudformation 中,您可以使用Stack Sets进行多账户和多区域部署。

但是,根据 GitHub 问题,CDK 尚不支持此功能:


推荐阅读