Amazon EC2 实例下的 Tomcat 虚拟主机 behing ELB:哪个主机获取 ELB HTTP 运行状况检



我在两个 Ubuntu 实例中使用 Tomcat,这两个实例位于亚马逊云科技云中的 ELB(弹性负载均衡器)后面。每个 Tomcat 安装在同一引擎中都有多个虚拟主机。ELB 进行正常检查以查看主机是否处于活动状态。但是在主机内部,哪个 Tomcat 虚拟主机会收到运行状况检查请求?定义运行状况检查时,我只指定端口和 URL 的最后一部分。所以我不知道执行的健康检查的完整 URL 是什么。现在,在引擎中声明为默认主机的 Tomcat 虚拟主机是获得检查的主机,只是因为它是默认主机。但实际上,该主机不是为应用程序提供服务的主机,因此它不应该是接收检查请求的主机。

换句话说:如果检查使用端口 80,并且 URL 的最后一部分是"/hello.html",那么完整的检查 URL 会是什么:http:///hello.html

"这里有什么"的内容是什么?实例的本地/私有 IP?

它总是会转到定义为本地主机的虚拟主机。

我建议将要进行运行状况检查的虚拟主机设置为本地主机,然后将该虚拟主机上的主机名别名设置为要指向它的域名。

因此,您将拥有:

  <Host name="localhost" ...>
    <Alias>mydomain.com</Alias>
  </Host>

最新更新