Discovering Members by Multicast
With the multicast auto-discovery mechanism, Hazelcast allows cluster members to find each other using multicast communication. The cluster members do not need to know the concrete addresses of the other members, as they just multicast to all the other members for listening. Whether multicast is possible or allowed depends on your environment.
To set your Hazelcast to multicast auto-discovery, set the following configuration elements. See the multicast element section for the full description of the multicast discovery configuration elements.
enabledattribute of the
multicast-time-to-live, etc. to your multicast values.
The following is an example declarative configuration.
<hazelcast> ... <network> <join> <multicast enabled="true"> <multicast-group>18.104.22.168</multicast-group> <multicast-port>54327</multicast-port> <multicast-time-to-live>32</multicast-time-to-live> <multicast-timeout-seconds>2</multicast-timeout-seconds> <trusted-interfaces> <interface>192.168.1.102</interface> </trusted-interfaces> </multicast> <tcp-ip enabled="false"> </tcp-ip> <aws enabled="false"> </aws> </join> </network> ... </hazelcast>
Pay attention to the
specifies the time in seconds that a member should wait for a valid multicast
response from another member running in the network before declaring itself the
leader member (the first member joined to the cluster) and creating its own cluster.
This only applies to the startup of members where no leader has been assigned yet. If
you specify a high value to
multicast-timeout-seconds, such as 60 seconds, it means
that until a leader is selected, each member waits 60 seconds before moving on. Be careful
when providing a high value. Also, be careful not to set the value too low, or the members
might give up too early and create their own cluster.
|Multicast auto-discovery is not supported for Hazelcast native clients yet. However, we offer Multicast Discovery Plugin for this purpose. See the Discovering Native Clients section.|