For the list of all supported Decision Insight downloads and releases, see the Downloads page.

Configure a node

Once Axway Decision Insight (DI) has been successfully installed on a node, there are a number of settings that you must configure in order to get your node up and running.

To help you along with node configuration, you can use tnd-config, a command line tool that helps  with automatic and manual node configuration. This tool is located in the node's bin folder and is named tnd-config.bat on Windows and tnd-config.sh on Linux.

As both Windows and Linux tnd-config  scripts accept the same parameters their file extension is omitted in the command examples of this page.

Overview of the main folders and files for node configuration

Once your node is installed, in your node directory, the 3 main configuration files are:

  • conf/jvm.conf – Configures the Java Virtual Machine itself (the dedicated memory to use for instance).
  • conf/platform.properties – Defines the DI node settings such as HTTP ports, proxy, ... For more information, see Node settings.
  • conf/log4j.properties – Defines the logger configuration.

You may also need to use the following files when configuring a node:

  • A conf/photon-authentication/settings.xml file for LDAP. 
  • Any other similar file, for example an SSO configuration file

Finally, in your node directory, you may add any relevant files to the 2 following folders:

  • lib/licences – Where you define the DI licenses.
  • lib/plugins – Where you can put Java jar files such as the SSO plugin to use. 

Single file update

Set values

You can use the tool to set values in a file in your node directory. If a value already exists in the file, it is updated, otherwise the specified value is created. 

Command
tnd-config set --file <file_to_update> [<value_to_set>...]
  • <file_to_update> must be a path relative to the root directory, such as conf/platform.properties


conf/jvm.conf example conf/platform.properties example

Consider the following conf/jvm.conf file

-Xms512M
-Xmx6G

When executing

tnd-config set --file conf/jvm.conf -Xmx31G -Dsso.config=sso.xml

Then the file updated and has the following content

-Xms512M
-Xmx31G
-Dsso.config=sso.xml

Consider the following conf/platform.properties file

com.systar.gluon.clusterId=0979270D-C444-28C6
org.osgi.service.http.port=8080

When executing

tnd-config set --file conf/platform.properties org.osgi.service.http.port=1234 com.systar.boson.jmx.port=1099

Then the file is updated and has the following content

com.systar.gluon.clusterId=0979270D-C444-28C6
org.osgi.service.http.port=1234
com.systar.boson.jmx.port=1099

Remove values

You can remove values from a file in your node directory. If the value was not defined in the file in the first place, then it is skipped. 

Command
tnd-config remove --file <file_to_update> [<value_to_remove>...]
  • <file_to_update> must be a path relative to the root directory, such as conf/platform.properties
conf/jvm.conf example conf/platform.properties example

Consider the following conf/jvm.conf file

-Xms512M
-Xmx6G
-Dsso.config=sso.xml

When executing

tnd-config remove --file conf/jvm.conf -Dsso.config -Dother

Then the file is updated and has the following content

-Xms512M
-Xmx6G

Consider the following conf/platform.properties file

com.systar.gluon.clusterId=0979270D-C444-28C6
org.osgi.service.http.port=8080
com.systar.boson.jmx.port=1099

When executing

tnd-config remove --file conf/platform.properties com.systar.boson.jmx.port com.acme.prop

Then the file is updated and has the following content

com.systar.gluon.clusterId=0979270D-C444-28C6
org.osgi.service.http.port=8080

Merge contents with another file

You can merge the contents of a file into another.

Command
tnd-config merge --file <file_to_update> --path <file_to_merge>
  • <file_to_update> must be a path relative to the root directory, such as conf/platform.properties
  • <file_to_merge> can be an absolute path or a path relative to the current directory


conf/jvm.conf example conf/platform.properties example

Considering the following conf/jvm.conf file

-Xms512M
-Xmx6G

And the following /opt/backup/adi/conf/jvm.conf file content we want to merge

-Xmx31G
-Dsso.config=sso.xml

When executing

