Docker Configuration Properties

Prev Next

Introduction

Zetaly provides a global configuration file called zetalyinstall.cnf which contains all the necessary properties to perform a default installation under Docker. Before executing the run.sh script, you must define the values for the properties in the zetalyinstall.cnf file according to this article.
In some cases you may need to customize your installation to support your installation environment. Examples include, but are not limited to the following:

  • needing to change the default port of one or more Zetaly modules to avoid port clashes with other services that are already using the same port,
  • changing the default log level of the Zetaly modules,
  • installing the different Zetaly modules on different Docker containers,

To customize your installation under Docker you must add additional properties at the end of the zetalyinstall.cnf file before executing the run.sh script.

Note:

The run.sh script contains properties to determine which of the Zetaly modules are installed, and whether the OrientDB database is installed and used. It is pre-configured according to your installation package. Typically you do not need to edit this file unless you run into installation problems.
If you run into installation problems, you can edit the run.sh script accordingly to match your installation package's requirements. For more information, see Editing the run.sh Script.

Custom Configuration Properties

The table below summarizes the properties that you can add into the zetalyinstall.cnf file to customize your installation.
Each line you add for a property in the zetalyinstall.cnf file overrides the zetalyinstall.sh script's default value with the value that you specify. Each line you add must take the following format, where the custom.property and custom value you define are seperated by an equals symbol (=).

custom.property   =   custom value

