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

AWS Fargate服务入站流量正常但无出站健康指标,容器状态Unknown求助

解决方案

一、先搞定主容器健康状态Unknown的问题

这个状态基本是健康检查没配置或者配置错误导致的,而且确实会影响ECS的指标采集逻辑:

  • 前往任务定义给主容器添加健康检查:比如你的应用用8080端口、健康端点是/health,就设置检查命令为CMD-SHELL curl -f http://localhost:8080/health || exit 1,保证该命令能返回0(正常状态码)。
  • 调整健康检查参数:别设置得太苛刻,比如检查间隔30秒、超时5秒、重试3次,避免因应用启动慢或网络波动导致检查失败。
  • 更新任务定义并重新部署,等待几分钟后查看容器状态,正常情况下会变为HEALTHY。

二、解决出站流量指标无法获取的问题

出站流量指标无数据,主要和Service Connect配置、权限、流量路径有关:

  • 确认Service Connect启用了出站指标采集:在服务的Service Connect设置里,必须开启出站流量的指标采集,这类数据会同步到CloudWatch的ECS/ServiceConnect命名空间,可查找OutboundRequestCount、OutboundLatency等相关指标。
  • 检查任务执行角色的权限:必须给ECS任务执行角色添加cloudwatch:PutMetricData权限,否则ECS无法将出站流量指标上报到CloudWatch。可添加如下策略:
{
    "Effect": "Allow",
    "Action": "cloudwatch:PutMetricData",
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "cloudwatch:namespace": "ECS/ServiceConnect"
        }
    }
}
  • 确认出站流量走Service Connect代理:只有通过Service Connect代理转发的流量才会被统计,若服务直接用IP或外部域名访问目标,这部分流量不会出现在Service Connect的指标中。
  • 检查VPC与安全组配置:确保任务所在安全组允许出站到目标服务,VPC路由表配置正确,避免出站流量被拦截,否则即使能正常通信,指标采集也可能异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 21:12:42