- Print
- DarkLight
Docker Configuration Properties
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.
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
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 |
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:
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 |
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):
| 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 |
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 |
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:
| INFO |
Backend.ZRP.replaceSmfIntervalGap | Mode if ZRP should fill the gap between two data intervals. Possible values:
| 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 |
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:
| INFO |
Backend.MYZ.Args | JDK arguments. | |
Backend.ZDE.Scheme | Protocol to internally access the ZDE module. Possible values:
| 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:
| INFO |
Backend.ZDE.Args | JDK arguments. | |
Backend.ZCC.Scheme | Protocol to internally access the ZCC module. Possible values:
| 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):
| Warning |
Backend.ZHB.Scheme | Protocol to internally access the ZHB module. Possible values:
| 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:
| INFO |
Backend.ZHB.Args | JDK arguments. | |
Backend.ZUP.Scheme | Protocol to internally access the ZUP module. Possible values:
| 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:
| 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 |
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:
| INFO |
Backend.ZCO.Args | JDK arguments. | |
Backend.ZQM.Scheme | Protocol to internally access the ZQM module. Possible values:
| 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:
| INFO |
Backend.ZQM.Args | JDK arguments. | |
Backend.ZSAC.Scheme | Protocol to internally access the ZSAC module. Possible values:
| 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):
| Warning |
Backend.ZDC.Scheme | Protocol to internally access the ZDC module. Possible values:
| 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:
| 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 |
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:
| Depends on installation package |
install_myz | Determines whether the MYZ module is installed. Possible values:
| Depends on installation package |
install_zrp | Determines whether the ZRP module is installed. Possible values:
| Depends on installation package |
install_zde | Determines whether the ZDE module is installed. Possible values:
| Depends on installation package |
install_zcc | Determines whether the ZCC module is installed. Possible values:
| Depends on installation package |
install_zsa | Determines whether the ZSA module is installed. Possible values:
| Depends on installation package |
install_zhb | Determines whether the ZHB module is installed. Possible values:
| Depends on installation package |
install_zup | Determines whether the ZUP module is installed. Possible values:
| Depends on installation package |
install_zco | Determines whether the ZCO module is installed. Possible values:
| Depends on installation package |
install_orientdb | Determines whether the OrientDB database is installed. Possible values:
| Depends on installation package |
install_zqm | Determines whether the ZQM module is installed. Possible values:
| Depends on installation package |
install_zdc | Determines whether the ZDC module is installed. Possible values:
| 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:
| 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
be carefull during the installation process that the port is not used by another process