aws-cloudformation - 一个 CloudFormation 堆栈还是使用 Export 和 ImportValue 分成多个堆栈?

标签 aws-cloudformation

我已为同一区域内的多可用区 RDS 设置创建了一个堆栈。该堆栈创建了 VPC、子网、IGW、路由表、SecGroup、EC2、RDS EC2 等,目前约有 200 多条线路。

我不知道 Export ParameterFn::ImportValue 我们可以在其中进行跨堆栈引用。我还刚刚了解到,如果堆栈已导出其某些参数并且其他堆栈正在引用它,则无法删除该堆栈。

我向 CloudFormation 专家提出的问题是,保留一个堆栈更实用/专业(因此删除所有资源很容易),还是我们应该将 IAC 拆分为多个相互关联的堆栈?

感谢您的意见,因为我已经为要提供给我的团队的演示准备了此模板,我应该保持原样或将其拆分。

创建了一个堆栈来设置基础架构并一次性创建所有资源。

最佳答案

正确答案可能有很多,因此我会尽力帮助您缩小最适合您的答案范围。

  1. 您可以删除此类堆栈,但它会警告您,因为堆栈依赖于即将删除的堆栈内的资源(但我没有看到这样做的原因)
  2. 每个堆栈的最大资源数为 200,同时该数字可能已发生变化 - 我们遇到了需要许多资源的问题,因此我们采用嵌套堆栈架构进行拆分
  3. 手动删除资源会使堆栈发生漂移 - 这不是一件好事
  4. 删除资源应通过从模板中删除资源并相应地更新堆栈来完成 - 这意味着只有一个堆栈更容易维护,但这又取决于您的用例。

我希望这可以帮助您做出决定。如果没有,请分享更多信息。

关于aws-cloudformation - 一个 CloudFormation 堆栈还是使用 Export 和 ImportValue 分成多个堆栈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58678097/

相关文章:

amazon-web-services - 属性 SubnetIds 的值必须是字符串列表类型错误

amazon-web-services - 如何添加或更改堆栈的标签?

amazon-web-services - 是否可以使用 AWS Data Pipeline 将 RDS 数据库转储到 S3?

amazon-s3 - Cloudformation S3bucket 创建

amazon-web-services - 具有多种服务的 AWS 单一 ApiGateway

amazon-web-services - 如何引用现有子网和现有安全组参数并在 YAML cloudformation 模板中引用它们

amazon-web-services - 启用 Amazon S3 存储桶以使用 SAM 触发 Lambda 函数

aws-lambda - 如何使用现有环境生成 AWS CloudFormation

amazon-web-services - "Bucket Already Exists"重新部署CDK时出错

yaml - 通过 JSON 字符串参数传递 CloudFormation YAML 列表