如果托管区域包含非必需记录,CloudFormation 将无法删除堆栈,如何避免这种情况?

如果托管区域包含非必需记录,CloudFormation 将无法删除堆栈,如何避免这种情况?

我编写了一个 CloudFormation 模板,它创建了一个完整的环境,其中包括创建 VPC、HostedZone、子网、自动缩放组等......

所创建的且作为 ASG 成员的服务器在首次启动时会运行用户数据脚本,除了执行许多其他任务之外,每个实例还会在新创建的 HostedZone 中注册自己。

一切都很完美。

问题是当我将堆栈标记为删除时,它失败(DELETE_FAILED),原因是 CloudFormation 无法删除 HostedZone。

即使您尝试手动删除包含超过所需记录(NS 记录)的托管区域,您也会收到一条错误消息,提示您需要先删除区域中所有非必需的记录,然后才能删除该区域。

这也发生在 CloudFormation 中,这就是“删除失败”的原因。

CloudFormation 中的错误如下所示:

The specified hosted zone contains non-required resource record sets and so cannot be deleted.

我想知道是否有一种解决方法可以避免收到“删除失败”消息并且堆栈会被正确删除?

相关内容