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

如何启动AWS ECS服务?部署断路器触发报错求助

AWS ECS部署断路器触发问题求助

尝试通过任务定义创建ECS集群及对应服务时,触发了ECS部署断路器,收到错误:

Resource handler returned message: "Error occurred during operation 'ECS Deployment Circuit Breaker was triggered'." (RequestToken: 657c3321-f13a-4213-3a8f-267e8865a914, HandlerErrorCode: GeneralServiceException)

我的任务定义JSON如下:

{  
  "taskDefinitionArn": "arn:aws:ecs:eu-west-1:317470260945:task-definition/task-alberto-django:1",  
  "containerDefinitions": [  
    {  
      "name": "alberto-django-ctnr",  
      "image": "317470260945.dkr.ecr.eu-west-1.amazonaws.com/asm_repository:repo_personal_django",  
      "cpu": 0,  
      "links": [],  
      "portMappings": [  
        {  
          "containerPort": 80,  
          "hostPort": 0,  
          "protocol": "tcp"  
        }  
      ],  
      "essential": true,  
      "entryPoint": [],  
      "command": [],  
      "environment": [  
        ...  
      ],  
      "environmentFiles": [],  
      "mountPoints": [],  
      "volumesFrom": [],  
      "secrets": [],  
      "dnsServers": [],  
      "dnsSearchDomains": [],  
      "extraHosts": [],  
      "dockerSecurityOptions": [],  
      "dockerLabels": {},  
      "ulimits": [],  
      "systemControls": []  
    }  
  ],  
  "family": "task-alberto-django",  
  "executionRoleArn": "arn:aws:iam::317470260945:role/ecsTaskExecutionRole",  
  "networkMode": "bridge",  
  "revision": 1,  
  "volumes": [],  
  "status": "ACTIVE",  
  "requiresAttributes": [  
    {  
      "name": "com.amazonaws.ecs.capability.ecr-auth"  
    },  
    {  
      "name": "com.amazonaws.ecs.capability.docker-remote-api.1.17"  
    },  
    {  
      "name": "ecs.capability.execution-role-ecr-pull"  
    },  
    {  
      "name": "com.amazonaws.ecs.capability.docker-remote-api.1.18"  
    }  
  ],  
  "placementConstraints": [],  
  "compatibilities": [  
    "EXTERNAL",  
    "EC2"  
  ],  
  "requiresCompatibilities": [  
    "EC2"  
  ],  
  "cpu": "1024",  
  "memory": "1024",  
  "runtimePlatform": {  
    "cpuArchitecture": "X86_64",  
    "operatingSystemFamily": "LINUX"  
  },  
  "registeredAt": "2022-10-27T10:15:22.553Z",  
  "registeredBy": "arn:aws:iam::317470260945:root",  
  "tags": [  
    {  
      "key": "ecs:taskDefinition:createdFrom",  
      "value": "ecs-console-v2"  
    },  
    {  
      "key": "ecs:taskDefinition:stackId",  
      "value": "arn:aws:cloudformation:eu-west-1:317470260945:stack/ECS-Console-V2-TaskDefinition-bb050013-6338-4b6e-83a3-54edd1775f3e/41ce7c80-55e0-11ed-bbd1-0add076f7d23"  
    }  
  ]
}

排查方向建议:

  • 集群资源验证:检查ECS集群内EC2实例是否有足够的CPU、内存资源匹配任务定义的cpu:1024和memory:1024配置,同时确认实例处于健康在线状态。
  • 镜像拉取权限与存在性检查:确认ECR镜像317470260945.dkr.ecr.eu-west-1.amazonaws.com/asm_repository:repo_personal_django存在且标签正确;验证ecsTaskExecutionRole是否包含ECR拉取所需权限:ecr:GetDownloadUrlForLayer、ecr:BatchGetImage、ecr:BatchCheckLayerAvailability。
  • 容器启动日志排查:通过AWS控制台或aws ecs describe-tasks命令查看任务启动日志,确认容器是否因端口占用、环境变量缺失、应用启动失败等原因退出。
  • 部署断路器配置调整:检查服务的部署断路器设置,若因连续部署失败触发断路,可临时调整失败次数阈值或手动重置部署状态。
  • 网络配置检查:由于使用bridge网络模式,确认EC2实例安全组允许容器端口80的通信,且实例能正常访问ECR服务(检查VPC端点或路由配置)。

内容的提问来源于stack exchange,提问作者Alberto Sanmartin Martinez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 16:05:58