Some properties can be customized individually, while other groups of properties must be customized together (as they have interdependencies). For examples of when groups of properties must be customized together, see Customization Examples.
You can also add comments using the hash symbol (#) to describe your custom installation properties.

############################################
#       Custom Installation Properties     #
############################################
custom.property.1  =   custom value 1
custom.property.2  =   custom value 2
custom.property.3  =   custom value 3
Note:

The customizable properties in the table below have default values which typically do not need changing. Change them with caution. If in doubt, contact Zetaly support for more information.

Property Description Default Values
Installation.Directory Directory used for the installation. ./tmp
Database.GenerationMode Generation mode for the internal database.
Possible values:
  • update (Update the database structure only, default.)
  • drop-and-create (Drop and create the database at launch. Test purposes only.)
update
OrientDB.HostAddress OrientDB host address. zetaly_orientdb
OrientDB.Name OrientDB database name. zetalydb
OrientDB.UserName OrientDB username. root
OrientDB.Password OrientDB password. root
OrientDB.RetryOnTransactionException Number of retries if a record cannot be inserted. 3
Frontal.Host.Container Name of the container. zetaly_frontal
Frontal.Host.Port Port used to access the Zetaly Portal. 443
BI.Anonymous.Email Anonymous username, used to access the public dashboard. anonymous-user@zetaly.io
BI.Anonymous.Password Anonymous password. Zetaly01!.
Backend.BI.Scheme The protocol used by the BI module.
Possible values:
  • https
  • http
Note: Typically this property not added to the zetalyinstall.cnf file. You must always use https use for new installations or for an enviroment that already has the BI module installed and configured using https (i.e. you do not need to add this parameter). You only need to add this parameter and specify http for an enviroment that already has the BI module installed and configured to use http.
https
Backend.ZSA.Scheme Protocol to internally access the ZSA module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZSA.Host Host to internally access the ZSA module. zetaly_zsa
Backend.ZSA.Port Port to internally access the ZSA module. 11010
Backend.ZSA.LogLevel Log level for the ZSA module.
Possible values (case sensitive):
  • Debug
  • Information
  • Warning
  • Error
Warning
Backend.ZSA.Email ZSA username. This user is only used to communicate between the ZSA module and the other Zetaly modules. zsa-user@zetaly.io
Backend.ZSA.Password ZSA password. Zetaly01!.
Backend.ZSA.StorageConfiguration Type of storage for RAW records.
Possible values:
  • SQL
  • GRAPH
  • BOTH
SQL
Backend.ZSA.Loadviews.Timeout.ms Loadviews maximum waiting time (in milliseconds) for all the agents to stop. 60000
Backend.ZRP.Scheme Protocol to internally access the ZRP module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZRP.Host Host to internally access the ZRP module. zetaly_zrp
Backend.ZRP.Port Port to internally access the ZRP module. 11020
Backend.ZRP.LogLevel Log level for the ZRP module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZRP.replaceSmfIntervalGap Mode if ZRP should fill the gap between two data intervals.
Possible values:
  • REPLACE_GAP
  • NOTHING
REPLACE_GAP
Backend.ZRP.maxPeriodIntervalNumber Number of intervals between two data intervals that should be detected as a gap. 2
Backend.ZRP.Args JDK arguments.
Backend.MYZ.Scheme Protocol to internally access the MYZ module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.MYZ.Host Host to internally access the MYZ module. zetaly_myz
Backend.MYZ.Port Port to internally access the MYZ module. 11030
Backend.MYZ.LogLevel Log level for the MYZ module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.MYZ.Args JDK arguments.
Backend.ZDE.Scheme Protocol to internally access the ZDE module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZDE.Host Host to internally access the ZDE module. zetaly_zde
Backend.ZDE.Port Port to internally access the ZDE module. 11040
Backend.ZDE.LogLevel Log level for the ZDE module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZDE.Args JDK arguments.
Backend.ZCC.Scheme Protocol to internally access the ZCC module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZCC.Host Host to internally access the ZCC module. zetaly_zcc
Backend.ZCC.Port Port to internally access the ZCC module. 11050
Backend.ZCC.LogLevel Log level for the ZCC module.
Possible values (case sensitive):
  • Debug
  • Information
  • Warning
  • Error
Warning
Backend.ZHB.Scheme Protocol to internally access the ZHB module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZHB.Host Host to internally access the ZHB module. zetaly_zhb
Backend.ZHB.Port Port to internally access the ZHB module. 11060
Backend.ZHB.LogLevel Log level for the ZHB module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZHB.Args JDK arguments.
Backend.ZUP.Scheme Protocol to internally access the ZUP module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZUP.Host Host to internally access the ZUP module. zetaly_zup
Backend.ZUP.Port Port to internally access the ZUP module. 11070
Backend.ZUP.LogLevel Log level for the ZUP module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZUP.Email ZUP username. This user is only used to communicate between the ZUP module and the other Zetaly modules. zup-user@zetaly.io
Backend.ZUP.Password ZUP password Zetaly01!.
Backend.ZUP.ConfigurationType Name of the configuration type for SMF. SMF
Backend.ZUP.Args JDK arguments.
Backend.ZCO.Scheme Protocol to internally access the ZCO module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZCO.Host Host to internally access the ZCO module. zetaly_zco
Backend.ZCO.Port Port to internally access the ZCO module. 11080
Backend.ZCO.LogLevel Log level for the ZCO module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZCO.Args JDK arguments.
Backend.ZQM.Scheme Protocol to internally access the ZQM module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZQM.Host Host to internally access the ZQM module. zetaly_zqm
Backend.ZQM.Port Port to internally access the ZQM module. 11090
Backend.ZQM.LogLevel Log level for the ZQM module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZQM.Args JDK arguments.
Backend.ZSAC.Scheme Protocol to internally access the ZSAC module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZSAC.Host Host to internally access the ZSAC module. zetaly_zsac
Backend.ZSAC.Port Port to internally access the ZSAC module. 11100
Backend.ZSAC.LogLevel Log level for the ZSAC module.
Possible values (case sensitive):
  • Debug
  • Information
  • Warning
  • Error
Warning
Backend.ZDC.Scheme Protocol to internally access the ZDC module.
Possible values:
  • http
  • https
Note: If you change the value to https you must additionally create and install an SSL certificate. Since this property defines the protocol to use internally behind the FrontalWeb component, Zetaly recommend that you leave the default setting of http.
http
Backend.ZDC.Host Host to internally access the ZDC module. zetaly_zdc
Backend.ZDC.Port Port to internally access the ZDC module. 11110
Backend.ZDC.LogLevel Log level for the ZDC module.
Possible values:
  • ALL
  • FATAL
  • ERROR
  • WARN
  • INFO
  • DEBUG
  • TRACE
  • OFF
INFO
Backend.ZDC.Args JDK arguments.
Database.Host.Port May be used when database is to be accessed with a non-default port. .\scripts-temp\scripts

Customization Examples

This section describes some examples of adding additional properties at the end of the zetalyinstall.cnf file for different customization scenarios.

Resolving Port Clashes With Zetaly Modules

The table below summarizes the default port numbers and their associated properties for each of the Zetaly modules.

Zetaly Module Property Default Port Number
ZCC Backend.ZCC.Port 11050
ZRP Backend.ZRP.Port 11020
MYZ Backend.MYZ.Port 11030
ZDE Backend.ZDE.Port 11040
ZSA Backend.ZSA.Port 11010
ZSAC Backend.ZSAC.Port 11100
ZHB Backend.ZHB.Port 11060
ZUP Backend.ZUP.Port 11070
ZCO Backend.ZCO.Port 11080
ZQM Backend.ZQM.Port 11090
ZDC Backend.ZDC.Port 11110

In our example, the server that will have Zetaly installed has services already using ports 11010 and 11060.
By default the ZSA module also uses port 11010. To avoid a port clash between the ZSA module and the other service using port 11010, you must change the ZSA module to another unused port (for example 11015).
By default the ZHB module also uses port 11060. To avoid a port clash between the ZHB module and the other service using port 11060, you must change the ZHB module to another unused port (for example 11065).
In this case you would create the following section at the end of the zetalyinstall.cnf file.

#################################################################
#     Custom ports for Zetaly modules to avoid port clashes     #
#################################################################
Backend.ZSA.Port              =       11015
Backend.ZHB.Port              =       11060  

Changing the Default Log Level of the Zetaly Modules

The table below summarizes the default log levels, possible log levels and their associated properties for each of the Zetaly modules.

Zetaly Module Property Default Log Level Possible Log Levels
ZCC Backend.ZCC.LogLevel Warning Debug, Information, Warning, Error
ZRP Backend.ZRP.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
MYZ Backend.MYZ.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
ZDE Backend.ZDE.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
ZSA Backend.ZSA.LogLevel Warning Debug, Information, Warning, Error
ZSAC Backend.ZSAC.LogLevel Warning Error, Warning, Information, Debug
ZHB Backend.ZHB.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
ZUP Backend.ZUP.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
ZQM Backend.ZQM.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
ZCO Backend.ZCO.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL
ZDC Backend.ZDC.LogLevel INFO OFF, FATAL, ERROR, WARN, INFO, DEBUG, TRACE, ALL

In our example we want to change the default log levels of the ZHB, ZUP and ZQM modules from INFO to Warning.
In this case you would create the following section at the end of the zetalyinstall.cnf file.

############################################################
#                     Custom Log Levels                    #
############################################################
Backend.ZHB.LogLevel              =      WARN
Backend.ZUP.LogLevel              =      WARN
Backend.ZQM.LogLevel              =      WARN

Configuring Zetaly Module Addresses for the FrontalWeb Component in a Distributed Deployment

By default all the Zetaly modules (except the ZAC module) are installed on the same Docker container. As a result, the address used by the FrontalWeb component to internally access the each of the Zetaly modules is set as summarized in the table below.

Zetaly Module Property Default Address
ZCC Backend.ZCC.Host zetaly_zcc
ZRP Backend.ZRP.Host zetaly_zrp
MYZ Backend.MYZ.Host zetaly_myz
ZDE Backend.ZDE.Host zetaly_zde
ZSA Backend.ZSA.Host zetaly_zsa
ZSAC Backend.ZSAC.Host zetaly_zsac
ZHB Backend.ZHB.Host zetaly_zhb
ZUP Backend.ZUP.Host zetaly_zup
ZQM Backend.ZQM.Host zetaly_zqm
ZCO Backend.ZCO.Host zetaly_zco
ZDC Backend.ZDC.Host zetaly_zdc

If you want to install the Zetaly modules on different servers, you must update these properties to match the IP addresses of the Docker containers on which they are installed, and have each of the Docker containers use the same proxy.
In our example, the Zetaly modules are installed on three different Docker containers as summarized in the table below.

Zetaly Module Docker Container 1
10.0.0.1
Docker Container 2
10.0.0.2
Docker Container 3
10.0.0.3
ZCC Installed Not Installed Not Installed
ZRP Not Installed Installed Not Installed
MYZ Installed Not Installed Not Installed
ZDE Installed Not Installed Not Installed
ZSA Not Installed Not Installed Installed
ZSAC Installed Not Installed Not Installed
ZHB Installed Not Installed Not Installed
ZUP Installed Not Installed Not Installed
ZQM Installed Not Installed Not Installed
ZCO Installed Not Installed Not Installed
ZDC Installed Not Installed Not Installed
Note:

The ZSA and ZRP modules consume more resources than the other modules. For this reason, in our example, the ZRP module is installed on Docker container 2 (10.0.0.2) and the ZSA module is installed on Docker container 3 (10.0.0.3).

In this case you would create the following section at the end of the zetalyinstall.cnf file.

############################################################
#                Distributed Module Addresses              #
############################################################
Backend.ZCC.Host              =      10.0.0.1
Backend.ZRP.Host              =      10.0.0.2
Backend.MYZ.Host              =      10.0.0.1
Backend.ZDE.Host              =      10.0.0.1
Backend.ZSA.Host              =      10.0.0.3
Backend.ZSAC.Host             =      10.0.0.1
Backend.ZHB.Host              =      10.0.0.1
Backend.ZUP.Host              =      10.0.0.1
Backend.ZQM.Host              =      10.0.0.1
Backend.ZCO.Host              =      10.0.0.1
Backend.ZDC.Host              =      10.0.0.1

You would also need to configure the three Docker containers to use the same proxy by defining the proxy in the ~/.docker/config.json Docker file. For more information, see this Docker article.

Editing the run.sh Script

The run.sh script contains properties to determine which of the Zetaly modules are installed, and whether the OrientDB database is installed and used. It is pre-configured according to your installation package. Typically you do not need to edit this file unless you run into installation problems.
If you run into installation problems, you can edit the run.sh script accordingly to match your installation package's requirements.

Property Description Default Value
cnf_file Defines the path to the zetalyinstall.cnf file. Never change this. $(pwd)/zetalyinstall.cnf
install_frontal Determines whether the Frontal module is installed.
Possible values:
  • 1 - the Frontal module is installed (i.e. is always installed in order to have access to the Zetaly Portal).
Depends on installation package
install_myz Determines whether the MYZ module is installed.
Possible values:
  • 0 - the MYZ module is not installed
  • 1 - the MYZ module is installed
Depends on installation package
install_zrp Determines whether the ZRP module is installed.
Possible values:
  • 0 - the ZRP module is not installed
  • 1 - the ZRP module is installed
Depends on installation package
install_zde Determines whether the ZDE module is installed.
Possible values:
  • 0 - the ZDE module is not installed
  • 1 - the ZDE module is installed
Depends on installation package
install_zcc Determines whether the ZCC module is installed.
Possible values:
  • 0 - the ZCC module is not installed
  • 1 - the ZCC module is installed
Note: The ZCC module requires the MYZ module installed as it relies on the MyInfrastructure functionality provided by the MYZ module. If you set this value to 1 the install_myz property must also be set to 1.
Depends on installation package
install_zsa Determines whether the ZSA module is installed.
Possible values:
  • 1 - the ZSA module is installed (i.e. is always installed as the Zetaly Streaming Agent is always required for collecting mainframe data).
Depends on installation package
install_zhb Determines whether the ZHB module is installed.
Possible values:
  • 1 - the ZHB module is installed (i.e. is always required as this module provide the user management functionality).
Depends on installation package
install_zup Determines whether the ZUP module is installed.
Possible values:
  • 0 - the ZUP module is not installed
  • 1 - the ZUP module is installed
Depends on installation package
install_zco Determines whether the ZCO module is installed.
Possible values:
  • 0 - the ZCO module is not installed
  • 1 - the ZCO module is installed
Depends on installation package
install_orientdb Determines whether the OrientDB database is installed.
Possible values:
  • 0 - the OrientDB database is not installed
  • 1 - the OrientDB database is installed
Depends on installation package
install_zqm Determines whether the ZQM module is installed.
Possible values:
  • 0 - the ZQM module is not installed
  • 1 - the ZQM module is installed
Depends on installation package
install_zdc Determines whether the ZDC module is installed.
Possible values:
  • 0 - the ZDC module is not installed
  • 1 - the ZDC module is installed
Depends on installation package
zsi_only Determines whether the ZSI module is installed along with some core backend functions of the ZCC module without displaying the ZCC module in the Zetaly Portal.
Possible values:
  • 0 - the ZSI module is not installed along with some core backend functions of the ZCC module
  • 1 - the ZSI module is installed along with some core backend functions of the ZCC module
Depends on installation package

The example below shows a run.sh script for an installation which has the following modules installed:

  • Frontal (always required as it provides access to the Zetaly Portal).
  • MYZ (required because ZCC is going to be installed, which needs the MyInfrastructure functionality of MYZ)
  • ZRP
  • ZCC
  • ZSA (always required as it provides the Streaming Agent which is used to collect data from the mainframe).
  • ZHB (always required as it provides the user management functionality within the Zetaly Portal).
#!/bin/bash
# 0 = false, 1 = true. Adapt the flags to your needs
cnf_file=$(pwd)/zetalyinstall.cnf
install_frontal=1
install_myz=1
install_zrp=1
install_zde=0
install_zcc=1
install_zsa=1
install_zhb=1
install_zup=0
install_zco=0
install_orientdb=0
install_zqm=0
install_zdc=0
# Use to set the front permissions when only zsi is deployed
zsi_only=1
bash ./zetalyinstall.sh \
    $cnf_file \
    $install_myz \
    $install_zrp \
    $install_zde \
    $install_frontal \
    $install_zsa \
    $install_zcc \
    $install_zhb \
    $install_zup \
    $install_zco \
    $install_orientdb \
    $install_zqm \
    $install_zdc \
    $zsi_only
Port already used

be carefull during the installation process that the port is not used by another process

image.png