yes, 2 virtual IP addresses are ok. And if you use same multicast
address (-u) argument for startup of both nodes, it should be sufficient
to have cluster working.
Are you using JBoss AS 7.1.1.Final or some other version? And which
environment/OS do you have? During googling I've found just this
, which is actually very same error which you have, but not sure if it
helps...
Thing is that we changed JGroups version between 3.5.0 and 3.6.0. GateIn
3.5.0 is using JGroups-2.11.1.Final when GateIn 3.6 and newer is using
2.6.21.Final. So could you try to replace file
GATEIN_36_HOME/modules/org/jgroups/gatein/jgroups-2.6.21.Final.jar with
the jgrous-2.11.1.Final.jar? You will need to do it on both nodes. And
you will also need to update
GATEIN_36_HOME/modules/org/jgroups/gatein/module.xml with correct name
of JGroups JAR file.
Please let me know if it helps.
Thanks,
Marek
On 6.8.2013 12:41, Tuyen The Nguyen wrote:
Hi,
I have tried to use IP 239.23.42.2 as multicast address, but i still
meet same exception:
Can i use 2 virtual IP on my machine to start 2 node as cluster? My
virtual IP is 192.168.56.1 and 192.168.57.1, if i use these IP, which
multicast IP should i use to run? These ip are worked in gatein 3.5.x
branch, but error in 3.6.x and master branch.
*Exception:*
ERROR [org.jgroups.protocols.UDP] (Timer-1,192.168.4.122:56200
<
http://192.168.4.122:56200>) failed sending message to null (83
bytes): java.lang.Exception: dest=/239.23.42.2:45588
<
http://239.23.42.2:45588> (86 bytes)
at org.jgroups.protocols.UDP._send(UDP.java:374)
at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:302)
at org.jgroups.protocols.TP.doSend(TP.java:1478)
at org.jgroups.protocols.TP.send(TP.java:1468)
at org.jgroups.protocols.TP.down(TP.java:1186)
at org.jgroups.protocols.TP
<
http://org.jgroups.protocols.TP>$ProtocolAdapter.down(TP.java:2308)
at org.jgroups.protocols.PING.sendMcastDiscoveryRequest(PING.java:278)
at org.jgroups.protocols.PING.sendGetMembersRequest(PING.java:259)
at
org.jgroups.protocols.Discovery$PingSenderTask$1.run(Discovery.java:407)
at
org.jgroups.util.TimeScheduler$RobustRunnable.run(TimeScheduler.java:196)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
[rt.jar:1.6.0_45]
at
java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
[rt.jar:1.6.0_45]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
[rt.jar:1.6.0_45]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
[rt.jar:1.6.0_45]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
[rt.jar:1.6.0_45]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
[rt.jar:1.6.0_45]
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
[rt.jar:1.6.0_45]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
[rt.jar:1.6.0_45]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]
Caused by: java.io.IOException: Invalid argument
at java.net.PlainDatagramSocketImpl.send(Native Method) [rt.jar:1.6.0_45]
at java.net.DatagramSocket.send(DatagramSocket.java:625) [rt.jar:1.6.0_45]
at org.jgroups.protocols.UDP._send(UDP.java:358)
... 18 more
On Tue, Aug 6, 2013 at 3:18 PM, Marek Posolda <mposolda(a)redhat.com
<mailto:mposolda@redhat.com>> wrote:
Hi,
On 6.8.2013 06:22, Tuyen The Nguyen wrote:
> Hi all, I'm working on issue GTNPORTAL-2258.
>
> I configure Gatein cluster mode follow by document of gatein
> (
https://docs.jboss.org/author/display/GTNPORTAL35/Clustering+configuration).
>
> When i start gatein with command:
> $ ./bin/standalone.sh --server-config=standalone-ha.xml
> -Djboss.node.name <
http://Djboss.node.name>=node1 -b
> 192.168.210.101 -u 2.439.232.2
> -Djboss.bind.address.management=192.168.210.101
>
> I can't understand param "-u 239.23.42.2", i see that's
multicast
> IP, but how can i get this ip in my network.
GateIn/JBoss clustering is using JGroups library for cluster
communication, which is by default using UDP protocol with
multicast. So you just need to have support for multicast in your
OS and network. See for example
http://en.wikipedia.org/wiki/Multicast_address for more info. For
parameter "-u" you need to use multicast IP address (something
from 224.0.0.0 to 239.255.255.255). I am seeing that you have
invalid address 2.439.232.2 in your first command. Address
239.23.42.2 should be ok. Could you double-check and test again?
>
> When i remove this param and use default of jbossAS and it work
> with gatein 3.5.x But in 3.6.x and master branch, i always meet
> exception.
I recommend to always specify "-u" address and choose some
'random' address from the range when you test clustering. When you
use default 230.0.0.4, you have quite big chance that your cluster
will communicate with someone else on same network who is also
testing clustering. And this is usually something, which you don't
want and second person as well:-)
Marek
>
> */Is there anybody know how to fix this bug?/*
>
> *Exception:*
> ERROR [org.jgroups.protocols.UDP] (Timer-2,127.0.0.1:56200
> <
http://127.0.0.1:56200>) failed sending message to null (66
> bytes): java.lang.Exception: dest=/230.0.0.4:45588
> <
http://230.0.0.4:45588> (69 bytes)
> at org.jgroups.protocols.UDP._send(UDP.java:374)
> at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:302)
> at org.jgroups.protocols.TP.doSend(TP.java:1478)
> at org.jgroups.protocols.TP.send(TP.java:1468)
> at org.jgroups.protocols.TP.down(TP.java:1186)
> at org.jgroups.protocols.TP
> <
http://org.jgroups.protocols.TP>$ProtocolAdapter.down(TP.java:2308)
> at
> org.jgroups.protocols.PING.sendMcastDiscoveryRequest(PING.java:278)
> at org.jgroups.protocols.PING.sendGetMembersRequest(PING.java:259)
> at
> org.jgroups.protocols.Discovery$PingSenderTask$1.run(Discovery.java:407)
> at
> org.jgroups.util.TimeScheduler$RobustRunnable.run(TimeScheduler.java:196)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
> [rt.jar:1.6.0_45]
> at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> [rt.jar:1.6.0_45]
> at
> java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
> [rt.jar:1.6.0_45]
> at
>
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
> [rt.jar:1.6.0_45]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
> [rt.jar:1.6.0_45]
> at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]
> Caused by: java.io.IOException: Invalid argument
> at java.net.PlainDatagramSocketImpl.send(Native Method)
> [rt.jar:1.6.0_45]
> at java.net.DatagramSocket.send(DatagramSocket.java:625)
> [rt.jar:1.6.0_45]
> at org.jgroups.protocols.UDP._send(UDP.java:358)
> ... 18 more
>
>
> _______________________________________________
> gatein-dev mailing list
> gatein-dev(a)lists.jboss.org <mailto:gatein-dev@lists.jboss.org>
>
https://lists.jboss.org/mailman/listinfo/gatein-dev