You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Amazon ECS蓝绿部署无状态变更事件发送至EventBridge问题求助

排查Amazon ECS蓝绿部署未触发状态变更事件的方案
  • 注意蓝绿部署的事件归属
    ECS蓝绿部署是和CodeDeploy集成实现的,原生ECS Deployment State Change事件只针对滚动更新模式。蓝绿部署的状态变更事件属于CodeDeploy,对应的EventBridge规则应该匹配:

    { "source": [ "aws.codedeploy" ], "detail-type": [ "CodeDeploy Deployment State Change" ] }
    

    直接去EventBridge搜索CodeDeploy相关事件,或查看CodeDeploy控制台的部署记录,确认事件是否生成。

  • 核对ECS服务的部署配置
    进入ECS服务详情页,检查服务配置里的部署类型是否为「蓝绿部署(使用CodeDeploy)」,同时确认关联的CodeDeploy应用、部署组存在且配置正确(比如绑定了目标ECS集群、服务,负载均衡规则无误)。

  • 验证EventBridge规则范围
    若使用默认事件总线,确保规则没有错误限定为aws.ecs源。可以临时创建一个宽松规则(仅匹配source: aws.codedeploy),测试是否能接收到事件。

  • 检查IAM权限有效性

    • 执行aws ecs describe-service --cluster <集群名> --service <服务名>时,确认所用IAM身份拥有ecs:DescribeServices权限,且资源范围覆盖目标集群和服务。
    • 控制台查看服务事件标签页时,需要额外的codedeploy:GetDeployment权限,因为蓝绿部署事件会关联CodeDeploy的部署记录。
  • 确认部署操作是否真的触发
    手动触发一次蓝绿部署(比如更新任务定义版本),去CodeDeploy控制台查看是否有对应的部署记录。如果没有,说明部署未真正触发,需要检查任务定义是否确实更新、服务的部署触发条件是否正常。

  • 检查事件总线权限策略
    进入EventBridge控制台的默认事件总线页面,查看权限策略是否允许codedeploy.amazonaws.com发送事件,避免因权限拦截导致事件无法进入总线。

内容的提问来源于stack exchange,提问作者Rofler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 00:58:11