环境:
192.168.10.13 机器IP
237.0.0.1:7777 集群组播IP,端口号7777
在AIX 5.3环境中建了WebLogic的集群,目前只在一台机器上做测试,本机既是Admin Server,也作为Managed Server。故障现象为:Admin Server通过./startWebLogic.sh可以启动,通过http://192.168.10.13:7001/console也可以登陆。但运行Managed Server时就出错,错误信息如下:
<Emergency> <WebLogicServer> <BEA-000342> <Unable to initialize
the server: weblogic.server.ServerLifecycleException:
Failed to listen on multicast addressCan’t assign requested address>
*********************************************************
The WebLogic Server did not start up properly.
Exception raised: ‘java.net.SocketException: Can’t assign
requested address’
Reason: weblogic.server.ServerLifecycleException: Failed
to listen on multicast addressCan’t assign requested address
从提示中看出是集群的237.0.0.1的组播地址上出现了问题。使用如下命令进行组播的测试:
#cd /weblogic安装目录/server/lib
#java -cp weblogic.jar utils.MulticastTest -N server1 -A 237.0.0.1 -P 7777
上面的测试中,237.0.0.1为你安装weblogic时设置的集群组播地址以及端口号,运行后提示如下错误:
***** WARNING ***** WARNING ***** WARNING *****
Do NOT use the same multicast address as a running WLS cluster.Starting test. Hit any key to abort
*****Problem*******
java.net.SocketException: The socket name is not available on this system.
at java.net.PlainDatagramSocketImpl.join(Native Method)
at java.net.PlainDatagramSocketImpl.join(PlainDatagramSocketImpl.java:166)
at java.net.MulticastSocket.joinGroup(MulticastSocket.java(Compiled Code))
at utils.MulticastTest.<init>(MulticastTest.java(Compiled Code))
at utils.MulticastTest.main(MulticastTest.java:233)
组播测试有问题,想到可能和组播路由有关,马上查看路由表:
#netstat -rn
没发现有237.0.0.1的路由,马上添加组播路由:
#route add 237.0.0.0 192.168.10.13
运行如下命令再次启动Manager Server,成功启动。
#./startManagedWebLogic.sh server1 192.168.10.13:7001
如下图:
最后运行smit route直接添加一条静态路由,这样机器下次重启时这条路由继续生效,如下图。
-------------------------------------------------------------------------------------------------------------------------------