Service Roles#
A Service Role is defined as a mode a runtime node runs in. It is possible to configure a service-role without the corresponding runtime node actually being running, a concept called pre-provisioning. When the actual node (the JVM) wakes up, it connects to the admin node, and receives the configuration that is defined for that particular instance. The service-role a runtime node should execute as is provided via the -s command line argument (or in the startup.properties) when starting the idsvr process on the machine.
A typical service configuration has the following form:
<service-role>
<id>Runtime</id>
<location>Lab</location>
<enabled>true</enabled>
<listening-host>0.0.0.0</listening-host>
<listening-port>8443</listening-port>
<protocol>https</protocol>
<ssl-server-keystore>server-key-1</ssl-server-keystore>
<endpoints>authenticate</endpoints>
<endpoints>register</endpoints>
</service-role>
The service-role is located in the configuration at:
service-role
The available parameters for a service are:
id(string, mandatory): The given name of the service-rolelocation(string, optional): An optional location, describing where the node can be found. For the administrator’s use.enabled(boolean, default true): If the node should be enabled or disabled.listening-host(host, default 0.0.0.0): The host on which the node should be accepting HTTP requests.listening-port(uint16, default 8443): The port on which the node should be accepting HTTP requests.connections(connectionsSetting): Incoming connections settings. See Accepting Incoming Connections .protocol(enumeration, default https): Eitherhttporhttps. WARNING: http is only available for development use!ssl-server-keystore(ref, mandatory if https is used): A pointer to an ssl-server-keystore that should be used as the SSL Server key.endpoints(ref, multiple): The endpoints that should be available on this service. This attribute can be repeated.