发布于: Apr 16, 2024

AWS CloudFormation 增强了 ChangeSet,以便详细预览 CloudFormation 将在部署中采取的操作。此次发布有助于提高您评估部署是否会导致运行资源意外更改的能力。

今天,ChangeSet 可显示 CloudFormation 将在部署中创建、更新、替换或删除的资源。您可以查看 ChangeSet 以检测意外的资源级更改,例如替换数据库。现在,ChangeSet 还能够显示受影响资源的资源属性和特性(例如删除策略)的前后值。这将允许您在 ChangeSet 审查期间检测意外的属性级更改,例如删除 S3 存储桶加密。

CloudFormation 提供诸如 Ref 和 GetAtt 之类的内置函数,用于在模板中引用资源属性。此外,CloudFormation 还支持对 AWS Secrets Manager 和 Parameter Store(AWS Systems Manager 的一项功能)的内联引用。通过引用,您可以构建可在多个环境中部署的动态模板。目前,ChangeSet 无法在预览计算期间解析引用,也无法对资源替换等更改做出保守的假设。现在,当引用的值在部署之前可用时,ChangeSet 将解析引用,从而以更高的精度预览更改。

首先,在 CloudFormation 控制台中打开现有堆栈,然后从“堆栈操作”下拉列表中选择“创建 ChangeSet”。要从 AWS CLI 或 SDK 访问增强的 ChangeSet,请在调用 DescribeChangeSet API 期间包含 --include-property-values 参数。 增强的 ChangeSet 已在提供 CloudFormation 的 AWS 区域推出。请参阅 AWS 区域表以了解详情。