A Hazelcast cluster is a network of cluster members that run Hazelcast. Cluster members automatically join together to form a cluster. This automatic joining takes place with various discovery mechanisms that the cluster members use to find each other.
Please note that, after a cluster is formed, communication between cluster members is always via TCP/IP, regardless of the discovery mechanism used.
Hazelcast uses the following discovery mechanisms.
|See the Hazelcast IMDG Deployment and Operations Guide for advices on the best discovery mechanism to use.|
By default, Hazelcast tries to automatically detect the applicable discovery mechanism based on the runtime environment.
Note that using Auto Detection is not recommended for production. Note also that if Hazelcast finds no applicable discovery mechanism, then it falls back to Multicast.
See the Discovering Members by Auto Detection section for more details.
You can configure Hazelcast to be a full TCP/IP cluster. See the xref:discovering-by-tcp.adoc[Discovering Members by TCP section for configuration details.
With this mechanism, Hazelcast allows cluster members to find each other using the multicast communication. See the Discovering Members by Multicast section.
If you prefer to use this mechanism, make sure that your network is enclosed and secure. Since multicast packets are being broadcasted, any member from anywhere can join the cluster with the appropriate cluster name, so you have less control on the cluster.
Note also that if User Datagram Protocol (UDP) is blocked, as it is for most of the production environments, discovering with multicast does not work.
Hazelcast supports EC2/ECS auto-discovery. It is useful when you do not want to provide or you cannot provide the list of possible IP addresses. See the Cloud Discovery Plugins: Hazelcast AWS section.
Hazelcast offers a discovery strategy for your Hazelcast applications running on Azure. See the Cloud Discovery Plugins: Hazelcast Azure section.
Hazelcast supports discovering members in the GCP Compute Engine environment. You can easily configure Hazelcast members discovery, WAN replication, and Hazelcast Client to work seamlessly on the native GCP VM Instances. This discovery feature is provided as a Hazelcast plugin. See the Cloud Discovery Plugins: Hazelcast GCP section.
Hazelcast provides Kubernetes discovery mechanism that looks for IP addresses of members. See the Cloud Discovery Plugins: Hazelcast Kubernetes section.
Hazelcast supports the Eureka V1 discovery. See the Cloud Discovery Plugins: Hazelcast Eureka section.
This discovery mechanism provides a service based discovery strategy by using Apache Curator to communicate with your Zookeeper server. See the hazelcast-cloud-discovery-plugins-zookeeper, Cloud Discovery Plugins: Hazelcast Zookeeper section>>.
Using a clickable Hazelcast Tile for VMWare (former Pivotal Cloud Foundry), you can deploy your Hazelcast cluster on PCF. This feature is provided as a Hazelcast plugin. See the Deploying in VMware Tanzu section.