开发者社区 > 飞天洛神云网络 > 负载均衡 > 正文

负载alb实例的健康检查始终无法通过是为什么?

我弄了一个负载均衡ALB实例,
还有两个ECS服务器,里面有nginx和Tomcat,nginx配置了http到https的rewrite
我可以浏览器输入公网IP地址直接访问任何一台ecs服务器的服务,但是alb实例的健康检查始终无法通过。
我的服务器组,配了两个:
服务器组类型:服务器类型
选择后端协议:一个http,一个https
然后监听也配了两个,一个http,端口80,一个https,端口443
可是只要浏览器访问域名,就会得到bad gateway
nginx的错误
这是我第一次做负载均衡的配置,目前不知道该怎么办了
f38d82b59dfe3b46147168fb1bb1b448.png
看到一片文章说要写这么个服务端接口,用来返回健康检查状态码,有点难以置信,不是真的要返回一个字符内容http_2xx吧,应该是http status code吧,200 ok什么的

展开
收起
乐天香橙派 2023-09-10 11:39:15 262 0
1 条回答
写回答
取消 提交回答
  • 如果您的负载均衡器(ALB)实例的健康检查始终无法通过,可能有以下几个原因:

    未正确配置目标组:负载均衡器(ALB)需要将流量转发到正确的目标组。请确保您已正确配置目标组,并将实例添加到目标组中。

    实例未正常运行或未监听正确的端口:健康检查需要目标实例处于正常运行状态,并监听负载均衡器配置的健康检查端口。请确保目标实例处于运行状态,并且监听了健康检查端口。

    安全组配置错误:检查目标实例的安全组配置,确保允许来自负载均衡器的健康检查流量通过。默认情况下,负载均衡器会使用一个特定的安全组,您需要确保目标实例的安全组允许该安全组的出站流量。

    健康检查目标路径或URI 配置错误:负载均衡器(ALB)通过发送HTTP或HTTPS请求到目标实例来执行健康检查。请检查您在负载均衡器上配置的目标路径或URI是否正确。确保目标实例上的服务正在监听和响应这些请求。

    响应状态码不正确:负载均衡器(ALB)根据目标实例返回的HTTP响应状态码来判断实例的健康状况。请确保目标实例返回的状态码符合负载均衡器的期望。通常,状态码为200或3xx被认为是健康的。

    健康检查频率或超时时间设置不当:短时间内频繁的健康检查可能会对目标实例造成过大的负载。请检查健康检查的频率和超时时间设置,确保合理和适当。

    如果您仍然无法解决问题,建议查看负载均衡器(ALB)的日志和错误信息,以便更好地理解和诊断问题。此外,您也可以参考云服务商的文档、社区支持或向其技术支持团队咨询,以获取更具体和针对性的帮助。

    2023-10-23 11:16:42
    赞同 展开评论 打赏

阿里云负载均衡(Server Load Balancer,简称SLB)是云原生时代应用高可用的基本要素。通过将流量分发到不同的后端服务来扩展应用系统的服务吞吐能力,消除单点故障并提升应用系统的可用性。 阿里云SLB包含面向4层的网络型负载均衡NLB、面向7层的应用型负载均衡ALB和传统型负载均衡CLB,是阿里云官方云原生网关。

相关产品

  • 负载均衡
  • 热门讨论

    热门文章

    相关电子书

    更多
    《应用型负载均衡ALB产品解读》 立即下载
    阿里云网络-SLB负载均衡产品介绍 立即下载
    负载均衡SLB热点问题解答 立即下载