[esb-java-user] Loadbalancing with clusteraware stickiness(session
affinity)
Afkham Azeez
azeez at wso2.com
Sat May 10 23:40:10 PDT 2008
1. The default multicast address used is 228.0.0.4
2. The default multicast port is 45564
3. The default multicast frequency is 500ms
4. You can have multiple cluster groups using the same multicast address
and port. In this case, you will need to specify unique domains.
5. The TCP port listening for replication messages is the first
available server socket in range 4000-4100
6. You can have your HTTP/S, TCP etc. transports bound to one NW
interface and use a different interface to handle clustering messages.
I have added more parameters in the cluster configuration section of the
axis2.xml file.
<parameter name="multicastAddress">228.0.0.4</parameter>
<parameter name="multicastPort">45564</parameter>
<parameter name="multicastFrequency">500</parameter>
<parameter name="multicastMemberDropTime">3000</parameter>
<parameter name="tcpListenHost">127.0.0.1</parameter>
<parameter name="tcpListenPort">4000</parameter>
multicastAddress & multicastPort are used for membership management
through multicasts.
tcpListenHost & tcpListenPort are the parameters used for specifying the
IP and port used for member-to-member communications.
HTH
Azeez
Hubert, Eric wrote:
> Hello Azees,
>
> thanks for your reply which answers some of our questions. Please see my
> comments below!
>
>> Please see http://wso2.org/project/wsas/java/2.2.1/docs/wsas-
>> clustering.html
> Thanks, I will review this documentation as well.
>
>
>>> What shall I do to activate clustering support for WSO2 ESB? Is it
>>> sufficient to uncomment the configuration section about clustering
> in
>>> Axis2.xml of all nodes? This is what we actually did.
>>>
>> Generally this is sufficient provided that multicasting is enabled on
>> your network.
> Ok, multicasting was enabled on our test environment. We also used the
> same environment for a clustered JMS test with JBoss using JGroups.
>
>
>>> How does clustering work internally? I could not see any multicast
>>> configuration or something like that.
>
>> You do not have to configure the multicast address. Tribes will figure
> it
>> out. In order to have multiple groups, you need to provide different
>> "domain" entries in the axis2.xml file for the nodes belonging to the
>> different groups.
> Sorry, but I don't understand how an implementation can figure out the
> multicast address/port I have to use? In a production environment we
> can't use random or framework specific values. We are forced to
> configure the values we get assigned by the operations team.
>
>
>
>> When it comes to sending messages to the cluster, TCP connections
>> are used.
> Which port(s) will be used for that communication?
>
>
>> The NW interface to which the clustered node should be bound to can be
>> provided by specifying the "axis2.local.ip.address" System property.
>> e.g. if you have two interfaces with IPs 192.168.1.23 & 192.168.1.50,
>> and want to bind the node to the first interface, you can point the
>> axis2.local.ip.address system property to 192.168.1.23. There is
> another
>> way the same thing can be achieved; edit the /etc/hosts file and point
>> the entry with you machines name to the required IP address.
> The second option will not work for us. We have no influence on that.
> Does this affect the whole binding, or only the multicast binding? Maybe
> I would like to bind the normal http listener to more than one IP
> address but handle the multicast traffic over a specific interface. How
> to achieve this?
>
>
>>> According to the comments in the JIRA our configuration should work,
> as
>>> we use named endpoints. Please find attached our synapse
> configuration
>>> file.
>>> If we don't miss any configuration step, I will open a new JIRA
> issue.
>>> Please let me know how to proceed with this!
> So it seems as if we didn't miss any configuration in order to get our
> example working. As proposed we will wait for the new snapshot build
> from the release branch to test this again, before we will raise an
> issue on that.
>
> Regards,
> Eric
>
More information about the Esb-java-user
mailing list