Configure the Runtime
Overview
There are several entry points to configure the Runtime:
-
Using Environment Variables, you can configure the startup parameters of the runtime process
-
In the Runtime Configuration File, you can configure the services, security, repositories, logging and all advanced runtime parameters.
-
In the Scheduler Configuration File, you can configure the runtime built-in scheduler service.
Environment Variables
Startup Variables
The following optional environment variables may be defined to configure the Runtime startup.
Environment variable | Description |
---|---|
|
Path of the Java Virtual Machine used by the Runtime. This variable is set to the default Java Virtual Machine installed, and may be changed to use a specific JVM version. |
|
Path of directory containing the configuration file. Use this property to store the configuration separately from the Runtime installation. For example, |
|
Initial heap size (RAM allocated) of the Runtime’s Java Virtual Machine. For example, |
|
Maximum heap size (RAM allocated) of the Runtime’s Java Virtual Machine. For example, |
|
Size limit of each thread in the Runtime’s Java Virtual Machine. For example, |
Environment Variables in Configuration Files
You can also set parameters in the Runtime Configuration File from environment variables using the following syntax:
${environment.variable:<ENV_VARIABLE_NAME>:<default value>}
In this syntax:
-
<ENV_VARIABLE_NAME>
is the environment variable name -
<default value>
is the fallback value to use if the environment variable is unset.
For example, with the following syntax, the launchSchedulerEngine
parameter will take the value of the XDI_DESIGNER_SCHEDULER_ENABLE
environement variable, with a fallback on the true
value if that environment variable is unset.
<parameter
name="launchSchedulerEngine"
value="${environment.variable:XDI_DESIGNER_SCHEDULER_ENABLE:true}"
/>
You can find examples of configurations customized with
environment variables in the properties/samples/enginesParameters directory.
|
Use this mechanism to configure the Runtime entirely from environment variables, for example to run it in Docker containers. |
Configuration Files
The runtime uses two main configuration files:
-
engineParameters.xml
contains the runtime configuration -
engineScheduler.properties
contains the built-in scheduler configuration
Both these files are located by default in properties
sub-directory the Runtime installation directory.
You can define for a runtime the location for the configuration files, using the XDI_RUNTIME_PROPERTIES_LOCATION
environment variable.
To facilitate runtime upgrades, it is recommended to copy the properties folder in a folder not located under the runtime installation folder, and set the XDI_RUNTIME_PROPERTIES_LOCATION to point to that folder. With this configuration, overwriting the runtime folder during an upgrade will not lose the configuration.
|
Runtime Configuration File
The Runtime configuration file is located by default in properties
sub-directory the Runtime installation directory and is named engineParameters.xml
.
Using this file, you can configure:
-
The services that are started, the listening ports, etc.
-
The security, for example, hostname and user/password restrictions, roles, etc.
-
The repositories storing the deliveries
-
The log storage where session logs are stored .
Scheduler Configuration File
The Runtime scheduler configuration file is located by default in properties
sub-directory the Runtime installation directory and is named engineScheduler.properties
.
Using this file, you can configure where the schedules are stored.
See Runtime Scheduler for more information.