Visit Azul.com Support

Installing and Configuring Using Read-Only Images

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

This guide describes how to install and configure Azul Zing Builds of OpenJDK (Zing) using read-only images of Azul Zing System Tools (ZST) and Zing for use in an Enterprise File System (EFS).

Note
ZST with a read-only image is supported on RHEL/CentOS 5.2 or later, and RHEL/CentOS 6.x. systems only.

Complete Prerequisites

Prior to installing ZST, complete the following steps to ensure your system can support ZST.

Note
ZST must be installed prior to installing Zing.
  1. Login to your system as root administrator.

  2. Ensure the following packages are installed.

    • RHEL/ CentOS 6, supported Oracle Linux 6

       
      sudo yum install openssl binutils curl
    • RHEL/CentOS 7, 8, and Oracle Linux 7

       
      sudo yum install openssl binutils curl sudo yum install perl-Sys-Syslog.x86_64
    • Amazon Linux

       
      sudo yum install openssl binutils curl sudo yum install perl-Sys-Syslog.x86_64 sudo yum install kernel-devel-$(uname -r)
    • SLES

       
      sudo zypper install openssl binutils curl
    • Ubuntu

       
      sudo apt-get install openssl binutils curl

Depending upon the operating system the required packages include:

  • OpenSSL 0.9.8 or later

  • Development tools – Download the package from the operating system website.

  • binutils – Are required to ensure that any core files, generated when a Zing instance fails abnormally, include the shared libraries that were in use at the time.

Install ZST on the Zing Server

Complete a standard full ZST installation on the Zing server. The ZST nodes access this server as source for ZST installation and configuration.

The ZST installation package contains a kernel loadable module and supporting scripts and tools.

To install ZST:

  1. Login to your system as root administrator or use sudo.

  2. Ensure that you have access to the download FTP server (contact [email protected] to obtain the required credentials).

  3. Download ZST installation package to your system <zst_install> directory.

     
    zing-zst-<kernel_version>.<zst_version>.<platform>.rpm

    The zing-zst package contains the kernel module and various tools. Only one version of zing-zst may be installed at a time. The ZST installation package is specific to the operating system version, service pack, and/or kernel on the installation machine.

  4. Install ZST using the following command, type:

     
    # rpm --prefix=<zing_server_dir> -ivh <download_dir>/zing-zst-<kernel_version>.<zst_version>.<platform>.rpm
    • <zing_server_dir> is the path that all ZST nodes use to access the Zing server installation. Using the --prefix option creates the specified directory, in this example, /azul/zing_server/zst.

    • <download_dir> is the location on the server where you downloaded the ZST package. In this example, /azul.

      For example:

       
      # rpm --prefix=/azul/zing_server/zst -ivh /azul/zing-zst-5e.2.6.18-5.7.2.0.10.el5.x86_64.rpm

      The system responds.

       
      Preparing... ########################################### [100%] 1:zing-zst ########################################### [100%] Zing ZST is installed at /azul/zing_server/zst Run /azul/zing_server/zst/scripts/zing-zst.startup to start Zing services
  5. Add /usr/sbin to any Zing executable path. For example, at the following to the appropriate profile file:

     
    export PATH=/usr/sbin:$PATH

Prepare the ZST Server

The steps in this section are typically performed by a network administrator. The ZST read-only directory must be available to all ZST nodes.

  1. On the Zing server, export the directory, /azul/zing_server/zst, to make it read-only visible to all other ZST nodes. For example:

     
    # cat /etc/exports

    The system responds:

     
    /azul/zing_server/zst *(ro,fsid=0,sync)
  2. Restart the network file system to apply the export. For example:

     
    # service nfs restart

    The system responds.

     
    Shutting down NFS mountd: [ OK ] Shutting down NFS daemon: [ OK ] Shutting down NFS quotas: [ OK ] Shutting down NFS services: [ OK ] Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS daemon: [ OK ] Starting NFS mountd: [ OK ]

Install ZST on the ZST Nodes

Note
Install ZST on the Zing server before you install ZST on any ZST node.

The ZST installation package contains a kernel loadable module and supporting scripts and tools. This includes:

  • Zing Memory

  • Zing license daemon

  • Zing tools, including zing-ps

