Visit Support

Azul Zulu Prime Builds of OpenJDK Installation Instructions

Table of Contents
Need help?
Schedule a consultation with an Azul performance expert.
Contact Us
Looking for Zing?
The Azul Zing Virtual Machine is now Azul Zulu Prime Builds of OpenJDK and part of Azul Platform Prime.
Learn more

For system requirements and maximum heap size, see Azul Platform Prime System Requirements.

Installing Azul Zulu Prime Builds of OpenJDK

Azul provides two builds types:

  1. Stable Builds: the recommended way for customers to run Azul Zulu Prime Builds of OpenJDK (Azul Zulu Prime). These super-stable builds incorporate only CPUs (Critical Patch Update), PSUs (Patch Set Updates ), and Azul Platform Prime critical fixes and do not uptake new features and non-critical enhancements from Stream Builds. Stable builds can only be downloaded by Azul customers from our FTP server.

  2. Stream Builds: fast-moving monthly releases that include all the latest features and changes. Updates are not provided on Stream Builds, only on Stable Builds. Free for development and evaluation. Use in production requires an active subscription. Stream builds can be installed from Linux repositories.

Installation Process

Depending on your Linux distribution, different approaches can be used:

Post Installation Tasks

The following post-installation steps are not directly required when starting to use Azul Zulu Prime JVM, but it is recommended to go through them and implement any that are relevant for your environment.

Install of License File

Since Azul Zulu Prime, a license file is no longer required to run commercial packages of Azul Zulu Prime builds of OpenJDK. If you are installing Azul Zulu Prime or later, it is not necessary to use a license file. Note that while our Stream builds are free for evaluation and development, our Stable builds do require a current subscription contract with Azul even though they do not require the use of a license file on the system.

Copy the license file to your target host’s /etc/zing/ directory. To use any other file location, you must add -XX:ZingLicenseFile=<filename> to your Azul Zulu Prime JVM instance launch command. Licenses allow Azul Zulu Prime JVM instance launches up to the end of the day they are due to expire within the local timezone specified in the license file.

To force Azul Prime (version 20.10 and newer) to verify the license, add the following arguments: -XX:+UseCommercialFeatures -XX:+ValidateLicenseKey.

Transferring JDK Customizations

If you have applied customizations to the existing non-Azul Zulu Prime JVM installation location, you might need to transfer those to the Azul Zulu Prime JVM.

Those customizations can be, for example, JAR files added to the directory $JAVA_HOME/jre/lib/ext or changes in the security settings below $JAVA_HOME/jre/lib/security. Azul Zulu Prime JVM offers the same directories to store custom JARs and security policies.

Ensuring Sufficient Virtual Memory Areas

Depending on the application activity and its Java object sizes, Azul Zulu Prime JVM requires a larger number of virtual memory areas (VMAs) than the Linux default of 65530. Most applications on Azul Zulu Prime JVM won’t need a change here, but to be on the safe side, set the upper limit to four times the system RAM size in MBytes. vm.max_map_count Linux system parameter defines this limit.

To keep the configuration simple when managing multiple hosts, set it on all hosts to the same value as setting it too large doesn’t cause any harm. A value of 1,000,000 (one million) is recommended for systems with a RAM size of up to 256 GBytes. To set the recommended value, complete the following steps:

  1. Add the following line to the file /etc/sysctl.conf:

  2. To activate the setting without reboot, run:

    sudo sysctl -p
  3. To check the setting on any system, type:

    cat /proc/sys/vm/max_map_count