我是否可以强制删除正在进行回滚的AWS CloudFormation堆栈

Jus*_*tin 27 aws-cloudformation

AWS CloudFormation回滚(例如,UPDATE_ROLLBACK_IN_PROGRESS)一直在进行中,比如超过一个半小时.我想完全删除堆栈或强制停止任何活动.这可能吗?

谢谢!

Sim*_*han 32

阻止堆栈更新/回滚的另一个常见原因是ECS :: Service资源更新中的错误:它看起来不像当前检测到的那样(在某些情况下?).Cloudformation正在等待服务达到稳定状态的服务事件,因此简单地将服务更新为有效的东西(例如,期望的任务为0)将解除阻塞.但是,在发送更多更新以避免出现问题之前,尝试让状态回到Cloudformation所期望的状态.

  • 有类似的问题。使用Cloudformation进行部署:-3小时部署失败-然后3小时再次部署失败我的问题来自于放置限制和所需数量的结合,看起来不错,但我的服务从未稳定过以达到就绪状态。未达到稳定状态将锁定Cloudformation更新和回滚。感谢Simon:将所需的任务计数更改为0,使我能够停止Cloudformation流程。 (2认同)
  • 就我而言:具有重叠资源的两个堆栈都试图回滚但彼此阻塞。将所需的任务设置为0可修复该问题。 (2认同)

f01*_*f01 11

就我而言,它是一个无法删除的 EC2 安全组,因为它是从另一个 EC2 安全组引用的。


mys*_*mys 7

我猜你的堆栈资源被外部改变或删除了。您可以找到以下官方指南。

手动同步资源,以便它们与原始堆栈的模板匹配,然后继续回滚更新。例如,如果您手动删除了AWS CloudFormation尝试回滚的资源,则必须使用与原始堆栈中相同的名称和属性来手动创建该资源

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed

或(如@talentedmrjones所说)

要修复堆栈,请联系AWS客户支持。

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-nested-stacks-are-stuck

就我而言,我可以通过重新创建已删除的资源来停止同样的情况。


wjo*_*dan 0

您将需要调查到底为什么回滚需要这么长时间(例如,是否由于在 CloudFormation 堆栈外部修改的资源丢失,或者自定义资源未能返回预期信号)。