node-config.json

This JSON file allows to configure the Platform Private Cloud system and it's nodes. Various sections and their details are as follows:

Databases Section

This allows adding/updating databases other than the masterDB. Each entry in this section has the following attributes:

Attribute Description
name (attribute) Symbolic name for database, used internally

Default: RB

isDefault (attribute) Marks database used by default for new customers

Default: None

isExternal (attribute) Marks database which contains external data tables

Default: None

MinConnections (attribute) Number of database connections initially created in this pool

Default: MinConnections from Shared Properties

MaxConnections (attribute) Max number of database connections in this pool

Default: MaxConnections from Shared Properties

MaxInUseConnTimeMins (attribute) Max time (in minutes) allowed database connection to be in use, connection will be closed when time is up

Default: MaxInUseConnTimeMins from Shared Properties

MaxNotUsedConnTimeMins (attribute) Max time (in minutes) allowed database connection in a pool to be idle, connection will be closed when time is up

Default: MaxNotUsedConnTimeMins from Shared Properties

MaxConnLifetimeMins (attribute) Max connection lifetime before closure (in minutes)

Default: MaxConnLifetimeMins from Shared Properties

ConnTimeoutSec (attribute) Timeout (in seconds) used when new database connection is created

Default: None, uses database default

TxIsolation Consult your database manual regarding transaction isolation level, if not sure about this setting - do not use it (database default)
useTxRecovery (attribute) Enables or disables the default connection pooling's transaction recovery and retry feature

When using Oracle or SQLServer databases and DataDirect drivers, Infinite Blue recommends that customers omit this attribute and use the driver's retry feature instead.

Driver Class name for JDBC driver used for this database

Default: com.mysql.jdbc.Driver

Url JDBC URL to database's service

jdbc:mysql://localhost:3306/RB_DBO

ConnectionRetryCount (attribute) Number of times the driver retries connection attempts to the database server until a successful connection is established.

Default: 0

ConnectionRetryDelay (attribute) Number of seconds the driver waits between connection retry attempts when the ConnectionRetryCount attribute is set to a positive integer

Default: 3

DbUser Database user

Default: account root

Password Password for user account

Default: None (must be specified prior to installation)

Note: The evaluation edition does not support multiple databases.

nodeProps section

The nodeProps section contains properties that apply to a particular Platform node. For example, StorageDir applies to nodes that run the STORAGE or BACKUP component and access locally stored customer files.

Attribute Description
FontDirs The possible PD4ML fonts directory paths that is processed to locate fonts.properties and PD4ML font files

Default for Windows: C:\Windows\Fonts

Default for Linux: /usr/share/fonts/

StorageDir

Directory containing customer uploaded files, backup files, templates, images, and other customer storage. BACKUP components use this location when creating or restoring file payloads for locally stored customers.

Default: <ROLLBASE_HOME>/storage

LogDir Directory to store log files, if log files should be kept in separate location.

Default: <ROLLBASE_HOME>/log

IndexDir Directory to store lucene or elastic files.

Default: <ROLLBASE_HOME>/search

AnalyticsLogDir Directory to store analytics logs.

Default: <ROLLBASE_HOME>/log/analytics.log

Configuring BACKUP components in a multi-node deployment

In a multi-node deployment, you can run multiple BACKUP component instances on separate nodes. Each BACKUP node requires its own node-config.json file. Set serverUrl to the URL of the corresponding node and add the BACKUP component to the components array.

The following examples show the relevant configuration for two BACKUP nodes. Retain all other required sections and properties in the complete node-config.json file.

BACKUP node 1

{
"serverUrl": "http://backup1:8080",
"components": [
{
"name": "BACKUP",
"type": "BACKUP",
"internalRoot": "/backup1",
"externalRoot": "/backup1"
}
]
}

BACKUP node 2

{
"serverUrl": "http://backup2:8080",
"components": [
{
"name": "BACKUP",
"type": "BACKUP",
"internalRoot": "/backup2",
"externalRoot": "/backup2"
}
]
}

Configure the properties as follows:

Property Description
serverUrl URL of the node on which the BACKUP component runs. Specify the appropriate node URL in the node-config.json file on each machine.
components Components deployed on the node.
name Name used to identify the component.
type Component type. Specify BACKUP for a BACKUP component.
internalRoot Context root used to access the component internally.
externalRoot Context root used to access the component externally.

Ensure that the component names, URLs, and context roots correspond to the values configured for your deployment and web proxy.

On the Master Server, include the component details for all Platform components. For additional configuration instructions, see Configuring multiple instances of Platform components.

In a multi-node deployment, ensure that each BACKUP node can access the same customer storage data used by the corresponding STORAGE component.

webProxies Section

This allows adding web proxies to the list. This is consumed at system start which makes it helpful for first time configuration but can be used on existing systems when say, your hostname is changing. For adding more proxies to an existing system, the Add Server option in system console can also be used. Each entry in the list has the following properties:

Attribute Description
url

Url of the web proxy.

E.g. { "url": "http://localhost:9080" }

This applies when Platform is configured as multi-server or high availability mode. For more information, see Configuring high availability.

updateSharedProps Section

This allows specifying a set of shared properties that should be consumed on system start. Although changes to shared properties is allowed using editor in System Console app, when a property needs to be effected at system start, use this section. The properties specified here are consumed at system initialization and updated in database.

Refer to the node-config.json file for actual shared properties for your system.

Note: Once consumed, the properties are cleared from this section which is normal.