tnd-config merge --file conf/jvm.conf --path /opt/backup/adi/conf/jvm.conf

Then the file updated and has the following content

-Xms512M
-Xmx31G
-Dsso.config=sso.xml

Considering the following conf/platform.properties file

com.systar.gluon.clusterId=0979270D-C444-28C6
org.osgi.service.http.port=8080

And the following /opt/backup/adi/conf/platform.properties file content we want to merge

org.osgi.service.http.port=1234
com.systar.boson.jmx.port=1099

When executing

tnd-config merge --file conf/platform.properties --path /opt/backup/adi/conf/platform.properties

Then the file is updated and has the following content

com.systar.gluon.clusterId=0979270D-C444-28C6
org.osgi.service.http.port=1234
com.systar.boson.jmx.port=1099

Multiple file update

Export all configuration changes

You can export all your configuration changes in a single file, which we'll call a configuration file,  so that this configuration file may be applied to another node later on, for example when doing a CLI node installation.

Command
tnd-config diff --config <configuration_file_to_create>
  • <configuration_file_to_create> can be an absolute path or a path relative to the current directory

The produced configuration file contains all configuration changes in your node. For more information about configuration files, see About configuration files.

Apply configuration changes

Once you have generated the export file for your node configuration changes, you can apply the changes all at once to a freshly installed node.

Command
tnd-config apply --config <configuration_file_to_apply>
  • <configuration_file_to_apply> can be an absolute path or a path relative to the current directory

Merge from another node

The 2 previous subsections explained how to export all modifications in a file and then how to apply all them. You can also do that in one shot using the merge command.

Command
tnd-config merge --path <other_node>
  • <other_node> can be an absolute path or a path relative to the current directory

About configuration files

A configuration file contains information about file settings and file changes in your node directory. You can use configuration files to apply several node settings to one node all in one command line. 

A change can be:

  • deletion of a file in your node
  • An overwrite of a file in your node 
  • A merge of a specified content with the content of a file in your node

You can, for example, add or update some platform properties with a merge, create an encryption.key file with an overwrite and delete an old configuration file with a deletion.

Once you have a node configuration that you are satisfied with, you may also generate a configuration file for this node configuration if you're planning to install several other nodes with the same node settings. For example, in the context of a primary/replica installation, you could have one configuration file to configure your primary node and one configuration file to install all your replica nodes. For more information about installing a node using a configuration file, seee CLI node installation.

Format of a configuration file

Configuration file format
[ <filePath> <action>]
<content>
 
[ <filePath> <action> <textFormat>]
<content>


...

A configuration file is divided in multiple sections.

Each section represents an update to a specific file of the node. 

A section starts with a line containing:

  • The file to update <filePath>
  • The action to perform on the file <action>.
  • Optionally, the format of the file <textFormat>

This first line is followed by the content of the update <content>.

Actions

Overwrite

This action will overwrite an existing file or create a new one with the specified content.

Configuration file overwrite action example
[conf/encryption.key overwrite @base64]
Et7KgHv7K8qQzMOyoszvug==

[var/data/default.hash overwrite]
4095:2b6e8c51c1dd840aa17a5f4bc9332b4fa352f8cd33f54262:47baaaebf159428fc98adaece419bfa07e28d67bf3ec3231

[lib/licences/axway-decision-insight-r-d-2018.102.852.licence overwrite @base64]
UEsDBBQACAgIAJtOIkwAAAAAAAAAAAAAAAAUAAQATUVUQS1JTkYvTUFOSUZFU1QuTUb+ygAAlZDB
DoIwEETvTfoP/YFtgESDvaFcSMCLiffSrtgE2qRglL8XLKLx5nFnZ+ZttpLWXLAf4Iy+N84KFvOI
kiwvoKygyKd5u6Nkf7O6RTiNXe1ao46yQ8GU67h83OXIpTZ8ktEq5PXLGhagUZm5FoztTUMJuw7g
Qa+FKzWJ4pTHUcLTTbJuA6YMxSyIf2An3Jv8gz3IARvnR8GWOIT4aqiWt3zu+zrZaucFy2YSJZQ8
AVBLBwihBfyTrwAAAEMBAABQSwMEFAAICAgAm04iTAAAAAAAAAAAAAAAABwAAABNRVRBLUlORi9s
...

