【问题标题】:When AWS ECS Container service changed state?AWS ECS 容器服务何时更改状态?
【发布时间】:2019-04-28 04:51:05
【问题描述】:
我使用 CodeBuild 将容器部署到 AWS ECS 集群。
在 CodeBuild 中,我使用“aws ecs register-task-definition”和“aws ecs update-service”来注册任务定义并使用新任务定义更新服务。我订阅了更改 ECS 集群状态的 SNS,并按以下顺序收到状态通知:
- “等待运行”
- “跑到跑”
- “运行到停止”
- “停止到停止”
关于AWS documentation 我理解 PENDING to RUNNING 和 RUNNING to STOPPED 的状态意味着 ECS Agent 接收到新的任务开始。
我的问题是其他状态是什么意思?
【问题讨论】:
标签:
amazon-web-services
amazon-sns
amazon-ecs
【解决方案1】:
ECS 任务有两种状态。 lastStatus 表示当前任务状态。 desiredStatus 表示目标状态。
在任务启动和停止期间,会省略4个事件:
- (lastStatus: PENDING)-> (desiredStatus: RUNNING):任务计划运行
- (lastStatus: RUNNING)-> (desiredStatus: RUNNING):任务已启动。事件中会有更多的数据,例如网络信息,只有在任务开始后才可用。
- (lastStatus: RUNNING)-> (desiredStatus: STOPPED): 任务计划停止
- (lastStatus: STOPPED)-> (desiredStatus: STOPPED): 任务已停止