To install ZST:

  1. On each ZST node, login to your system as root administrator.

  2. Create a ZST directory.

     
    # mkdir /azul/zing_node/zst
  3. Mount the Zing server read-only directory to a local ZST node directory.

     
    # mount <ZST_Server_IP>:<zing_server_dir> <zst_node_dir>

    For example:

     
    # mount 10.10.163.113:/azul/zing_server/zst /azul/zing_node/zst

    This command creates the local ZST node directories, as needed.

  4. Change to the /script directory.

     
    # cd /azul/zing_node/zst/scripts/
  5. Install ZST using the zing-zst.startup command.

     
    # ./zing-zst.startup

    The system responds:

     
    Installing ZST ... Checking ZST package dependencies... Dependency check complete... zing-licensed: INFO: start successful [ OK ] zing-memory: INFO: Starting... Warning: Zing Virtual Machine support is disabled. Warning: Run system-config-zing-memory to enable. Warning: Try 'man zing-zst' for more information. Warning: Azul pmem configuration disabled. zing-memory: INFO: start successful Installation complete!

    The zing-zst.startup command has the following options:

    Option Description

    --h

    Displays help text.

    -p, --pmem <pmem_filename>

    References a pmem.conf file that contains ZST memory configuration information.

    -l, --license <license_filename>

    References a Zing license file.

    For example, including the optional -l and -p options:

     
    # /zing/57210/scripts/zing-zst.startup -l /tmp/license -p /tmp/pmem.conf Installing ZST ... Checking ZST package dependencies... Dependency check complete... Installed: '/tmp/license' Installed: '/tmp/pmem.conf' zing-licensed: INFO: start successful [ OK ] zing-memory: INFO: Starting... Info: azulPmemPages: 5888. INFO: az_pmem_reserve_pages (num2mPages 5888) succeeded INFO: az_pmem_fund_transfer (to 7, from 0, bytes 12348030976) succeeded INFO: az_pmem_fund_transfer (to 1, from 7, bytes 616562688) succeeded INFO: az_pmem_fund_transfer (to 3, from 7, bytes 616562688) succeeded INFO: az_pmem_fund_transfer (to 0, from 7, bytes 11114905600) succeeded Info: You can now run Java processes up to -Xmx10600m or -Xmx10g. Info: Azul pmem initialized successfully. zing-memory: INFO: start successful Installation complete!

    In this example, the comment to run system-config-zing-memory is not included because the memory configuration file was provided with the zing-zst.startup command.

  6. Configure Zing memory allocation. See Configure Zing Memory.

  7. Repeat the Step 1 through Step 7 for each ZST Node.

Configure Zing Memory on the ZST Nodes

After ZST is installed you must configure Zing Memory allocation. Zing requires a portion of host system memory to be set aside and managed independently from Linux. The system-config-zing-memory wizard assists with this.

Note
The system-config-zing-memory creates or replaces any existing version of the pmem.conf file. Running the system-config-zing-memory wizard is required for first time installations. This section describes creating a default configuration. To customize your Zing memory configuration, see Modifying Zing Memory Configuration.
  1. Complete the steps in Install ZST on the ZST Nodes.

  2. Configure Zing memory management using the system-config-zing-memory command.

    Zing requires a portion of host system memory to be set aside and managed independently from Linux. Use the system-config-zing-memory wizard for initial configuration.

    From the command line, type:

     
    # /azul/zing_node/zst/usr/sbin/system-config-zing-memory

    The system responds:

     
    Welcome to the Zing memory configuration wizard by Azul Systems. This wizard sets up the Zing memory configuration file /etc/zing/pmem.conf.0 and initializes Zing memory. (Read the man pages for zing, zing-zst, and zing-pmem-conf for more information about this configuration file.) By default, Azul recommends setting up your system with 25% Linux memory and 75% Zing memory. Choose yes to accept this default, or no to enter the wizard expert flow. ** accept default configuration ** (y)es or (n)o [default 'y']: Y
  3. Accept default configuration settings. At the prompt, type y.

     
    ** accept default configuration ** (y)es or (n)o [default 'y']: Y

    The system response lists the zing services that are started or restarted and memory configuration information. For example:

     
    zing-memory: INFO: Restarting... zing-memory: INFO: Stopping... zing-memory: INFO: stop successful zing-memory: INFO: Starting... Info: azulPmemPages: 54454. INFO: az_pmem_reserve_pages (num2mPages 54454) succeeded INFO: az_pmem_fund_transfer (to 7, from 0, bytes 114198315008) succeeded INFO: az_pmem_fund_transfer (to 1, from 7, bytes 5708447744) succeeded INFO: az_pmem_fund_transfer (to 3, from 7, bytes 5708447744) succeeded INFO: az_pmem_fund_transfer (to 0, from 7, bytes 102781419520) succeeded Info: You can now run Java processes up to -Xmx98020m or -Xmx95g. Info: Azul pmem initialized successfully. zing-memory: INFO: start successful zing-memory: INFO: restart successful.

