Chapter 9. Installing and running the headless Process Automation Manager controller
You can configure Process Server to run in managed or unmanaged mode. If Process Server is unmanaged, you must manually create and maintain KIE containers (deployment units). If Process Server is managed, the Process Automation Manager controller manages the Process Server configuration and you interact with the Process Automation Manager controller to create and maintain KIE containers.
Business Central has an embedded Process Automation Manager controller. If you install Business Central, use the Execution Server page to create and maintain KIE containers. If you want to automate Process Server management without Business Central, you can use the headless Process Automation Manager controller.
9.1. Installing the headless Process Automation Manager controller
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.2 or higher 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.
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.3
-
Download Red Hat Process Automation Manager 7.3.0 Add Ons (the
rhpam-7.3.0-add-ons.zip
file). -
Unzip the
rhpam-7.3.0-add-ons.zip
file. Therhpam-7.3-controller-ee7.zip
file is in the unzipped directory. -
Extract the
rhpam-7.3-controller-ee7
archive to a temporary directory. In the following examples this directory is calledTEMP_DIR
. Copy the
TEMP_DIR/rhpam-7.3-controller-ee7/controller.war
directory toEAP_HOME/standalone/deployments/
.WarningEnsure that the names of the headless Process Automation Manager controller deployments you are copying do not conflict with your existing deployments in the Red Hat JBoss EAP instance.
-
Copy the contents of the
TEMP_DIR/rhpam-7.3-controller-ee7/SecurityPolicy/
directory toEAP_HOME/bin
. When asked to overwrite files, select Yes. -
In the
EAP_HOME/standalone/deployments/
directory, create an empty file namedcontroller.war.dodeploy
. This file ensures that the headless Process Automation Manager controller is automatically deployed when the server starts.
9.1.1. Creating a headless Process Automation Manager controller user
Before you can use the headless Process Automation Manager controller, you must create a user that has the kie-server
role.
Prerequisites
-
The headless Process Automation Manager controller is installed in the base directory of the Red Hat JBoss EAP installation (
EAP_HOME
).
Procedure
-
In a terminal application, navigate to the
EAP_HOME/bin
directory. Enter the following command and replace
<USER_NAME>
and<PASSWORD>
with the user name and password of your choice.$ ./add-user.sh -a --user <USER_NAME> --password <PASSWORD> --role kie-server
NoteMake sure that the specified user name is not the same as an existing user, role, or group. For example, do not create a user with the user name
admin
.The password must have at least eight characters and must contain at least one number and one non-alphanumeric character, but not & (ampersand).
- Make a note of your user name and password.
9.1.2. Configuring Process Server and the headless Process Automation Manager controller
If Process Server will be managed by the headless Process Automation Manager controller, you must edit the standalone-full.xml
file in Process Server installation and the standalone.xml
file in the headless Process Automation Manager controller installation, as described in this section.
Prerequisites
-
Process Server is installed in the base directory of the Red Hat JBoss EAP installation (
EAP_HOME
) as described in Chapter 5, Installing Red Hat Process Automation Manager from ZIP files section. The headless Process Automation Manager controller is installed in an
EAP_HOME
.NoteYou should install Process Server and the headless Process Automation Manager controller on different servers in production environments. However, if you install Process Server and the headless Process Automation Manager controller on the same server, for example in a development environment, make these changes in the shared
standalone-full.xml
file.-
On Process Server nodes, a user with the
kie-server
role exists. On the server nodes, a user with the
kie-server
role exists.For more information, see Section 5.4, “Creating users”.
Procedure
In the
EAP_HOME/standalone/configuration/standalone-full.xml
file, add the following properties to the<system-properties>
section and replace<USERNAME>
and<USER_PWD>
with the credentials of a user with thekie-server
role:<property name="org.kie.server.user" value="<USERNAME>"/> <property name="org.kie.server.pwd" value="<USER_PWD>"/>
In the Process Server
EAP_HOME/standalone/configuration/standalone-full.xml
file, add the following properties to the<system-properties>
section:<property name="org.kie.server.controller.user" value="<CONTROLLER_USER>"/> <property name="org.kie.server.controller.pwd" value="<CONTROLLER_PWD>"/> <property name="org.kie.server.id" value="<KIE_SERVER_ID>"/> <property name="org.kie.server.location" value="http://<HOST>:<PORT>/kie-server/services/rest/server"/> <property name="org.kie.server.controller" value="<CONTROLLER_URL>"/>
In this file, replace the following values:
-
Replace
<CONTROLLER_USER>
and<CONTROLLER_PWD>
with the credentials of a user with thekie-server
role. -
Replace
<KIE_SERVER_ID>
with the ID or name of the Process Server installation, for example,rhpam-7.3.0-process_server-1
. -
Replace
<HOST>
with the ID or name of the Process Server host, for example,localhost
or192.7.8.9
. Replace
<PORT>
with the port of the Process Server host, for example,8080
.NoteThe
org.kie.server.location
property specifies the location of Process Server.-
Replace
<CONTROLLER_URL>
with the URL of the headless Process Automation Manager controller.
-
Replace
- Process Server connects to this URL during startup.
9.2. Running the headless Process Automation Manager controller
After you have installed the headless Process Automation Manager controller on Red Hat JBoss EAP, use this procedure to run the headless Process Automation Manager controller.
Prerequisites
-
The headless Process Automation Manager controller is installed and configured in the base directory of the Red Hat JBoss EAP installation (
EAP_HOME
).
Procedure
-
In a terminal application, navigate to
EAP_HOME/bin
. If you installed the headless Process Automation Manager controller on the same Red Hat JBoss EAP instance as the Red Hat JBoss EAP instance where you installed the Process Server, enter one of the following commands:
On Linux or UNIX-based systems:
$ ./standalone.sh -c standalone-full.xml
On Windows:
standalone.bat -c standalone-full.xml
If you installed the headless Process Automation Manager controller on a separate Red Hat JBoss EAP instance from the Red Hat JBoss EAP instance where you installed the Process Server, you can start the headless Process Automation Manager controller with the
standalone.sh
script:NoteIn this case, ensure that you made all required configuration changes to the
standalone.xml
file.On Linux or UNIX-based systems:
$ ./standalone.sh
On Windows:
standalone.bat
To verify that the headless Process Automation Manager controller is working on Red Hat JBoss EAP, enter the following command where
<CONTROLLER>
and<CONTROLLER_PWD>
is the user name and password combination that you created in Section 9.1.1, “Creating a headless Process Automation Manager controller user”. The output of this command provides information about the Process Server instance.curl -X GET "http://<HOST>:<PORT>/controller/rest/controller/management/servers" -H "accept: application/xml" -u '<CONTROLLER>:<CONTROLLER_PWD>'
Alternatively, you can use the Process Server Java API Client to access the headless Process Automation Manager controller.