如何让我的 AWS::ECS::Service 资源退出 UPDATE_IN_PROGRESS 或 UPDATE_ROLLBACK_IN_PROGRESS 状态?

1 分钟阅读
0

我对 AWS::ECS::Service 资源的 AWS CloudFormation 堆栈更新卡滞在 UPDATE_IN_PROGRESS 或 UPDATE_ROLLBACK_IN_PROGRESS 状态。

简短描述

当您的 Amazon Elastic Container Service (Amazon ECS) 服务无法启动任务时,该服务可能会卡滞在 UPDATE_IN_PROGRESSUPDATE_ROLLBACK_IN_PROGRESS 状态。

以下是 Amazon ECS 服务无法启动新任务的常见原因:

  • 容器映像问题
  • 缺乏启动任务所需的资源
  • 负载均衡器运行状况检查失败
  • 实例配置或 Amazon ECS 容器代理问题

无法启动任务的 Amazon ECS 服务可能导致 AWS CloudFormation 卡滞在 UPDATE_IN_PROGRESS 状态。然后,几个小时后,CloudFormation 会回滚到以前的配置。如果在堆栈回滚到先前配置的过程中导致堆栈故障的问题仍然存在,则堆栈将卡滞在 UPDATE_ROLLBACK_IN_PROGRESS 状态。最后,堆栈更改为 UPDATE_ROLLBACK_FAILED 状态。

CloudFormation 堆栈可能需要几个小时才能稳定下来。要更快地稳定堆栈,请完成以下步骤。

**重要事项:**以下解决方法旨在帮助您快速稳定 CloudFormation 堆栈,无需等待堆栈超时。该解决方法不适用于生产环境,因为 Amazon ECS 服务与 AWS CloudFormation 的已知状态不同步。要在您的 Amazon ECS 服务和 AWS CloudFormation 堆栈之间同步资源,请直接更新堆栈

解决方法

更改 Amazon ECS 服务的任务数

  1. 打开 Amazon ECS 控制台
  2. 选择您的集群。
  3. 选择服务,然后选择 Update(更新)。
  4. Number of tasks(任务数量)设置为 0,然后保存配置。

确定为什么 Amazon ECS 服务无法启动新任务

  1. 打开 Amazon ECS 控制台
  2. 选择您的集群。
  3. 选择服务,然后选择 Events(事件)。
    **注意:**Events(事件)部分显示您的服务不稳定的原因。

解决您发现的问题

根据您发现的问题选择解决方案:

AWS 官方
AWS 官方已更新 1 年前