Discovering Members by TCP
If multicast is not the preferred way of discovery for your environment, then you can configure Hazelcast to be a full TCP/IP cluster. When you configure Hazelcast to discover members by TCP/IP, you must list all or a subset of the members' host names and/or IP addresses as cluster members. You do not have to list all these cluster members, but at least one of the listed members has to be active in the cluster when a new member joins.
To configure your Hazelcast to be a full TCP/IP cluster, set the following configuration elements. See the tcp-ip element section for the full descriptions of the TCP/IP discovery configuration elements.
enabledattribute of the
memberelements within the
The following is an example declarative configuration.
<hazelcast> ... <network> <join> <tcp-ip enabled="true"> <member-list> <member>machine1</member> <member>machine2</member> <member>machine3:5799</member> <member>192.168.1.0-7</member> <member>192.168.1.21</member> </member-list> </tcp-ip> </join> </network> ... </hazelcast>
hazelcast: network: join: tcp-ip: enabled: true member-list: - machine1 - machine2 - machine3:5799 - 192.168.1.0-7 - 192.168.1.21
As shown above, you can provide IP addresses or host names for
You can also give a range of IP addresses, such as
Instead of providing members line-by-line as shown above, you also have the option
to use the
members element and write comma-separated IP addresses, as shown below.
If you do not provide ports for the members, Hazelcast automatically tries the ports 5701, 5702 and so on.
By default, Hazelcast binds to all local network interfaces to accept incoming
traffic. You can change this behavior using the system property
If you set this property to
false, Hazelcast uses the interfaces specified in the
element (see the Interfaces Configuration section). If no interfaces are
provided, then it tries to resolve one interface to bind from the