GCP HTTPS LB 健康检查正在运行,但没有实际流量进入,这该如何解释?

GCP HTTPS LB 健康检查正在运行,但没有实际流量进入,这该如何解释?

如果健康检查正常并且后端服务标记为绿色(即我确实有针对 LB hc/traffic 的防火墙规则),是否可以解释没有实际流量可以进入(我在 LB 日志中收到 502“无法连接到后端”)?

我正在后面运行 nginx,我确实有健康检查的访问日志条目,但没有实际流量的错误日志条目(只是为了确认实际流量没有到达实例)。

更多详细信息:后端服务与包含一个实例的非托管组相关联。

PS 这不是“url 映射”问题,我在这个 LB 上只有默认的“所有不匹配的流量”规则。

答案1

根据GCP 文档,502 错误 failed_to_connect_to_backend 基本上意味着与后端实例的连接未能建立

我建议直接向实例发出 hTTP(S) 请求并验证它是否响应。如果实例没有响应

  1. 检查实例防火墙或 GCP 防火墙是否阻止了流量

  2. 运行 netstat -nltp 查看实例是否正在监听 tcp 端口,它应该监听任何 ip(0.0.0.0/0 或负载平衡的 IP 地址)。

  3. 还要验证后端实例中是否存在任何错误配置或未运行的服务

  4. 服务正在监听服务器上配置的端口

相关内容