amazon-web-services - 使用多个帐户导入现有资源

标签 amazon-web-services aws-cloudformation

我们有四个 AWS 账户用于定义不同的环境:dev、sqe、stg、prd。我们现在才使用 CF,我想将现有资源导入到堆栈中。当我们推出这个时,每个环境都会获得新的堆栈,我想知道是否有更简单的方法来在每个环境中导入资源。而不是最初通过控制台导入资源,同时添加堆栈(如果我们可以通过部署系统进行部署,那就太好了。)

我所希望的是我可以在堆栈定义本身中指定的内容(例如,“这里有一个已经存在的存储桶,取得所有权”),但我没有找到任何东西。目前,最简单的方法似乎是在每个环境中创建一个空堆栈,导入资源,然后正常部署。

此外,当/如果更新失败并且堆栈陷入 ROLLBACK_COMPLETE 状态时会发生什么?删除堆栈后是否需要再次执行此操作?

最佳答案

您所描述的内容听起来与持续集成/持续部署(CICD)管道之后的内容完全相同。您最好设计 cloudformation 模板,然后通过 Code Pipeline 将它们部署到每个环境,而不是尝试将现有资源导入您的帐户。这也将在帐户之间提供清晰的分离,而不是将 stg 资源导入到 prd

serverless-cicd-for-enterprise 是一个很棒的示例和快速入门。这对您来说应该是一个很好的起点。

您不能陷入“回滚完成”状态,因为这是失败的更改集执行的最后一个操作。这意味着它尝试更新,但无法更新,并且已恢复到上次成功的部署。如果这是第一次部署(没有成功的部署),您将需要删除堆栈并重试。但是,如果您已成功部署,则可以运行更新堆栈。

关于amazon-web-services - 使用多个帐户导入现有资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61216212/

相关文章:

amazon-web-services - AWS Elastic Beanstalk 运行状况检查

java - 亚马逊 AWS 教程?

ruby-on-rails - 从 AWS Cloudfront Signed Cookie on Rails 支持的应用程序访问被拒绝 (403)

ruby-on-rails - 如何在 Elastic Beanstalk 中恢复数据库?

amazon-web-services - AWS CloudFormation Transform LanguageExtensions 策略错误

aws-cloudformation - AWS堆栈输出ECR图像名称

amazon-web-services - AWS API Gateway - Lambda 代理未通过 CloudFormation 模板打开

amazon-web-services - 使用 CloudFormation 设置 Lambda 以从 CloudWatch 触发

python - 请求中包含的安全 token 无效。当没有指定配置文件时

amazon-web-services - 如何确认使用 CloudFormation 创建的订阅?