Install Zing License File on the ZST Nodes

After ZST is installed, install your Zing license. A Zing license is required to start a Java application using a Zing instance. Zing licenses are issued by Azul and are necessary for Self-Service Trials only.

Install Zing Virtual Machine on the ZST Nodes

After ZST is installed and the Zing licensing is applied, install Zing. See the Installation Instructions for complete instructions. The following is an overview of the Zing installation when you are using ZST with a read-only image.

  1. On the Zing server, download Zing. The installer package uses the following naming format depending on the Java version supported: zing-jdk<version>-<zvm_version>.<platform>.rpm

  2. Login as root.

    1. Enter the root shell.

    2. Type the su command.

    3. Enter the super-user password when prompted.

  3. Install Zing.

     
    # rpm -ivh --prefix=<zing_server_dir> -ivh <download_dir>/zing-jdk<version>-<zvm_version>.<platform>.rpm

    Where:

    • <zing_server_dir> is the path that all Zing nodes use to access the Zing server installation. Using the --prefix option creates the specified directory, in this example, /azul/zing_server/zvm.

    • <download_dir> is the location on the server where you downloaded the ZST package. In this example, /azul.

      For example:

       
      # rpm -ivh --prefix=/azul/zing_server/zvm /azul/zing-jdk1.7.0-5.8.0.0-13.x86_64.rpm Preparing... ########################################### [100%] 1:zing-jdk1.7.0 ########################################### [100%]
  4. Export the read-only directory, /azul/zing_server/zvm.

     
    # more /etc/exports

    The system responds:

     
    /azul/zing_server/zvm *(ro,fsid=0,sync)
  5. Restart NFS.

     
    # service nfs restart Shutting down NFS daemon: [ OK ] Shutting down NFS mountd: [ OK ] Shutting down NFS quotas: [ OK ] Shutting down NFS services: [ OK ] Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS mountd: [ OK ] Stopping RPC idmapd: [ OK ] Starting RPC idmapd: [ OK ] Starting NFS daemon: [ OK ]
  6. On each ZST node, mount the Zing installed directory. For example:

     
    # mkdir /azul/zing_node/zvm # mount 10.10.163.192:/azul/zing_server/zvm /azul/zing_node/zvm

Verify Zing Installation on the ZST Nodes

After ZST is installed, configured, and started, and Zing is installed, verify the completed installation.

  1. Verify that your Zing license is installed. Check the /etc/zing/ directory for your licensing authorization file, license.

    • If you are running Zing instances on a standalone host, see Installing a Zing License.

    • If you are configuring your Zing host as a member of a Zing licensing pool, see Installing and Using Pool Licensing.

  2. Run a simple Java command; for example type:

     
    $ <zing_java_directory>/bin/java -version

    where <zing_java_directory> is the directory where the Zing /bin/java is located. If you accept the Zing installation defaults, this path is, for example:

     
    $ /opt/zing/zing-<version>/bin/java -version

    For quicker access, use the fully qualified path.

  3. Look for the Zing component reference in the system response, for example:

     
    $ java version "1.8.0-zing_14.09.0.0" Zing Runtime Environment for Java Applications (build 1.8.0-zing_14.09.0.0-b20) Zing 64-Bit Tiered VM (build 1.8.0-zing_14.09.0.0-b33-product-azlinuxM-X86_64, mixed mode)

    See Troubleshooting Zing or run man zing-installation to view common installation errors.

To launch Zing instances, the Zing Memory must be configured and running, and the license daemon must be running.

See also Zing System Requirements and Compatibility References for a complete list of Zing component requirements, including supported CPUs, memory requirements, and operating system versions.