3

我通过在 server.xml 中包含 -part 来设置一个 tomcat 7 集群。在文档(http://tomcat.apache.org/tomcat-7.0-doc/cluster-howto.html)中它说:

广播的IP是java.net.InetAddress.getLocalHost().getHostAddress()(确保你没有广播127.0.0.1,这是一个常见的错误)

不幸的是,getLocalHost().getHostAddress() 为我的所有虚拟机返回 127.0.1.1(Ubuntu 在 Win7 下的 Virtual Box 中运行),而不是我可以访问虚拟机的正确 ip,即 10.42.29.191。

问题:

有没有办法告诉tomcat通过多播向集群的其他成员发送什么ip?或者我可以指定(例如代码)不同的方式来获取IP?

附加信息:

我的集群似乎无法进行会话复制,并且上面的“错误”可能是它的原因。Glassfish 也不进行会话复制,可能是同样的错误。如果您能提供有关 glassfish 配置的信息,我也会很高兴。虚拟机之间的多播根据工具 iperf 工作。

4

1 回答 1

2

由于 vm 是一台 Ubuntu 机器,我不得不编辑文件 /etc/hosts.

像这样替换条目:

127.0.1.1   tim-VirtualBox

使用正确的 IP:

10.42.29.191    tim-VirtualBox
于 2013-05-22T08:42:25.027 回答