Google Load-balancer随机发送的后端请求失败

时间:2016-09-21 09:03:08

标签: tomcat load-balancing google-compute-engine google-cloud-platform

我做了简单的设置:
后端(网站): 安装了tomcat并在8080上安装的1台机器 tomcat的webapps文件夹有两个文件夹

1 withGoogleRule1
       |--test.html
2 withoutGoogleRule1
       |--test.html

现在我有一个谷歌负载平衡器设置与以下设置

enter image description here

现在后端机器direct ip是http://104.197.37.171:8080/withoutGoogleRule1/test.html

Load Balancer url是 http://107.178.240.39:8080/withoutGoogleRule1/test.html

问题:

无论我们为直接计算机刷新网址多少次,所有请求始终都是正确的服务器。

但如果您使用负载均衡器1中的5次访问URL,则会显示

The requested URL /withoutGoogleRule1/test.html was not found on this server.

详细信息:

Youtube Video显示请求失败

PS:

实例组详细信息:

enter image description here

LoadBalancer后端详细信息

enter image description here

1 个答案:

答案 0 :(得分:1)

如果您的Tomcat仅在8080而不是80上进行侦听,则实例组,后端服务配置存在问题。特别是,运行状况检查配置为检查端口80,这将使负载均衡器认为后端服务不健康并返回404.

此外,您可以检查Tomcat日志以查看收到的请求数以及响应数。

编辑:由于你确认另一个进程正在侦听80. 404 NOT FOUND的原因可能是,请求被内部分派到80.你可以通过在80和8080上托管一个页面来验证这个理论,例如: /a.html,但内容不同,一个是"我是80"另一个是"我是8080"。这样,您就可以准确地知道发生了什么。检查监听80的过程日志也可以提供帮助。