【问题标题】:I am unable to make Post API call in ALB我无法在 ALB 中进行 Post API 调用
【发布时间】:2022-01-10 01:38:23
【问题描述】:
我创建了一个有两个端点的 API。我将该 API 容器化并将其部署到 Application Load Balancer 后面的 ECS Fargate 容器中。
终点。
- Get = 返回 API 的状态
- 发布 = 将数据插入 RDS。
api/v1/healthcheck 正在运行
api/v1/insertRecord 不工作 => 502 bad Gateway
我遇到的问题是我能够获得 HealthCheck 响应,但我无法进行 Post API 调用我收到 502 Bad Gateway 错误
Target Group
我的目标群体被定向到运行状况检查端点,因此我的 ecs 保持正常运行。有人可以告诉我我在哪里犯错了吗?
【问题讨论】:
标签:
amazon-web-services
amazon-ecs
aws-application-load-balancer
【解决方案1】:
502(错误网关)状态代码表示服务器在充当网关或代理时,在尝试完成请求时从它访问的入站服务器收到了无效响应。如果服务返回无效或格式错误的响应,而不是将该无意义的信息返回给客户端。
可能原因:taken from
- 在 REST 调用期间检查协议和端口号
- 负载平衡器在尝试时从目标接收到 TCP RST
建立连接。
- 负载平衡器收到来自目标的意外响应,
比如“ICMP Destination unreachable (Host unreachable)”,当
尝试建立连接。
- 目标响应格式错误或包含的 HTTP 标头
无效。
- 目标使用 TCP RST 或 TCP FIN 关闭连接,同时
负载均衡器对目标有一个未完成的请求。
您可以启用 cloudWatch 日志以进行进一步调试。