配置server.xml後,啓動tomcat 失敗(Unable to start cluster)及解決方法

在配置負載均衡環境過程當中修改server.xml  後重啓tomcat報錯,報錯信息以下java

[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 mslinux

 

網上查找關鍵詞 嚴重: Unable to start cluster.
org.apache.catalina.tribes.ChannelException: java.lang.IllegalArgumentException: java.net.UnknownHostException: auto; No faulty members identified.
後查找到 可能緣由是server.xml文件出錯了,因而嘗試修改以下:web

  1. <ReceiverclassName="org.apache.catalina.tribes.transport.nio.NioReceiver"  
  2. address="auto"     //把這個改成localhost或都本身的ip均可以;若是用auto的話,在vmware裏會與主機的實際ip產生衝突,緣由不知道是什麼,呵呵。  
  3. port="4000"  
  4. autoBind="100"  
  5. selectorTimeout="5000"  
  6. maxThreads="6"/>

參考文章:http://www.linuxidc.com/Linux/2011-08/39833.htmapache

修改後重啓Tomcat bootstrap

./ shutdowm.shtomcat

./catalina.sh runsession

[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
app

重啓後能夠看到雖然仍是有報錯,可是錯誤明顯少了不少,因而輸入 http://localhost:10001進行驗證(10001爲本身設置的端口)負載均衡

依然不成功,想了想恍然大悟,多是防火牆沒關 socket

service iptables status查看防火牆狀態,果真是防火牆沒關

service iptables stop

再次驗證 哈哈! 成了

友情提示:常常會忘關防火牆,因此有問題多想一想防火牆有沒有關

此問題還需再研究 可是目前暫時算解決了吧

相關文章
相關標籤/搜索