AWS CloudFormation
User Guide (API Version 2010-05-15)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

最佳实践

查看 AWS CloudFormation 最佳实践

定义模板

  • 定义要在多个区域内的多个账户中标准化的模板。

  • 创建模板时,如果在同一账户的多个区域中创建了全局性资源 (如 IAM 角色和 Amazon S3 存储桶),请确保全局资源没有命名冲突。

  • 一个堆栈集有一个模板和参数集。与堆栈集关联的所有账户中创建的堆栈都相同。在创作模板时,使其足够精细以便您能够实现控制与标准化的良好平衡。在此版本中,您无法为每个账户或区域自定义堆栈,除非已在该模板中为每个账户或每个区域配置进行编码。

  • 建议您将模板存储在 Amazon S3 存储桶中。

创建堆栈集或将堆栈添加到堆栈集

  • 在将大量堆栈实例添加到堆栈集之前,验证是否能将堆栈实例添加到初始堆栈集。

  • 选择适用于您的使用案例的部署 (推出) 选项。

    • 对于更传统的部署,请将 Maximum Concurrent Accounts 设置为 1,并将 Failure Tolerance 设置为 0。在 Region Order 列表中将影响最小的区域设置为第一位。从一个区域开始。

    • 要更快地进行部署,请根据需要增大 Maximum Concurrent AccountsFailure Tolerance 的值。

  • 针对堆栈集的操作可能需要花费大量时间,具体取决于包含的堆栈实例数量。

更新堆栈集中的堆栈

  • 更新堆栈集将始终涉及所有堆栈实例。如果您在两个区域中各有 20 个账户,则您将有 40 个堆栈实例,并且所有实例都将在您更新堆栈集时进行更新。

    要测试模板的更新版本,建议您使用更新后的模板创建测试堆栈集,然后添加几个测试账户并部署模板以先测试堆栈集。

  • 由于您无法仅更新堆栈集中的选定堆栈,因此,要更精细地控制对堆栈集内的各个堆栈的更新,请计划创建多个堆栈集。

  • 更新包含大量堆栈的堆栈集可能需要花费大量时间。在此版本中,一次仅允许对堆栈集执行一项操作。计划您的更新,以便不会阻止您在堆栈集上执行其他操作。