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

AWS Fargate部署中NLB端口转发异常问题求助

问题根源与修正方案

核心错误原因

你把两个不同端口的服务(React:80、API:8000)放到了同一个目标组里,而NLB的TCP监听器转发请求时,目标组的端口配置逻辑会导致路由混乱:

  • 当NLB的8000端口监听器转发请求到目标组时,目标组会把请求发送到组内所有注册目标的指定端口——如果目标组配置的是固定端口(比如80),就会把8000的请求发到React的80端口;如果配置的是8000,就会发到API的8000,但组里两个目标端口不一致,必然出现随机路由错误。
  • NLB的TCP监听器不具备基于端口匹配目标的能力,同一个目标组里的所有目标都会被视为可转发对象,导致请求偶尔被分配到错误的服务。

正确配置步骤

  • 拆分目标组:创建两个独立的目标组
    • 目标组A:仅注册React容器,目标端口设置为80,健康检查路径可使用/(React首页)
    • 目标组B:仅注册API容器,目标端口设置为8000,健康检查路径用API的健康端点(比如/health)
  • 调整NLB监听器转发规则:
    • 80端口监听器:转发到目标组A
    • 8000端口监听器:转发到目标组B
  • Elastic IP绑定:保持Elastic IP绑定到NLB的公网IP即可,无需额外调整(NLB本身是固定公网入口,绑定后就能维持固定访问IP)

额外注意事项

  • 确保每个目标组的健康检查配置正确,只有健康状态的容器才会被纳入转发范围
  • Fargate服务的安全组要允许NLB所在安全组访问80和8000端口

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 03:32:01