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

跨ECS集群访问异常:从集群B访问集群A服务出现504超时

问题排查方案

根据你描述的现象(集群B实例可正常访问集群A的ALB端点,但集群B的容器内访问超时,本地运行容器则正常),以下是针对性的排查方向:

  • 检查容器网络模式与DNS解析

    1. 确认集群B任务的网络模式:
      • 若为bridge模式:在容器内执行nslookup <ALB域名>,查看是否解析到ALB的内网IP。如果解析为公网IP,说明容器DNS配置未优先使用VPC内网DNS,导致流量走公网路径,可能触发超时。此时可在任务定义中指定VPC的DNS服务器地址。
      • 若为awsvpc模式:任务会使用独立的弹性网卡,需检查任务所在子网的DNS配置是否正确。
    2. 直接用ALB内网IP在容器内执行curl https://<ALB内网IP> -k(-k用于忽略证书校验),如果能访问,说明问题出在DNS解析;若仍超时,排查TCP层连通性。
  • 任务级安全组与子网路由检查

    1. 查看集群B任务定义是否配置了任务安全组:如果有,确认该安全组允许出站访问443端口到集群A ALB所在的IP段(或VPC整体CIDR)。即使实例安全组允许,任务安全组可能单独限制了流量。
    2. 若使用awsvpc模式,检查任务所在子网的路由表:确保存在指向集群A ALB所在子网的路由,且没有额外的网络ACL拦截443端口的出站/入站流量。
  • 容器内网络栈验证

    1. 在容器内执行ip route,确认默认网关指向正确(bridge模式下应为实例的网桥地址,awsvpc模式下应为子网网关)。
    2. 用telnet <ALB内网IP> 443测试TCP连接:如果连接失败,说明是网络层的连通性问题;如果能连接但curl超时,可能是SSL握手或应用层的问题(比如ALB的安全组未允许容器IP段的访问)。
  • ALB侧配置验证
    确认集群A的ALB安全组是否允许来自集群B容器所在IP段(包括awsvpc模式下任务的弹性网卡IP段)的443端口入站流量。虽然公网访问正常,但内网流量的来源IP范围可能未被添加到ALB安全组的允许列表中。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 01:40:00