此内容没有您所选择的语言版本。
Installing and configuring Red Hat Process Automation Manager in a Red Hat JBoss EAP 7.1 clustered environment
Abstract
Preface 复制链接链接已复制到粘贴板!
As a system engineer, you can create a Red Hat Process Automation Manager clustered environment to provide high availability and load balancing for your development and runtime environments.
Prerequisite
You have reviewed the information in Planning a Red Hat Process Automation Manager installation.
Chapter 1. Red Hat Process Automation Manager clusters 复制链接链接已复制到粘贴板!
By clustering two or more computers, you have the benefits of high availability, enhanced collaboration, and load balancing. High availability decreases the chance of a loss of data when a single computer fails because data on all of the computers (nodes) of the cluster is replicated on each node of the cluster. When a computer fails, another computer fills the gap by providing a copy of the data that was on the failed computer. When the failed computer comes online again, it resumes its place in the cluster. Load balancing shares the computing load across the nodes of the cluster. Doing this improves the overall performance.
There are several ways that you can cluster Red Hat Process Automation Manager components. This document describes how to cluster the following scenarios in domain mode:
Chapter 2. Domain mode clusters 复制链接链接已复制到粘贴板!
By using domain mode with a cluster, you can centrally store, manage, and publish configurations for your servers. This section explains key concepts in domain mode clustering.
Domain controller: The domain controller is responsible for storing, managing, and publishing the general configuration for each node in the cluster. It is the central point from which nodes in a cluster obtain their configuration. The node that runs the domain controller is referred to as the master node and the other nodes of the cluster are referred to as slave nodes. The domain controller is configured with the domain.xml file.
Host controller: The host controller manages server instances on a specific node. You configure it to run one or more server instances. The domain controller can also interact with the host controllers on each system to manage the cluster. To reduce the number of running processes, a domain controller also acts as a host controller on the system it runs on. On slave nodes, the host controller is configured with the host.xml file.
Domain profile: A domain profile is a named configuration that a server can use to boot from. A domain controller can define multiple domain profiles that are consumed by different servers.
Server group: A server group is a set of server instances that are managed and configured together. You can manage configurations, deployments, socket bindings, modules, extensions, and system properties for each server group. You can assign a domain profile to a server group and every service in that group will use that domain profile as their configuration.
In domain mode, a domain controller is started on the master node of the cluster. The configuration for the cluster is located in the domain controller. Next, a host controller is started on all of slave nodes of the cluster. Each host controller deployment configuration specifies how many server instances will be started on that system. When the host controller boots up, it starts as many server instances as it was configured to do. These server instances pull their configuration from the domain controller.
Developers use Red Hat Process Automation Manager to author rules and processes that assist users with decision making. The primary benefit of clustering Red Hat Process Automation Manager development environments is high availability. If clustering is configured and Developer X is working on Node1 and that node fails, Developer X’s work is preserved and visible on any other node of the cluster.
Most development environments consist of Business Central for creating rules and processes and at least one Process Server to test those rules and processes .
You can also use this configuration for runtime environments if you want to use Business Central to manage the Process Servers in the cluster.
To create a Red Hat Process Automation Manager clustered development environment, you download and extract Red Hat JBoss EAP 7.1 and Red Hat Process Automation Manager 7.0. Then, you configure Red Hat JBoss EAP 7.1 for a domain-mode cluster, including Elasticsearch and the Artemis Java messaging server (JMS) broker resource adapter integrated with Red Hat JBoss EAP. Finally, you start the cluster and install Business Central on each cluster node.
Elasticsearch is a highly scalable open source full-text search and analytics engine. It enables you to store, search, and analyze high volumes of data quickly and in near-real time. In a Red Hat Process Automation Manager clustered environment, it enables you to perform complex and efficient searches across cluster nodes.
The Artemis JMS broker resource adapter enables your applications to communicate with any messaging provider. It specifies how components such as message-driven beans, Enterprise JavaBeans, and servlets can send or receive messages.
3.1. Installing and configuring Elasticsearch 复制链接链接已复制到粘贴板!
Elasticsearch is a highly scalable open source full-text search and analytics engine. It enables you to store, search, and analyze high volumes of data quickly and in near-real time. In a Red Hat Process Automation Manager clustered environment, it enables you to perform complex and efficient searches across cluster nodes.
This procedure describes how to set up Elasticseach for a simplified, non-high availability environment. To configure Elasticsearch for a high availability Red Hat Process Automation Manager clustered environment, see the Elasticsearch documentation.
Procedure
- Download and unzip the Elasticsearch installation file.
Replace the contents of the
elasticsearch/config/elasticsearch.ymlfile with the following content, where<ELASTICSEARCH_NODE_IP>is the IP address of the system where you unzipped the Elasticsearch file:cluster.name: kie-cluster transport.host: <ELASTICSEARCH_NODE_IP> http.host: <ELASTICSEARCH_NODE_IP> transport.tcp.port: 9300 discovery.zen.minimum_master_nodes: 1
cluster.name: kie-cluster transport.host: <ELASTICSEARCH_NODE_IP> http.host: <ELASTICSEARCH_NODE_IP> transport.tcp.port: 9300 discovery.zen.minimum_master_nodes: 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow Run Elasticsearch:
On Linux or UNIX-based systems, enter:
ELASTICSEARCH_HOME_/bin/elasticsearch
ELASTICSEARCH_HOME_/bin/elasticsearchCopy to Clipboard Copied! Toggle word wrap Toggle overflow On Windows, enter:
ELASTICSEARCH_HOME\bin\elasticsearch.bat
ELASTICSEARCH_HOME\bin\elasticsearch.batCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Complete the steps in this section to download and install Red Hat JBoss EAP 7.1 and download and repackage Red Hat Process Automation Manager 7.0 for installation in a clustered environment.
Procedure
Install Red Hat JBoss EAP 7.1 on each node of the cluster:
Navigate to the Software Downloads page in the Red Hat Customer Portal (login required), and select the product and version from the drop-down options:
- Product: Enterprise Application Platform
- Version: 7.1
-
Click Download next to Red Hat JBoss Enterprise Application Platform 7.1.0. (
JBEAP-7.1.0/jboss-eap-7.1.0.zip). -
Extract the
jboss-eap-7.1.0.zipfile. In the following steps,EAP_HOMEis thejboss-eap-7.1/jboss-eap-7.1directory.
On the cluster node where the Red Hat JBoss EAP domain controller will be started (the master node), navigate to the Software Downloads page in the Red Hat Customer Portal, and select the product and version from the drop-down options:
- Product: Process Automation Manager
- Version: 7.0
-
Download Red Hat Process Automation Manager 7.0.0 Business Central Deployable for Red Hat JBoss EAP 7 (
rhpam-7.0.0-business-central-eap7-deployable.zip). -
Extract the
rhpam-7.0.0-business-central-eap7-deployable.zipfile to a temporary directory. In the following examples this directory is calledTEMP_DIR. -
Copy the contents of
TEMP_DIR/rhpam-7.0.0-business-central-eap7-deployable/jboss-eap-7.1to EAP_HOME. Repackage the
business-central.warfile:-
Navigate to the
TEMP_DIR/rhpam-7.0.0-business-central-eap7-deployable/jboss-eap-7.1/standalone/deployments/business-central.wardirectory. -
Select the contents of the
TEMP_DIR/rhpam-7.0.0-business-central-eap7-deployable/jboss-eap-7.1/standalone/deployments/business-central.wardirectory and create thebusiness-central.zipfile. -
Rename
business-central.ziptobusiness-central.war. This is the file that you will use to deploy Business Central on the cluster nodes. -
If desired, copy the new
business-central.warfile to a location that is more convenient to deploy from.
-
Navigate to the
By using domain mode with a cluster, you can centrally manage and publish configurations for your servers. Domain mode provides a central location to store and publish configurations. Complete the steps in this section to configure a Red Hat JBoss EAP 7.1 cluster in domain mode, with Elasticsearch and the Artemis Java messaging server (JMS) broker resource adapter integrated with Red Hat JBoss EAP.
These steps describe a basic cluster configuration. For more complex configurations, see the Red Hat JBoss EAP 7.1 Configuration Guide.
Prerequisites
- Elasticsearch is installed as described in Section 3.1, “Installing and configuring Elasticsearch”.
- Red Hat JBoss EAP is installed on each node of the cluster as described in Section 3.2, “Downloading and extracting Red Hat JBoss EAP 7.1 and Red Hat Process Automation Manager”.
- An NFS server with a mounted partition is available.
Procedure
-
On the the master node of the cluster (where you will run the domain controller), open the
EAP_HOME/domain/configuration/domain.xmlfile in a text editor. Make the following changes for each server group in the
server-groupselement:-
Specify the
server-group nameandjvmname. -
To enable high availability, change the
profileto"full-ha"and thesocket-binding-groupto"full-ha-sockets". To prevent Business Central from running out of memory, increase the JVM maximum heap size to
1500m.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Specify the
Edit or add the following properties to the
<system-properties>element and replace the following placeholders:-
<ELASTICSEARCH_NODE_IP>is the IP addresses where Elasticseach is installed. -
<JMS_USER>is a Red Hat JBoss EAP application user. It is the user that Business Central uses to connect to the embedded JMS broker. <JMS_USER_PASSWORD>is the password for<JMS_USER>.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
In the
<subsystem xmlns="urn:jboss:domain:messaging-activemq:2.0">element, make the following changes:-
Replace
<cluster password="${jboss.messaging.cluster.password:CHANGE ME!!}"/>with<cluster user="<CLUSTER_USER>" password="<CLUSTER_PWD>"/>where<CLUSTER_USER>is the user used by Red Hat JBoss EAP to form a messaging cluster and<CLUSTER_PWD>is the password for that user. In the
security-settingelement , add the role of the<JMS_USER>to a newrole-nameelement, for example:<security-setting name="#"> <role name="guest" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/> <role name="admin" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/> </security-setting><security-setting name="#"> <role name="guest" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/> <role name="admin" send="true" consume="true" create-non-durable-queue="true" delete-non-durable-queue="true"/> </security-setting>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Replace
-
Save the
domain.xmlfile.
After you have installed Red Hat JBoss EAP and configured the domain.xml file for a Business Central clustered environment, complete these steps in the host.xml file on the master node and in the host-slave.xml file on each slave node.
Prerequisite
Red Hat JBoss EAP 7.1 is installed on each node of the cluster.
Procedure
-
Open the
EAP_HOME/domain/configuration/host.xmlfile or theEAP_HOME/domain/configuration/host-slave.xmlfile in a text editor. -
In the
main-server-group<servers>element, add the servers that will be part of the cluster. - Add the the system properties listed in Table 3.1, “Cluster node properties”
-
Save the
host.xmlorhost-slave.xmlfile.
| Property name | Value | Description |
|---|---|---|
|
| node name | A node name unique within the cluster (optional). |
|
| node name | The name of the daemon host machine in a physical cluster. |
|
| port number | The port used by the VFS repo to accept client connections. The port must be unique for each cluster member. |
|
| SSH host node name | The name of the SSH host machine in a physical cluster. |
|
| port number | The unique port number for ssh access to the GIT repo for a cluster running on physical machines. |
|
| .niogit directory |
The location of Git repositories stored under |
|
| SSH host port and daemon host port | In a virtualized environment, the outside port to be used. |
|
| .security directory |
The location of the |
The following examples demonstrate how to configure a three node cluster in the host.xml and host-slave.xml files:
Example 3.1. Cluster nodeOne Configuration
Example 3.2. Cluster nodeTwo Configuration
Example 3.3. Cluster nodeThree Configuration
After you have configured a Red Hat JBoss EAP cluster and repackaged Business Central, you must start the cluster and distribute the repackaged business-central.war file.
Prerequisites
- Elasticsearch is installed and running on one node of the cluster.
-
A Red Hat JBoss EAP 7.1 cluster is available and the
domain.xml,host.xml, andhost-slave.xmlfiles are configured. -
The repackaged
business-central.warfile is available.
Procedure
-
Add Red Hat JBoss EAP management users to the master node of the cluster (where you configured the
domain.xmlfile) as described in the Red Hat JBoss EAP 7.1 Configuration Guide. On each node of the cluster, add the following users:
- Add Business Central administration users as described in Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
Add the JMS user, where
<JMS_USER>and<JMS_PWD>is the JMS user and password combination that you added to thedomain.xmlfile:./add-user.sh -a --user <JMS_USER> --password <JMS_PWD> --role admin
$ ./add-user.sh -a --user <JMS_USER> --password <JMS_PWD> --role adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Start the cluster by starting the the master node first, then start each of the slave nodes.
To start the master node, enter one of the following commands:
On Linux or UNIX-based systems, enter:
<EAP_HOME>/bin/domain.sh
<EAP_HOME>/bin/domain.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow On Windows, enter:
<EAP_HOME>/bin/domain.bat
<EAP_HOME>/bin/domain.batCopy to Clipboard Copied! Toggle word wrap Toggle overflow
To start the slave nodes, on each of the slave nodes enter one of the following commands, where
<MASTER_NODE_IP>is the IP address of the master node (where the domain controller is configured):On Linux or UNIX-based systems, enter:
<EAP_HOME>/bin/domain.sh --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>
<EAP_HOME>/bin/domain.sh --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>Copy to Clipboard Copied! Toggle word wrap Toggle overflow On Windows, enter:
<EAP_HOME>/bin/domain.bat --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>
<EAP_HOME>/bin/domain.bat --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>Copy to Clipboard Copied! Toggle word wrap Toggle overflow For more information, see the following sections of the Red Hat JBoss EAP 7.1 Configuration Guide:
- "Starting JBoss EAP"
- "Managed Domain Configuration Files"
-
On each node of the cluster, review the
EAP_HOME/domain/servers/SERVER_NAME/log/server.logfile to verify that the nodes are available. To deploy the
business-central.warfile into the server group, complete the following steps:-
On the master node, log in to the Red Hat JBoss EAP
Administrationconsole as amanagementuser. - Click Deployments → Server Groups→ main-server-group and click Add.
- In the dialog box, click Upload a new deployment and click Next.
-
In the Upload Deployments dialog box, click Browse, select the
business-central.warfile, and click Next. Click Enable and click Next. When the deployment is complete, Business Central starts automatically on each node.
NoteMake sure to check deployment unit readiness with every cluster member.
When a deployment unit is created on a cluster node, it takes some time before it is distributed among all cluster members. You can check the deployment status using the server Administration console or REST API. However, if the query is sent to the node where the deployment was originally issued, the query will return a value of
deployed. If the query is sent to a node where the deployment has not yet been distributed, the query returnsDeploymentNotFoundException.
-
On the master node, log in to the Red Hat JBoss EAP
For more information about installing Business Central, see Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
In a runtime environment, Process Server runs rules and processes that support business decisions. The primary benefit of clustering a Process Server runtime environment is load balancing. If activity on one node of the cluster increases, that activity can be shared among the other nodes of the cluster to improve performance.
To create a Process Server clustered runtime environment, you download and extract Red Hat JBoss EAP 7.1 and Process Server. Then, you configure Red Hat JBoss EAP 7.1 for a domain-mode cluster, start the cluster, and install Process Server on each cluster node.
If desired, you can then cluster the headless Process Automation Manager controller and Smart Router.
Complete the steps in this section to download and install Red Hat JBoss EAP 7.1 and download and repackage Process Server for installation in a clustered environment.
Procedure
Install Red Hat JBoss EAP 7.1 on each node of the cluster:
Navigate to the Software Downloads page in the Red Hat Customer Portal (login required) and select the product and version from the drop-down options:
- Product: Enterprise Application Platform
- Version: 7.1
-
Click Download next to Red Hat JBoss Enterprise Application Platform 7.1.0. (
jboss-eap-7.1.0.zip). -
Extract the
jboss-eap-7.1.0.zipfile. Thejboss-eap-7.1/jboss-eap-7.1directory is referred to asEAP_HOME.
Download and extract Process Server:
Navigate to the Software Downloads page in the Red Hat Customer Portal and select the product and version from the drop-down options:
- Product: Process Automation Manager
- Version: 7.0
-
Download Red Hat Process Automation Manager 7.0.0 Process Server for All Supported EE7 Containers (
rhpam-7.0.0-kie-server-ee7.zip).
-
Extract the
rhpam-7.0.0-kie-server-ee7.ziparchive to a temporary directory. In the following examples this directory is calledTEMP_DIR.
Repackage the
kie-server.wardirectory:-
Navigate to the
TEMP_DIR/rhpam-7.0.0-kie-server-ee7/kie-server.wardirectory. -
Select the contents of the
TEMP_DIR/rhpam-7.0.0-kie-server-ee7/kie-server.wardirectory and create thekie-server.zipfile. -
Rename
kie-server.ziptokie-server.war. This is the file that you will use to deploy Process Server on the cluster nodes. -
If desired, copy the new
kie-server.warfile to a location that is more convenient to deploy from.
-
Navigate to the
-
If you want to use a security manager with Process Server, copy the contents of the
TEMP_DIR/rhpam-7.0.0-kie-server-ee7/SecurityPolicydirectory to theEAP_HOME/bindirectory on each node of the cluster.
By using domain mode with a cluster, you can centrally manage and publish configurations for your servers. Domain mode provides a central location to store and publish configurations. Complete the steps in this section to configure a Red Hat JBoss EAP cluster in domain mode to use with Process Server.
Procedure
- Install the JDBC driver on all Red Hat JBoss EAP instances that are part of this cluster. For more information, see the "JDBC Drivers" section of the Red Hat JBoss EAP 7.1 Configuration Guide.
-
On the the master node of the cluster (where you will run the domain controller), open the
EAP_HOME/domain/configuration/domain.xmlfile in a text editor. Make the following changes for each server group in the
server-groupselement:-
Specify the
server-group nameandjvmname. To enable high availability, change the
profiletofull-haand thesocket-binding-grouptofull-ha-sockets.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Specify the
Edit the
data-storesproperty and thetimer-service thread-pool-nameabove it:-
The
datasource-jndi-nameis the JNDI name of the database specified at the beginning of this procedure. -
You can enter any name for the value of the
partitionproperty. However, a node will only see timers from other nodes that have the same partition name. Grouping nodes into partitions by assigning partition names enables you to break a large cluster up into several smaller clusters. Doing this should improve performance. For example, instead of having a cluster of 100 nodes, where all 100 nodes are trying to execute and refresh the same timers, you can create 20 clusters of 5 nodes by giving every group of 5 a different partition name. -
Replace the
default-data-storeattribute value withejb_timer_ds. Set the value of
refresh-intervalin milliseconds to specify how often the EJB timer connects to the database to synchronize and load tasks to be processed.<timer-service thread-pool-name="default" default-data-store="ejb_timer_ds"> <data-stores> <database-data-store name="ejb_timer_ds" datasource-jndi-name="java:jboss/datasources/ejb_timer" database="postgresql" partition="ejb_timer_part" refresh-interval="30000"/> </data-stores> </timer-service><timer-service thread-pool-name="default" default-data-store="ejb_timer_ds"> <data-stores> <database-data-store name="ejb_timer_ds" datasource-jndi-name="java:jboss/datasources/ejb_timer" database="postgresql" partition="ejb_timer_part" refresh-interval="30000"/> </data-stores> </timer-service>Copy to Clipboard Copied! Toggle word wrap Toggle overflow The following table lists the supported databases and the corresponsing
databaseattribute value:Expand Database Attribute value Hyper SQL (for demonstration purposes only, not supported)
hsqlPostgreSQL
postgresqlOracle
oracleIBM DB2
db2Microsoft SQL Server
mssqlMySQL and MariaDB
mysql
-
The
Add the Process Server and EJB timer data sources to the
full-haprofile. In these examples,<DATABASE>is the name of the database,<SERVER_NAME>is the host name of the JNDI database, and<USER_NAME>and<USER_PWD>are the credentials for that database.Add the data source to allow Process Server to connect to the database, for example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Add the data source to enable the EJB timer, for example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow WarningYou must use two different databases for Process Server runtime data and EJB timer data.
In the
<subsystem xmlns="urn:jboss:domain:messaging-activemq:2.0">element, make the following changes:-
Replace
<cluster password="${jboss.messaging.cluster.password:CHANGE ME!!}"/>with<cluster user="<CLUSTER_USER>" password="<CLUSTER_PWD>"/>where<CLUSTER_USER>is the user used by Red Hat JBoss EAP to form a messaging cluster and<CLUSTER_PWD>is the password for that user. In the
security-settingelement add thekie-serverrole:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Replace
Add the following properties to the
<system-properties>element and replace the following placeholders:-
<JNDI_NAME>is the JNDI name of your data source. For Red Hat Process Automation Manager, this isjava:/jboss/datasources/rhpam. <DIALECT>is the hibernate dialect for your database.The following dialects are supported:
-
DB2:
org.hibernate.dialect.DB2Dialect -
MSSQL:
org.hibernate.dialect.SQLServer2012Dialect -
MySQL:
org.hibernate.dialect.MySQL5InnoDBDialect -
MariaDB:
org.hibernate.dialect.MySQL5InnoDBDialect -
Oracle:
org.hibernate.dialect.Oracle10gDialect -
PostgreSQL:
org.hibernate.dialect.PostgreSQL82Dialect PostgreSQL plus:
org.hibernate.dialect.PostgresPlusDialect<system-properties> <property name="org.kie.server.persistence.ds" value="<JNDI_NAME>"/> <property name="org.kie.server.persistence.dialect" value="<DIALECT>"/> <property name="org.jbpm.ejb.timer.tx" value="true"/> </system-properties>
<system-properties> <property name="org.kie.server.persistence.ds" value="<JNDI_NAME>"/> <property name="org.kie.server.persistence.dialect" value="<DIALECT>"/> <property name="org.jbpm.ejb.timer.tx" value="true"/> </system-properties>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
DB2:
-
-
Save the
domain.xmlfile.
After you have installed Red Hat JBoss EAP and configured the domain.xml file for a Process Server clustered environment, you must configure the host.xml and host-slave.xml files.
Prerequisite
Red Hat JBoss EAP 7.1 is installed on each node of the cluster.
Procedure
Complete the following steps on the master node of the cluster:
-
Open the
EAP_HOME/domain/configuration/host.xmlfile in a text editor. -
In the
main-server-group<servers>element, add the servers that will be part of the cluster.
-
Open the
Complete the following steps in the
host.xmlfile on the master node and in thehost-slave.xmlfile on each slave node:-
Open the
EAP_HOME/domain/configuration/host-slave.xmlfile in a text editor. -
In the
main-server-group<servers>element, add the servers that will be part of the cluster.
-
Open the
After you have configured a Red Hat JBoss EAP cluster and repackaged Process Server, you must start the cluster and distribute the repackaged kie-server.war file.
Prerequisites
-
A Red Hat JBoss EAP 7.1 cluster is available and the
domain.xml,host.xml, andhost-slave.xmlfiles have been configured. -
The repackaged
kie-server.warfile is available.
Procedure
-
Add Red Hat JBoss EAP management users to the master node (where you configured the
domain.xmlfile) as described in the Red Hat JBoss EAP 7.1 Configuration Guide. On each node of the cluster, add Process Server users as described in Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
To start the master node, enter one of the following commands:
On Linux or UNIX-based systems, enter:
<EAP_HOME>/bin/domain.sh
<EAP_HOME>/bin/domain.shCopy to Clipboard Copied! Toggle word wrap Toggle overflow On Windows, enter:
<EAP_HOME>/bin/domain.bat
<EAP_HOME>/bin/domain.batCopy to Clipboard Copied! Toggle word wrap Toggle overflow
To start the slave nodes, on each of the slave nodes enter one of the following commands, where
<MASTER_NODE_IP>is the IP address of the master node (where the domain controller is configured):On Linux or UNIX-based systems, enter:
<EAP_HOME>/bin/domain.sh --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>
<EAP_HOME>/bin/domain.sh --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>Copy to Clipboard Copied! Toggle word wrap Toggle overflow On Windows, enter:
<EAP_HOME>/bin/domain.bat --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>
<EAP_HOME>/bin/domain.bat --host-config=host-slave.xml -Djboss.domain.master.address=<MASTER_NODE_IP>Copy to Clipboard Copied! Toggle word wrap Toggle overflow For more information, see the following sections of the Red Hat JBoss EAP 7.1 Configuration Guide:
- "Starting JBoss EAP"
- "Managed Domain Configuration Files".
-
On each node of the cluster, review the
EAP_HOME/domain/servers/SERVER_NAME/log/server.logfile to verify that the nodes are available. To deploy the
kie-server.warfile that you created previously into the server group, complete the following steps on the master node:-
Log in to the Red Hat JBoss EAP
Administrationconsole of your domain as amanagementuser. - Click Deployments → Server Groups→ main-server-group and click Add.
- In the dialog box, click Upload a new deployment and click Next.
-
In the Upload Deployments dialog box, click Browse, select the
kie-server.warfile, and click Next. Click Enable and click Next.
NoteMake sure to check deployment unit readiness with every cluster member.
When a deployment unit is created on a cluster node, it takes some time before it is distributed among all cluster members. You can check the deployment status using the server Administration console or REST API. However, if the query is sent to the node where the deployment was originally issued, the query will return a value of
deployed. If the query is sent to a node where the deployment has not yet been distributed, the query returnsDeploymentNotFoundException.
-
Log in to the Red Hat JBoss EAP
For more information about installing Business Central, see Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
The Process Automation Manager controller is integrated with Business Central. However, if you do not install Business Central, you can install the headless Process Automation Manager controller and use the REST API or the Process Server Java Client API to interact with it.
Prerequisites
-
A backed-up Red Hat JBoss EAP installation version 7.1 or later is available. The base directory of the Red Hat JBoss EAP installation is referred to as
EAP_HOME. - Sufficient user permissions to complete the installation are granted.
- An NFS server with a mounted partition is available.
Procedure
Navigate to the Software Downloads page in the Red Hat Customer Portal (login required), and select the product and version from the drop-down options:
- Product: Process Automation Manager
- Version: 7.0
-
Download Red Hat Process Automation Manager 7.0.0 Add Ons (the
rhpam-7.0.0-add-ons.zipfile). -
Unzip the
rhpam-7.0.0-add-ons.zipfile. Therhpam-7.0-controller-ee7.zipfile is in the unzipped directory. -
Extract the
rhpam-7.0-controller-ee7.zipfile to a temporary directory. In the following examples this directory is calledTEMP_DIR. Repackage the
controller.wardirectory:-
Navigate to the
TEMP_DIR/rhpam-7.0.0-add-ons/rhpam-7.0-controller-ee7/controller.wardirectory. -
Select the contents of the
TEMP_DIR/rhpam-7.0.0-add-ons/rhpam-7.0-controller-ee7/controller.wardirectory and create thecontroller.zipfile. -
Rename
controller.ziptocontroller.war. This is the file that you will use to deploy the controller on the cluster nodes. -
If desired, copy the new
controller.warfile to a location that is more convenient to deploy from.
-
Navigate to the
-
If you want to use a security manager with the controller, copy the contents of the
TEMP_DIR/rhpam-7.0.0-add-ons/rhpam-7.0-controller-ee7/SecurityPolicydirectory to theEAP_HOME/bindirectory on each node of the cluster. -
Add Red Hat JBoss EAP management users to the master node (where you configured the
domain.xmlfile) as described in the Red Hat JBoss EAP 7.1 Configuration Guide. - On each node of the cluster, add users for the headless Process Automation Manager controller as described in the "Installing the headless Process Automation Manager controller" section of the Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
Complete the following steps in the
host.xmlfile on the master node and in thehost-slave.xmlfile on each slave node:-
Open the
EAP_HOME/domain/configuration/host.xmlorEAP_HOME/domain/configuration/host-slave.xmlfile in a text editor. -
In the
main-server-group<servers>element, add the servers that will be part of the cluster. Add the following properties to the
<system-properties>element and replace<NFS_STORAGE>with the absolute path to the NFS storage where the template configuration is stored.<system-properties> <property name="org.kie.server.controller.templatefile.watcher.enabled" value="true"/> <property name="org.kie.server.controller.templatefile" value="<NFS_STORAGE>"/> </system-properties>
<system-properties> <property name="org.kie.server.controller.templatefile.watcher.enabled" value="true"/> <property name="org.kie.server.controller.templatefile" value="<NFS_STORAGE>"/> </system-properties>Copy to Clipboard Copied! Toggle word wrap Toggle overflow If the value of the
org.kie.server.controller.templatefile.watcher.enabledproperty is set totrue, a separate thread is started to watch for modifications of the template file. The default interval for these checks is 30000 milliseconds and can be further controlled by theorg.kie.server.controller.templatefile.watcher.intervalsystem property. If the value of this property is set tofalse, changes to the template file are detected only when the server restarts.
-
Open the
To deploy the
controller.warfile that you created previously into the server group, complete the following steps on the master node:-
Log in to the Red Hat JBoss EAP
Administrationconsole of your domain as amanagementuser. - Click Deployments → Server Groups→ main-server-group and click Add.
- In the dialog box, click Upload a new deployment and click Next.
-
In the Upload Deployments dialog box, click Browse, select the
controller.warfile, and click Next. Click Enable and click Next.
NoteMake sure to check deployment unit readiness with every cluster member.
When a deployment unit is created on a cluster node, it takes some time before it is distributed among all cluster members. You can check the deployment status using the server Administration console or REST API. However, if the query is sent to the node where the deployment was originally issued, the query will return a value of
deployed. If the query is sent to a node where the deployment has not yet been distributed, the query returnsDeploymentNotFoundException.
-
Log in to the Red Hat JBoss EAP
For more information about installing Business Central, see Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
4.6. Clustering Smart Router for a runtime environment 复制链接链接已复制到粘贴板!
Smart Router enables you to aggregate multiple independent Process Server instances as though they are a single server. It performs the role of an intelligent load balancer because it can both route requests to individual Process Servers and aggregate data from different Process Servers. Through aliases, Smart Router is a proxy to Process Servers. Smart Router performs the following tasks:
- Collects information from various server instances in a single client request
- Finds the right server for a specific request
- Aggregates responses from different servers
- Provides efficient load-balancing
- Manages changing environments, for example adding and removing server instances
- Manages registration with the Process Server controller
This section describes how to install Smart Router and configure it for a Red Hat Process Automation Manager runtime environment.
Load balancing requests for Smart router cluster must be managed externally, using standard load balancing tools.
Prerequisite
Process Server is installed on each node of a Red Hat JBoss EAP 7.1 cluster.
Procedure
Navigate to the Software Downloads page in the Red Hat Customer Portal (login required), and select the product and version from the drop-down options:
- Product: Process Automation Manager
- Version: 7.0
- Download Red Hat Process Automation Manager 7.0.0 Add-Ons.
-
Extract the downloaded
rhpam-7.0.0-add-ons.zipfile to a temporary directory. Therhpam-7.0-smart-router.jarfile is in the extractedrhpam-7.0.0-add-onsdirectory. -
Copy the
rhpam-7.0-smart-router.jarfile to location where you will run the file. From the temporary directory, enter the following command to start SmartRouter:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow The properties in the preceding command have the following default values:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NoteThe router is capable of providing an aggregate sort, however the data returned when used through the management console is in raw format. Therefore, sorting is in whatever way individual servers return.
Paging is supported in its standard format.
To use Smart Router from the client side, use the Smart Router URL instead of the Process Server URL, for example:
KieServicesConfiguration config = KieServicesFactory.newRestConfiguration("http://smartrouter.example.com:9000", "USERNAME", "PASSWORD");KieServicesConfiguration config = KieServicesFactory.newRestConfiguration("http://smartrouter.example.com:9000", "USERNAME", "PASSWORD");Copy to Clipboard Copied! Toggle word wrap Toggle overflow In this example,
smartrouter.example.comis the Smart Router URL, andUSERNAMEandPASSWORDare the log in credentials for the Smart Router configuration.
Appendix A. Versioning information 复制链接链接已复制到粘贴板!
Documentation last updated on: Monday, October 1, 2018.