共计 16794 个字符,预计需要花费 42 分钟才能阅读完成。
在配置负载均衡环境过程中修改 server.xml 后重启 tomcat 报错,报错信息如下
[root@Alice bin]# ./catalina.sh run
Using CATALINA_BASE: /usr/local/TC6_A
Using CATALINA_HOME: /usr/local/TC6_A
Using CATALINA_TMPDIR: /usr/local/TC6_A/temp
Using JRE_HOME: /usr/Java/jdk1.6.0_45
Using CLASSPATH: /usr/local/TC6_A/bin/bootstrap.jar
2015-1-9 1:44:18 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/jdk1.6.0_45/jre/lib/i386/client:/usr/java/jdk1.6.0_45/jre/lib/i386:/usr/java/jdk1.6.0_45/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib
2015-1-9 1:44:18 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-10001
2015-1-9 1:44:18 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 784 ms
2015-1-9 1:44:18 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2015-1-9 1:44:18 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.37
2015-1-9 1:44:18 org.apache.catalina.ha.tcp.SimpleTcpCluster start
信息: Cluster is about to start
2015-1-9 1:44:18 org.apache.catalina.tribes.transport.ReceiverBase getBind
严重: Failed bind replication listener on address:auto
java.net.UnknownHostException: Alice.An: Alice.An
at java.net.InetAddress.getLocalHost(InetAddress.java:1402)
at org.apache.catalina.tribes.transport.ReceiverBase.getBind(ReceiverBase.java:180)
at org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:101)
at org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:142)
at org.apache.catalina.tribes.group.ChannelCoordinator.start(ChannelCoordinator.java:97)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor.start(MessageDispatchInterceptor.java:147)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.GroupChannel.start(GroupChannel.java:407)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:672)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1047)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2015-1-9 1:44:18 org.apache.catalina.tribes.transport.ReceiverBase getBind
严重: Failed bind replication listener on address:auto
java.net.UnknownHostException: Alice.An: Alice.An
at java.net.InetAddress.getLocalHost(InetAddress.java:1402)
at org.apache.catalina.tribes.transport.ReceiverBase.getBind(ReceiverBase.java:180)
at org.apache.catalina.tribes.transport.ReceiverBase.bind(ReceiverBase.java:204)
at org.apache.catalina.tribes.transport.nio.NioReceiver.bind(NioReceiver.java:132)
at org.apache.catalina.tribes.transport.nio.NioReceiver.start(NioReceiver.java:102)
at org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:142)
at org.apache.catalina.tribes.group.ChannelCoordinator.start(ChannelCoordinator.java:97)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor.start(MessageDispatchInterceptor.java:147)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.GroupChannel.start(GroupChannel.java:407)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:672)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1047)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2015-1-9 1:44:18 org.apache.catalina.tribes.transport.ReceiverBase bind
信息: Receiver Server Socket bound to:0.0.0.0/0.0.0.0:4000
2015-1-9 1:44:18 org.apache.catalina.tribes.transport.ReceiverBase getBind
严重: Failed bind replication listener on address:auto
java.net.UnknownHostException: Alice.An: Alice.An
at java.net.InetAddress.getLocalHost(InetAddress.java:1402)
at org.apache.catalina.tribes.transport.ReceiverBase.getBind(ReceiverBase.java:180)
at org.apache.catalina.tribes.transport.ReceiverBase.getAddress(ReceiverBase.java:264)
at org.apache.catalina.tribes.transport.ReceiverBase.getHost(ReceiverBase.java:269)
at org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:144)
at org.apache.catalina.tribes.group.ChannelCoordinator.start(ChannelCoordinator.java:97)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor.start(MessageDispatchInterceptor.java:147)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.GroupChannel.start(GroupChannel.java:407)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:672)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1047)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2015-1-9 1:44:18 org.apache.catalina.ha.tcp.SimpleTcpCluster start
严重: Unable to start cluster.
org.apache.catalina.tribes.ChannelException: java.lang.IllegalArgumentException: java.net.UnknownHostException: auto; No faulty members identified.
at org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:169)
at org.apache.catalina.tribes.group.ChannelCoordinator.start(ChannelCoordinator.java:97)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor.start(MessageDispatchInterceptor.java:147)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:149)
at org.apache.catalina.tribes.group.GroupChannel.start(GroupChannel.java:407)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:672)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1047)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.IllegalArgumentException: java.net.UnknownHostException: auto
at org.apache.catalina.tribes.membership.McastService.setLocalMemberProperties(McastService.java:163)
at org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:144)
… 18 more
Caused by: java.net.UnknownHostException: auto
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:876)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1229)
at java.net.InetAddress.getAllByName0(InetAddress.java:1180)
at java.net.InetAddress.getAllByName(InetAddress.java:1110)
at java.net.InetAddress.getAllByName(InetAddress.java:1046)
at java.net.InetAddress.getByName(InetAddress.java:996)
at org.apache.catalina.tribes.membership.MemberImpl.setHostname(MemberImpl.java:550)
at org.apache.catalina.tribes.membership.MemberImpl.<init>(MemberImpl.java:129)
at org.apache.catalina.tribes.membership.McastService.setLocalMemberProperties(McastService.java:156)
… 19 more
2015-1-9 1:44:18 org.apache.catalina.startup.Catalina start
严重: Catalina.start:
LifecycleException: org.apache.catalina.tribes.ChannelException: java.lang.IllegalArgumentException: java.net.UnknownHostException: auto; No faulty members identified.
at org.apache.catalina.ha.tcp.SimpleTcpCluster.start(SimpleTcpCluster.java:679)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1047)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2015-1-9 1:44:18 org.apache.catalina.startup.Catalina start
信息: Server startup in 237 ms
网上查找关键词 严重: Unable to start cluster.
org.apache.catalina.tribes.ChannelException: java.lang.IllegalArgumentException: java.net.UnknownHostException: auto; No faulty members identified. 后查找到 可能原因是 server.xml 文件出错了,于是尝试修改如下:
- <ReceiverclassName=“org.apache.catalina.tribes.transport.nio.NioReceiver”
- address=“auto” // 把这个改为 localhost 或都自己的 ip 都可以;如果用 auto 的话,在 vmware 里会与主机的实际 ip 产生冲突,原因不知道是什么,呵呵。
- port=“4000”
- autoBind=“100”
- selectorTimeout=“5000”
- maxThreads=“6”/>
参考文章:http://www.linuxidc.com/Linux/2011-08/39833.htm
修改后重启 Tomcat
./ shutdowm.sh
./catalina.sh run
[root@Alice bin]# ./shutdown.sh
Using CATALINA_BASE: /usr/local/TC6_A
Using CATALINA_HOME: /usr/local/TC6_A
Using CATALINA_TMPDIR: /usr/local/TC6_A/temp
Using JRE_HOME: /usr/java/jdk1.6.0_45
Using CLASSPATH: /usr/local/TC6_A/bin/bootstrap.jar
2015-1-9 11:20:56 org.apache.catalina.startup.Catalina stopServer
严重: Catalina.stop:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:422)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:338)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:416)
[root@Alice bin]# ./catalina.sh run
Using CATALINA_BASE: /usr/local/TC6_A
Using CATALINA_HOME: /usr/local/TC6_A
Using CATALINA_TMPDIR: /usr/local/TC6_A/temp
Using JRE_HOME: /usr/java/jdk1.6.0_45
Using CLASSPATH: /usr/local/TC6_A/bin/bootstrap.jar
2015-1-9 11:21:32 org.apache.catalina.core.AprLifecycleListener init
信 息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/jdk1.6.0_45/jre/lib/i386/client:/usr/java/jdk1.6.0_45/jre/lib/i386:/usr/java/jdk1.6.0_45/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib
2015-1-9 11:21:34 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-10001
2015-1-9 11:21:34 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 1948 ms
2015-1-9 11:21:34 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2015-1-9 11:21:34 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.37
2015-1-9 11:21:34 org.apache.catalina.ha.tcp.SimpleTcpCluster start
信息: Cluster is about to start
2015-1-9 11:21:34 org.apache.catalina.tribes.transport.ReceiverBase bind
信息: Receiver Server Socket bound to:/192.168.0.102:4000
2015-1-9 11:21:34 org.apache.catalina.tribes.membership.McastServiceImpl setupSocket
信息: Setting cluster mcast soTimeout to 500
2015-1-9 11:21:34 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers
信息: Sleeping for 1000 milliseconds to establish cluster membership, start level:4
2015-1-9 11:21:35 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers
信息: Done sleeping, membership established, start level:4
2015-1-9 11:21:35 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers
信息: Sleeping for 1000 milliseconds to establish cluster membership, start level:8
2015-1-9 11:21:36 org.apache.catalina.tribes.membership.McastServiceImpl waitForMembers
信息: Done sleeping, membership established, start level:8
2015-1-9 11:21:36 org.apache.catalina.ha.deploy.FarmWarDeployer start
严重: FarmWarDeployer can only work as host cluster subelement!
2015-1-9 11:21:36 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory docs
2015-1-9 11:21:37 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory ROOT
2015-1-9 11:21:37 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory manager
2015-1-9 11:21:37 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory host-manager
2015-1-9 11:21:37 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory examples
2015-1-9 11:21:37 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2015-1-9 11:21:37 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2015-1-9 11:21:37 org.apache.catalina.ha.session.JvmRouteBinderValve start
信息: JvmRouteBinderValve started
2015-1-9 11:21:37 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-10001
2015-1-9 11:21:38 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:10009
2015-1-9 11:21:38 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/157 config=null
2015-1-9 11:21:38 org.apache.catalina.startup.Catalina start
信息: Server startup in 4021 ms
重启后可以看到虽然还是有报错,但是错误明显少了很多,于是输入 http://localhost:10001 进行验证(10001 为自己设置的端口)
依然不成功,想了想恍然大悟,可能是防火墙没关
service iptables status 查看防火墙状态,果然是防火墙没关
service iptables stop
再次验证 哈哈!成了
友情提示:经常会忘关防火墙,所以有问题多想想防火墙有没有关
此问题还需再研究 但是目前暂时算解决了吧
Tomcat 负载均衡:Unable to start cluster receiver http://www.linuxidc.com/Linux/2011-08/39833.htm
Linux 下 Apache 与多个 Tomcat 集群负载均衡 http://www.linuxidc.com/Linux/2012-01/51731.htm
Nginx Tomcat 集群负载均衡解决笔记 http://www.linuxidc.com/Linux/2013-07/86827.htm
实例详解 Tomcat 组件安装 +Nginx 反向代理 Tomcat+Apache 使用 mod_jk 和 mod_proxy 反向代理和负载均衡 http://www.linuxidc.com/Linux/2013-06/85290.htm
CentOS 6.5 下利用 Rsyslog+LogAnalyzer+MySQL 部署日志服务器 http://www.linuxidc.com/Linux/2014-06/103836.htm
Apache+Tomcat 环境搭建(JK 部署过程)http://www.linuxidc.com/Linux/2012-11/74474.htm
Tomcat 的详细介绍 :请点这里
Tomcat 的下载地址 :请点这里