Configuration properties for federated IBM BPM systems
The server.xml configuration file on Process Federation Server contains properties for each IBM® BPM system in the federated environment and its associated index.
- The ibmPfs_federatedSystem element
- For the BPD indexing service:
- For the BPEL indexing service:
The ibmPfs_federatedSystem element
Property | Default value | Description |
---|---|---|
id | none | Unique identifier for the federated IBM BPM system.
Use this property to refer to a specific system and for linking it
to other indexing elements in the server.xml file.
In a cluster of process federation servers, each server must use the
same identifier for a given federated IBM BPM system. If there are multiple unique process federation server environments (unique clusters), the identifier must be unique across the process federation server environments, even if they are connect to a common federated IBM BPM system. The identifier also determines which consumer column is used in the change log tables; one consumer column is used for each identifier. For example, two unique federated environments act as separate change log consumers and therefore each federated environment requires its own unique identifier. Attention: If
an index name is not specified, the value of the id property,
must conform to the rules for the indexName property.
Required |
indexName | none | The name of the Process Federation Server index.
The following rules apply to the name:
If an index name is not specified, the value of the property is set to the value id property. Optional |
restUrlPrefix | none | This property is only applicable to BPD systems. The base URL that is used by business-user clients to access the federated IBM BPM system. It is returned to clients in the federationResponse object so that they can call REST services on the federated IBM BPM system. If the federated IBM BPM system has an HTTP server or reverse proxy server that is configured in front of the system, clients should use the URL of the HTTP server or reverse proxy server. Example: https://bpmHost.com:9443/rest/bpm/wle Required |
taskCompletionUrlPrefix | none | This property is only applicable to BPD systems. The base URL that is used by business-user clients for task completion on the IBM BPM federated system. It is returned to clients in the federationResponse object so that they can complete tasks on the federated IBM BPM system. If the federated IBM BPM system has an HTTP server or reverse proxy server that is configured in front of the system, clients should use the URL of the HTTP server or reverse proxy server. Example: https://bpmHost.com:9443/teamworks Required |
index.number_of_shards | 12 | The number of shards for the index. You cannot
change this value after the index is created. This property is passed
directly to the Elasticsearch service. For more information, see
the Elasticsearch documentation. Each process federation server maintains one or more of the index shards. To distribute indexing and query workload across more than 12 process federation servers in a cluster, set the default higher than 12. Optional. The default setting is used if a value is not set. |
index.number_of_replicas | 1 | The number of index replicas. Replicas provide
fault tolerance and enable you to distribute queries across multiple
servers. A value of ‘1’ indicates 1 primary index and
1 replica per shard. Optional. The default setting is used if a value is not set. |
index.refresh_interval | 1s | Determines how often the index
is refreshed, in seconds, in the Elasticsearch cache. This property
is passed directly to the Elasticsearch service. For more information,
see the Elasticsearch documentation. Optional. The default setting is used if a value is not set. |
allowedOrigins | null | A comma-separated list of servers, which host
business user clients that are authorized to query the federated IBM BPM system
by using the REST APIs. The configured value must match exactly the
value in the client’s ‘Origin’ header in the REST
request. Often the client communicates with an HTTP server instead
of the application server that hosts the web application. In this
case, use the HTTP server value instead of the application server
value. If you set the value of the property to "*" (asterisk), clients from all originating servers are allowed to query the index. This
property is used to determine authorization as follows:
Example: https://server1:9443, https://server2:9443 Required |
launchListPriority | 1000 | If a process application is deployed on multiple
federated IBM BPM systems,
use this property to determine which system takes priority when the
launch list is returned. A low value indicates a high priority. If you want to route all new instances to a specific IBM BPM system, then give that system a lower priority, for example 1. The Process Federation Server launch list API returns the URL for this federated system in the launch list. To load balance new instances across all federated IBM BPM systems, set the same value for each system. The Process Federation Server launch list API returns a URL for only one of the federated systems that is chosen at random. In this way, the workload is load balanced. |
- ibmPfs_federatedSystem element example
- The following code snippet is an example of a configured ibmPfs_federatedSystem element:
<ibmPfs_federatedSystem id="bpm1" index.number_of_shards="12" index.number_of_replicas="1" allowedOrigins="*" restUrlPrefix="https://bpmHost.com:9443/rest/bpm/wle" taskCompletionUrlPrefix="https://bpmHost.com:9443/teamworks" />
The ibmPfs_bpdIndexer element
Property | Default value | Description |
---|---|---|
federatedSystemRef | none | Refers to the id property
in the associated ibmPfs_federatedSystem element. Required |
dataSourceRef | none | The data source for the Process Server database on the IBM BPM system. This property refers to the data source ID that is set in the dataSource element in the server.xml file. The indexing service uses this data source to connect to the Process Server database to index tasks. Required |
schemaName | none | The name of the schema that contains the tables
with the BPD-related data. Required |
executorServiceRef | Default executor service | The executor service that provides the threads
for the indexing service. Optional |
indexingInterval | 1s | The time, in seconds, between index updates. Optional. The default setting is used if a value is not set. |
numberOfRetries | -1 | The number of times the BPD indexing service
attempts to update the index. If the retry limit is reached, indexing
stops. A value of -1 indicates that index updates are retried indefinitely. Optional. The default setting is used if a value is not set. |
synchronizeTasksInterval | 1h | The time, in hours, between each synchronization
of tasks with the change log for indexing. If change logging is enabled
for BPD tasks, they are automatically indexed at run time. For information
about enabling change logging, see Enabling indexing of BPD-related data on an IBM BPM server in a federated environment. If change logging is not enabled, or if tasks were not indexed at run time, use this synchronization utility to get the system into a consistent state. The synchronization utility also runs when the indexer first starts to initialize the index on a new IBM BPM system in the federated environment. Optional. The default setting is used if a value is not set. |
synchronizeTasksDeleteInterval | 1h | The time, in hours, between checking the Process
Server database on the IBM BPM system
for deleted tasks. If tasks were deleted, this utility marks them
as deleted in the change log so that they can be deleted from the
index. Optional. The default setting is used if a value is not set. |
indexLogTrimInterval | 1h | The time, in hours, between checking the age
of the entries in the audit log table, PFS_BPD_CHANGE_LOG_CONSMR_LOG,
for the Process Federation Server.
Old entries are automatically purged after 1 week. Optional. The default setting is used if a value is not set. |
changeLogCompactionInterval | 1h | The time, in hours, between compacting the change
log. Over time, the task change log can build up redundant data. This
compaction utility removes redundant data. Optional. The default setting is used if a value is not set. |
bpdServerTimezone | none | The IBM BPM server's
timezone setting. Timestamps are stored in the Process Server database
in the IBM BPM server's
timezone. To ensure that the BPD data is indexed correctly, set a
value for the bpdServerTimezone property by
using a valid Java timezone. Example: bpdServerTimezone="America/Chicago" Optional. If the value is not set, it is assumed that Process Federation Server and the IBM BPM server are in the same timezone. |
- ibmPfs_bpdIndexer element example
- The following code snippet is an example of a configured ibmPfs_bpdIndexer element:
<ibmPfs_bpdIndexer federatedSystemRef="bpm1" dataSourceRef="bpm_db2" schemaName="DB2ADMIN" />
The ibmPfs_bpdRetriever element
Property | Default value | Description |
---|---|---|
internalRestUrlPrefix | none | The REST service location that is used for communicating
between Process Federation Server and
the federated IBM BPM system. If the federated IBM BPM system has an HTTP server or reverse proxy server that is configured in front of the system, the URL is for the HTTP server or reverse proxy server that is used by internal components. This URL might be different from the RestUrlPrefix that is used by clients. Example: https://bpmHost.com:9443/rest/bpm/wle Required |
federatedSystemRef | none | Refers to the id property
in the associated ibmPfs_federatedSystem element. Required |
connectTimeout | 10s | The maximum length of time, in seconds, that
the retrieval service waits to connect to the federated IBM BPM system. Optional. The default setting is used if a value is not set. |
readTimeout | 10s | The maximum length of time, in seconds, that
the retrieval service waits to read data from the federated IBM BPM system. Optional. The default setting is used if a value is not set. |
- ibmPfs_bpdRetriever element example
- The following code snippet is an example of a configured ibmPfs_bpdRetriever element:
<ibmPfs_bpdRetriever internalRestUrlPrefix="https://bpmHost.com:9443/rest/bpm/wle" federatedSystemRef="bpm1" connectTimeout="10s" readTimeout="10s"/> />
The ibmPfs_bpelIndexer element
Property | Default value | Description |
---|---|---|
federatedSystemRef | none | Refers to the id property
in the associated ibmPfs_federatedSystem element. Required |
dataSourceRef | none | The data source for the Process Server database on the IBM BPM system. This property refers to the data source ID that is set in the dataSource element in the server.xml file. The indexing service uses this data source to connect to the Process Server database to index tasks. Required |
schemaName | none | The name of the schema that contains the tables
for the BPEL-related data. Required |
executorServiceRef | Default executor service | The executor service that provides the threads
for the indexing service. Optional |
indexingInterval | 1s | The time, in seconds, between index updates. Optional. The default setting is used if a value is not set. |
numberOfRetries | -1 | The number of times the BPEL indexing service
attempts to update the index. If the retry limit is reached, indexing
stops. A value of -1 indicates that index updates are retried indefinitely. Optional. The default setting is used if a value is not set. |
synchronizeTasksInterval | 1h | The time, in hours, between each synchronization
of tasks with the change log for indexing. If change logging is enabled
for BPEL tasks, they are automatically indexed at run time. For information
about enabling change logging, see Enabling indexing of BPEL-related data on an IBM BPM server in a federated environment. If change logging is not enabled, or if tasks were not indexed at run time, use this synchronization utility to get the system into a consistent state. The synchronization utility also runs when the indexer first starts to initialize the index on a new IBM BPM system in the federated environment. Optional. The default setting is used if a value is not set. |
indexLogTrimInterval | 1h | The time, in hours, between checking the age
of the entries in the audit log table, PFS_BPEL_CHANGE_LOG_CONSMR_LOG,
for the Process Federation Server.
Old entries are automatically purged after 1 week. Optional. The default setting is used if a value is not set. |
The ibmPfs_bpelRetriever element
Property | Default value | Description |
---|---|---|
internalRestUrlPrefix | none | The REST service location that is used for communicating
between Process Federation Server and
the federated IBM BPM system. If the federated IBM BPM system has an HTTP server or reverse proxy server that is configured in front of the system, the URL is for the HTTP server or reverse proxy server that is used by internal components. This URL might be different from the RestUrlPrefix that is used by clients. Required |
federatedSystemRef | none | Refers to the id property
in the associated ibmPfs_federatedSystem element. Required |
connectTimeout | 10s | The maximum length of time, in seconds, that
the retrieval service waits to connect to the federated IBM BPM system. Optional. The default setting is used if a value is not set. |
readTimeout | 10s | The maximum length of time, in seconds, that
the retrieval service waits to read data from the federated IBM BPM system. Optional. The default setting is used if a value is not set. |
- ibmPfs_bpelRetriever element example
- The following code snippet is an example of a configured ibmPfs_bpelRetriever element:
<ibmPfs_ibmPfs_bpelRetriever internalRestUrlPrefix="https://bpmHost.com:9443/rest/bpm" federatedSystemRef="bpel1" connectTimeout="10s" readTimeout="10s"/> />