I have been trying to use clustering, to keep it simple, I started
with 2 nodes but running into some problems. I've been working with
2.1.0.GA mobicents version with SipRA installed.
Here are the steps I've been following.
1) Modified SipRA configuration to include load balancer
(192.168.230.206)
2) Start node1, run.bat -c all -b 192.168.231.105 -
Djboss.messaging.ServerPeedID=1
3) Start node2, run.bat -c all -b 192.168.231.106 -
Djboss.messaging.ServerPeedID=2
Seem to start fine except some WARN like below in both the logs
2010-07-09 10:26:01,521 WARN [org.jgroups.protocols.pbcast.NAKACK]
(OOB-1,
192.168.231.105:61643)
192.168.231.105:61643] discarded message
from non-member
192.168.231.106:50118, my view is
[192.168.231.105:61643|0] [
192.168.231.105:61643]
2010-07-09 10:26:01,568 WARN [org.jgroups.protocols.pbcast.NAKACK]
(OOB-1,
192.168.231.105:61643)
192.168.231.105:61643] discarded message
from non-member
192.168.231.106:50118, my view is
[192.168.231.105:61643|0] [
192.168.231.105:61643]
.....
......
2010-07-09 10:23:33,036 WARN [org.jgroups.protocols.TCP] (main)
failed to join /
224.0.0.75:7500 on net3: java.net.SocketException:
Unrecognized Windows Sockets error: 0: no Inet4Address associated with
interface
2010-07-09 10:23:33,037 WARN [org.jgroups.protocols.TCP] (main)
failed to join /
224.0.0.75:7500 on net4: java.net.SocketException:
Unrecognized Windows Sockets error: 0: no Inet4Address associated with
interface
......................
..........
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(OOB-36,
192.168.231.105:7900) Got merge response at
192.168.231.105:7900 from
192.168.231.106:7900,
merge_id=[192.168.231.106:7900|0] [
192.168.231.106:7900], merge data
is sender=
192.168.231.106:7900, view=[192.168.231.106:7900|0]
[
192.168.231.106:7900], digest=
192.168.231.106:7900: [51 : 54 (54)]
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900 expects 2 responses, so far got 2 responses
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900 collected 2 merge response(s) in 16 ms
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900 is consolidating merge data
sender=
192.168.231.105:7900, view=[192.168.231.105:7900|0]
[
192.168.231.105:7900], digest=
192.168.231.105:7900: [35 : 38 (38)]
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900 is consolidating merge data
sender=
192.168.231.106:7900, view=[192.168.231.106:7900|0]
[
192.168.231.106:7900], digest=
192.168.231.106:7900: [51 : 54 (54)]
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900 computed new merged view that will be MergeView::
[192.168.231.105:7900|1] [
192.168.231.105:7900,
192.168.231.106:7900],
subgroups=[[192.168.231.105:7900|0] [
192.168.231.105:7900],
[192.168.231.106:7900|0] [
192.168.231.106:7900]]
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900consolidated digest=
192.168.231.106:7900: [51 : 54
(54)],
192.168.231.105:7900: [35 : 38 (38)]
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900)
192.168.231.105:7900 is sending merge view [192.168.231.105:7900|1] to
coordinators [
192.168.231.106:7900,
192.168.231.105:7900]
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(MergeTask,MessagingPostOffice-DATA,
192.168.231.105:7900) Merge leader
192.168.231.105:7900 completed merge task
2010-07-09 10:41:02,327 DEBUG [org.jgroups.protocols.pbcast.GMS]
(Incoming-2,
192.168.231.105:7900) view=MergeView::
[192.168.231.105:7900|1] [
192.168.231.105:7900,
192.168.231.106:7900],
subgroups=[[192.168.231.105:7900|0] [
192.168.231.105:7900],
[192.168.231.106:7900|0] [192.168.231.106:7900]],
digest=
192.168.231.106:7900: [51 : 54 (54)],
192.168.231.105:7900:
[35 : 38 (38)]
And some errors like below
2010-07-09 10:41:02,327 ERROR [org.jgroups.protocols.pbcast.NAKACK]
(Incoming-2,
192.168.231.105:7900) sender
192.168.231.106:7900 not
found in xmit_table
2010-07-09 10:41:02,327 ERROR [org.jgroups.protocols.pbcast.NAKACK]
(Incoming-2,
192.168.231.105:7900) range is null
I wanted to make sure that the SipRA is getting replicated, so, I
installed my registrar application and registered one phone (which
points to LB). Phone gets registered on Node1 but when I go and check
to see Cache contents through JMX console on Node1 and Node2 they
don't seem to match (SipRA AC etc) . On Node1, MobicentsSleeCache has
the activity context details but not on Node2. After a little while I
see the following exceptions on Node1 for the REGISTERs coming in and
REGISTER getting dropped (don't make it to the application breaking
the whole functionality).
REGISTER sip:
sip.test.com SIP/2.0
Via: SIP/2.0/UDP 192.168.230.206:5060;branch=z9hG4bK-
d8754z-9611fb0e044ee519-1---d8754z-OGE5O,SIP/2.0/UDP
192.168.231.105:28796;branch=z9hG4bK-d8754z-9611fb0e044ee519-1---
d8754z-;rport=28796;received=192.168.231.105
Max-Forwards: 69
Contact: <sip:
9789912009@192.168.231.105:28796;rinstance=582bcd17359e9023>
To: "Bill C" <
sip:97899...@sip.test.com>
From: "Bill C" <
sip:97899...@sip.test.com>;tag=14436d12
Call-ID: OGE5OTE4YTk0M2Y4ZmQ1OWY3ODYyYjQxZTQwYWQ5ODI.
CSeq: 4 REGISTER
Expires: 3600
Allow:
INVITE,ACK,CANCEL,OPTIONS,BYE,REFER,NOTIFY,MESSAGE,SUBSCRIBE,INFO
User-Agent: X-Lite release 1104o stamp 56125
Authorization: Digest
username="
9789912009",realm="DeargeertCbr",nonce="cbr36d3a1d2b64f8917875887e48c1f",uri="sip:
sip.broadvoice.com",response="e04cc0065f9d4122442f7a24e9b8be2a",cnonce="85b253f95577778c0a156ed4f2efba31",nc=00000003,qop=auth,algorithm=MD5
Route: <sip:192.168.231.105:5060;transport=udp;lr>
Content-Length: 0
2010-07-09 10:56:19,990 DEBUG [org.jgroups.protocols.FD]
(Timer-5,
192.168.231.105:52358) sending are-you-alive msg to
192.168.231.106:60791 (own address=
192.168.231.105:52358)
2010-07-09 10:56:22,086 DEBUG [org.jgroups.protocols.FD]
(Timer-4,
192.168.231.105:7900) sending are-you-alive msg to
192.168.231.106:7900 (own address=
192.168.231.105:7900)
2010-07-09 10:56:25,987 DEBUG [org.jgroups.protocols.FD]
(Timer-12,
192.168.231.105:52358) sending are-you-alive msg to
192.168.231.106:60791 (own address=
192.168.231.105:52358)
2010-07-09 10:56:28,083 DEBUG [org.jgroups.protocols.FD]
(Timer-1,
192.168.231.105:7900) sending are-you-alive msg to
192.168.231.106:7900 (own address=
192.168.231.105:7900)
2010-07-09 10:56:28,404 DEBUG [org.jgroups.protocols.FD]
(Timer-4,
192.168.231.105:61643) sending are-you-alive msg to
192.168.231.106:50118 (own address=
192.168.231.105:61643)
2010-07-09 10:56:31,984 DEBUG [org.jgroups.protocols.FD]
(Timer-10,
192.168.231.105:52358) sending are-you-alive msg to
192.168.231.106:60791 (own address=
192.168.231.105:52358)
2010-07-09 10:56:34,079 DEBUG [org.jgroups.protocols.FD]
(Timer-1,
192.168.231.105:7900) sending are-you-alive msg to
192.168.231.106:7900 (own address=
192.168.231.105:7900)
2010-07-09 10:56:37,981 DEBUG [org.jgroups.protocols.FD]
(Timer-5,
192.168.231.105:52358) sending are-you-alive msg to
192.168.231.106:60791 (own address=
192.168.231.105:52358)
2010-07-09 10:56:38,398 DEBUG [org.jgroups.protocols.FD]
(Timer-4,
192.168.231.105:61643) sending are-you-alive msg to
192.168.231.106:50118 (own address=
192.168.231.105:61643)
2010-07-09 10:56:40,075 DEBUG [org.jgroups.protocols.FD]
(Timer-1,
192.168.231.105:7900) sending are-you-alive msg to
192.168.231.106:7900 (own address=
192.168.231.105:7900)
2010-07-09 10:56:41,689 ERROR
[javax.slee.RAEntityNotification[entity=SipRA].SipResourceAdaptor]
(SipRA-UDPMessageChannelThread-3) Replication timeout for
192.168.231.106:50118
2010-07-09 10:56:41,689 ERROR
[javax.slee.RAEntityNotification[entity=SipRA].SipResourceAdaptor]
(SipRA-UDPMessageChannelThread-3) Replication timeout for
192.168.231.106:50118
org.jboss.cache.lock.TimeoutException: Replication timeout for
192.168.231.106:50118
at
org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
768)
at
org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
716)
at
org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
721)
at
org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:
161)
at
org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:
135)
at
org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:
107)
at
org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudMethod(ReplicationInterceptor.java:
160)
at
org.jboss.cache.interceptors.ReplicationInterceptor.visitPutDataMapCommand(ReplicationInterceptor.java:
113)
at
org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDataMapCommand.java:
104)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:
116)
at
org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:
131)
at
org.jboss.cache.commands.AbstractVisitor.visitPutDataMapCommand(AbstractVisitor.java:
60)
at
org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDataMapCommand.java:
104)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:
116)
at
org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(TxInterceptor.java:
301)
at
org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxInterceptor.java:
283)
at
org.jboss.cache.commands.AbstractVisitor.visitPutDataMapCommand(AbstractVisitor.java:
60)
at
org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDataMapCommand.java:
104)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:
116)
at
org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutDataMapCommand(CacheMgmtInterceptor.java:
97)
at
org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDataMapCommand.java:
104)
at
org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:
116)
at
org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:
178)
at
org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutDataMapCommand(InvocationContextInterceptor.java:
64)
at
org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDataMapCommand.java:
104)
at
org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:
287)
at
org.jboss.cache.invocation.CacheInvocationDelegate.invokePut(CacheInvocationDelegate.java:
705)
at
org.jboss.cache.invocation.CacheInvocationDelegate.put(CacheInvocationDelegate.java:
519)
at
org.jboss.cache.invocation.NodeInvocationDelegate.addChild(NodeInvocationDelegate.java:
337)
at org.mobicents.cache.CacheData.create(CacheData.java:70)
at
org.mobicents.slee.runtime.activity.ActivityContextImpl.<init>(ActivityContextImpl.java:
78)
at
org.mobicents.slee.runtime.activity.ActivityContextFactoryImpl.createActivityContext(ActivityContextFactoryImpl.java:
110)
at
org.mobicents.slee.runtime.activity.ActivityContextFactoryImpl.createActivityContext(ActivityContextFactoryImpl.java:
32)
at
org.mobicents.slee.resource.SleeEndpointImpl._startActivity(SleeEndpointImpl.java:
206)
at
org.mobicents.slee.resource.SleeEndpointStartActivityNotTransactedExecutor.execute(SleeEndpointStartActivityNotTransactedExecutor.java:
38)
at
org.mobicents.slee.resource.SleeEndpointImpl.startActivity(SleeEndpointImpl.java:
105)
at
org.mobicents.slee.resource.sip11.SipResourceAdaptor.addActivity(SipResourceAdaptor.java:
834)
at
org.mobicents.slee.resource.sip11.SipResourceAdaptor.processNotCancelRequest(SipResourceAdaptor.java:
378)
at
org.mobicents.slee.resource.sip11.SipResourceAdaptor.processRequest(SipResourceAdaptor.java:
215)
at gov.nist.javax.sip.EventScanner.deliverEvent(EventScanner.java:
226)
at
gov.nist.javax.sip.SipProviderImpl.handleEvent(SipProviderImpl.java:
193)
at gov.nist.javax.sip.DialogFilter.processRequest(DialogFilter.java:
1274)
at
gov.nist.javax.sip.stack.SIPServerTransaction.processRequest(SIPServerTransaction.java:
848)
at
gov.nist.javax.sip.stack.UDPMessageChannel.processMessage(UDPMessageChannel.java:
508)
at
gov.nist.javax.sip.stack.UDPMessageChannel.processIncomingDataPacket(UDPMessageChannel.java:
468)
at
gov.nist.javax.sip.stack.UDPMessageChannel.run(UDPMessageChannel.java:
304)
at java.lang.Thread.run(Thread.java:619)
2010-07-09 10:56:43,978 DEBUG [org.jgroups.protocols.FD]
(Timer-5,
192.168.231.105:52358) sending are-you-alive msg to
192.168.231.106:60791 (own address=
192.168.231.105:52358)
Thanks for looking and any help is appreciated.