发布于: Oct 6, 2023

Amazon CloudFormation 推出一项删除策略 RetainExceptOnCreate,该策略可以在堆栈删除过程中保留资源,但不会在堆栈操作回滚过程中保留资源。在堆栈操作期间,如果 CloudFormation 遇到预置故障,例如违反亚马逊云科技账户限制,则会将堆栈回滚到上一个已知稳定状态。在回滚过程中,CloudFormation 会删除在发生故障之前在堆栈中创建的资源。RetainExceptOnCreate 只会保留客户在堆栈操作中删除的资源。它不会保留 CloudFormation 在回滚过程中删除的资源。这使客户能够保护资源,防止意外删除堆栈,同时减少堆栈操作过程中的手动干预。

现在,客户可以使用删除策略 Retain 在堆栈删除过程中保留正在使用的资源。这可以帮助客户在生产环境中防止数据丢失。但是,Retain 也会保留在提供流量之前从堆栈中删除的资源,例如在回滚过程中创建后立即删除的资源。这些资源会对堆栈操作的重试造成干扰。现在,客户可以使用删除策略 RetainExceptOnCreate 保留正在使用的资源,无需手动清除新创建的资源。或者,客户可以使用结合使用新参数 RetainExceptOnCreate 与 CreateStack、UpdateStack 和 ExecuteChangeSet API,以阻止 Retain 在回滚过程中保留资源。这些功能使客户可以通过 CI/CD 操作重试堆栈操作。这样可以更轻松地在测试环境中在模板上进行迭代,从而防止在生产环境中出现人为错误。

RetainExceptOnCreate 现已在由光环新网运营的亚马逊云科技中国(北京)区域和由西云数据运营的亚马逊云科技中国(宁夏)区域推出。

要了解有关删除策略的更多信息,请参阅 DeletionPolicy 文档。要了解有关堆栈操作参数的更多信息,请参阅 UpdateStack 文档