In this example, we are creating or overwriting the Decision Insight database encryption key in conf/encryption.key with the specified content in @base64 (binary files such as the license or an SSO are stored as base64).
Same for the license and the default admin password.

Merge

This action merges the content of an existing property file with the specified content. This action is made to work with any property or configuration file.

The below lists useful information to consider when using the merge action:

  • If a property with the same name exists in the node, the value will be replaced by the value specified in the configuration file
  • If the property doesn't exist, it will be created.
  • Use -remove before a property to remove it.
Configuration file merge action example
[conf/platform.properties merge]
# Specify the listening TCP port for HTTP request
org.osgi.service.http.port=8000
org.apache.felix.https.enable=true
org.osgi.service.http.port.secure=8443
org.apache.felix.https.keystore=/opt/certificates/myKeystore.jks
org.apache.felix.https.keystore.password=myKeystorePassword
org.apache.felix.https.keystore.key.password=myKeystoreKeyPassword

-remove com.systar.boson.jmx.port

[conf/jvm.conf merge]
-Duser.timezone=Europe/London

[conf.path.conf merge]
JRE_DIR=/opt/jdk-11.0.2

Here we first update the platform.properties file by updating the property org.osgi.service.http.port and then by deleting the property com.systar.boson.jmx.port
Then we update the jvm.conf file by updating the timezone and the path.conf by updating the jre.

Delete

This action will delete the specified file. No content is needed.

[conf/oldPlatform.properties delete]

Here we delete an old platform.properties file.

Example

Configuration file global example
[conf/platform.properties merge]
# Specify the listening TCP port for HTTP request
org.osgi.service.http.port=8000
org.apache.felix.https.enable=true
org.osgi.service.http.port.secure=8443
org.apache.felix.https.keystore=/opt/certificates/myKeystore.jks
org.apache.felix.https.keystore.password=myKeystorePassword
org.apache.felix.https.keystore.key.password=myKeystoreKeyPassword

-remove com.systar.boson.jmx.port

[conf/jvm.conf merge]
-Duser.timezone=Europe/London

[conf.path.conf merge]
JRE_DIR=/opt/jdk-11.0.2
 
[conf/oldPlatform.properties delete]
 
[conf/encryption.key overwrite @base64]
Et7KgHv7K8qQzMOyoszvug==

[var/data/default.hash overwrite]
4095:2b6e8c51c1dd840aa17a5f4bc9332b4fa352f8cd33f54262:47baaaebf159428fc98adaece419bfa07e28d67bf3ec3231

[lib/licences/axway-decision-insight-r-d-2018.102.852.licence overwrite @base64]
UEsDBBQACAgIAJtOIkwAAAAAAAAAAAAAAAAUAAQATUVUQS1JTkYvTUFOSUZFU1QuTUb+ygAAlZDB
DoIwEETvTfoP/YFtgESDvaFcSMCLiffSrtgE2qRglL8XLKLx5nFnZ+ZttpLWXLAf4Iy+N84KFvOI
kiwvoKygyKd5u6Nkf7O6RTiNXe1ao46yQ8GU67h83OXIpTZ8ktEq5PXLGhagUZm5FoztTUMJuw7g
Qa+FKzWJ4pTHUcLTTbJuA6YMxSyIf2An3Jv8gz3IARvnR8GWOIT4aqiWt3zu+zrZaucFy2YSJZQ8
AVBLBwihBfyTrwAAAEMBAABQSwMEFAAICAgAm04iTAAAAAAAAAAAAAAAABwAAABNRVRBLUlORi9s
...

Related Links