Installing Hazelcast Enterprise Edition
To install Hazelcast Enterprise Edition, you can use Docker, the binary, or Java. To unlock the Enterprise Edition features, you must install your Enterprise Edition license key.
These instructions apply only to the licensed Enterprise Edition edition, which provides additional features such as the security suite and blue/green client deployment. If you have the Community Edition edition, follow the instructions in the Installing Hazelcast Community Edition topic. If you are moving members from an Community Edition cluster to an Enterprise Edition cluster of the same version, you can use rolling restarts to move each member without downtime. For further information on moving members from an Community Edition cluster to a target Enterprise Edition, see Move to Enterprise Edition from Community Edition. |
Both slim and full distributions are available. For further information on the available editions and distributions, see the Hazelcast Editions and Distributions topic.
To install a slim distribution, append -slim
to the version number in the commands shown in the following sections; for example, to install the slim distribution of 5.5.2, use 5.5.2-slim
.
Using the Enterprise Edition Docker Image
-
Check that Docker is correctly installed.
docker version
-
If you do not see a version number, see the Docker docs for troubleshooting information.
Using the Enterprise Edition Binary
Download and extract the binaries.
curl -L 'https://repository.hazelcast.com/download/hazelcast-enterprise/hazelcast-enterprise-5.5.2.tar.gz' | tar xvzf -
wget -O - 'https://repository.hazelcast.com/download/hazelcast-enterprise/hazelcast-enterprise-5.5.2.tar.gz' | tar xvzf -
Download and extract the Hazelcast ZIP file.
To start the cluster, see Start a Local Cluster from Binary.
Using Enterprise Edition Java
To install Hazelcast with Java, you can use one of the following:
-
Maven
-
JAR file
-
Modular Java
Using Maven
Hazelcast runs on Java, which means you can add it as a dependency in your Java project.
The Java package includes both a member API and a Java client API. The member API is for embedded topologies where you want to deploy and manage a cluster in the same Java Virtual Machine (JVM) as your applications. The Java client is for connecting to an existing member in a client/server topology, such as Hazelcast Cloud.
-
Download and install a supported JDK.
-
Add the following to your
pom.xml
file.<repositories> <repository> <id>private-repository</id> <name>Hazelcast Private Repository</name> <url>https://repository.hazelcast.com/release/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <dependencies> <dependency> <groupId>com.hazelcast</groupId> <artifactId>hazelcast-enterprise</artifactId> <version>5.5.2</version> </dependency> </dependencies>
Using Modular Java
You can use Hazelcast as a module in the Java Platform Module System (JPMS).
To run your application with Hazelcast
libraries on the modulepath, use the com.hazelcast.core
for hazelcast-5.5.2.jar
module name.
The JPMS comes with stricter visibility rules. It affects Hazelcast which uses the internal Java API to reach the best performance results.
Hazelcast needs the java.se
module and access to the following Java
packages:
-
java.base/jdk.internal.ref
-
java.base/java.nio
(reflective access) -
java.base/sun.nio.ch
(reflective access) -
java.base/java.lang
(reflective access) -
jdk.management/com.ibm.lang.management.internal
(reflective access) -
jdk.management/com.sun.management.internal
(reflective access) -
java.management/sun.management
(reflective access)
You can provide access to these packages by using
--add-exports
and --add-opens
(for reflective access) Java arguments.
java --add-modules java.se \
--add-exports java.base/jdk.internal.ref=ALL-UNNAMED \
--add-opens java.base/java.lang=ALL-UNNAMED \
--add-opens java.base/java.nio=ALL-UNNAMED \
--add-opens java.base/sun.nio.ch=ALL-UNNAMED \
--add-opens java.management/sun.management=ALL-UNNAMED \
--add-opens jdk.management/com.ibm.lang.management.internal=ALL-UNNAMED \
--add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED \
-jar hazelcast-5.5.2.jar
java --add-modules java.se \
--add-exports java.base/jdk.internal.ref=com.hazelcast.core \
--add-opens java.base/java.lang=com.hazelcast.core \
--add-opens java.base/java.nio=com.hazelcast.core \
--add-opens java.base/sun.nio.ch=com.hazelcast.core \
--add-opens java.management/sun.management=com.hazelcast.core \
--add-opens jdk.management/com.ibm.lang.management.internal=com.hazelcast.core \
--add-opens jdk.management/com.sun.management.internal=com.hazelcast.core \
--module-path lib \ (1)
--module com.hazelcast.core/com.hazelcast.core.server.HazelcastMemberStarter
1 | This example expects the hazelcast-5.5.2.jar file in the lib directory. |
Getting an Enterprise Edition License Key
Hazelcast Enterprise Edition requires a license key. You can get a 30-day trial license from the Hazelcast website.
<Hazelcast edition>#<Maximum members>#<License key>
-
<Hazelcast edition>
: Name of the product. -
<Maximum members>
: Maximum number of members that may use the license at the same time. -
<License key>
: Machine-readable license key.
The first two strings up to the second hash (#) character are optional. These strings provide information about the license key. For example, both of the following formats are valid:
HazelcastEnterprise#2Nodes#1q2w3e4r5t
1q2w3e4r5t
These licenses are examples and will not work if you install them on members. |
Installing an Enterprise Edition License Key
To use Hazelcast Enterprise Edition, you need to configure a license key on all members in a cluster.
Hazelcast Enterprise Edition license keys are required only for members. You do not need to set a license key for Java clients that are connected to members. |
<hazelcast>
<license-key>Your {enterprise-product-name} License Key</license-key>
</hazelcast>
hazelcast:
license-key: Your {enterprise-product-name} License Key
Add your license to the setLicenseKey()
method.
Config config = new Config();
config.setLicenseKey( "Your {enterprise-product-name} License Key" );
HZ_LICENSEKEY=<Your {enterprise-product-name} License Key>
-Dhazelcast.enterprise.license.key=<Your {enterprise-product-name} License Key>
Next Steps
Learn more about Enterprise Edition license keys.
Get started with the Hazelcast Enterprise Edition features with a series of tutorials.