Planning a Red Hat Process Automation Manager installation
Abstract
Preface
As a system administrator, you have several options for installing Red Hat Process Automation Manager.
Chapter 1. About Red Hat Process Automation Manager
Red Hat Process Automation Manager is an open source business process management suite that combines business process management and business rules management. It enables business and IT users to create, manage, validate, and deploy business processes and rules.
Red Hat Process Automation Manager uses a centralized repository where all resources are stored. This ensures consistency, transparency, and the ability to audit across the business. Business users can modify business logic and business processes without requiring assistance from IT personnel.
Chapter 2. Red Hat Process Automation Manager components
Red Hat Process Automation Manager is made up of Business Central and Process Server.
Business Central is the graphical user interface where you create and manage business rules. You can install Business Central in a Red Hat JBoss EAP instance or on the Red Hat OpenShift Container Platform (OpenShift).
Business Central is also available as a standalone JAR file. You can use the Business Central standalone JAR file to run Business Central without needing to deploy it to an application server.
Process Server is the server where processes, rules, and other artifacts are executed. It is used to instantiate and execute processes and rules and solve planning problems. You can install Process Server in a Red Hat JBoss EAP instance, on OpenShift, in an Oracle WebLogic server instance, in an IBM WebSphere Application Server instance, or as a part of Spring Boot application.
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). A KIE container is a specific version of a project. 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.
The Process Automation Manager controller is integrated with Business Central. If you install Business Central on Red Hat JBoss EAP, use the Execution Server page to create and maintain KIE containers. 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.
- Red Hat Business Optimizer is integrated in Business Central and Process Server. It is a lightweight, embeddable planning engine that optimizes planning problems. Red Hat Business Optimizer helps Java programmers solve planning problems efficiently, and it combines optimization heuristics and metaheuristics with efficient score calculations.
Chapter 3. Available installation platforms
Every Red Hat Process Automation Manager release is certified on a variety operating systems, JVMs, web browsers, and database combinations. Red Hat provides both production and development support for supported and tested configurations in both physical and virtual environments, according to your subscription agreement. See the following pages for information about supported configurations and version numbers:
Red Hat Process Automation Manager 7.1 is available for the following application platforms:
- Red Hat JBoss EAP 7.1
- Red Hat OpenShift Container Platform
- Oracle WebLogic Server
- IBM WebSphere Application Server
3.1. Red Hat JBoss EAP 7.1
Red Hat JBoss Enterprise Application Platform (Red Hat JBoss EAP) 7.1 is a certified implementation of the Java Enterprise Edition 7 (Java EE 7) full and web profile specifications. Red Hat JBoss EAP provides preconfigured options for features such as high availability, clustering, messaging, and distributed caching. It also enables users to write, deploy, and run applications using the various APIs and services that Red Hat JBoss EAP provides.
You can install both Business Central and Process Server in a single Red Hat JBoss EAP instance. However, in production environments you should install them in separate instances.
3.2. Red Hat OpenShift Container Platform
Red Hat OpenShift Container Platform (OpenShift) brings together Docker and Kubernetes, and provides an API to manage these services. OpenShift Container Platform enables you to create and manage containers.
In this solution, components of Red Hat Process Automation Manager are deployed as separate OpenShift pods. You can scale each of the pods up and down individually, providing as few or as many containers as necessary for a particular component. You can use standard OpenShift methods to manage the pods and balance the load.
You can install both Business Central and Process Server on OpenShift.
3.3. Oracle WebLogic Server
Oracle WebLogic Server is a Java EE application server that provides a standard set of APIs for creating distributed Java applications that can access a wide variety of services, such as databases, messaging services, and connections to external enterprise systems. Users access these applications using web browser clients or Java clients.
You can install Process Server in an Oracle Weblogic Server instance and then use the headless Process Automation Manager controller and the REST API or the Process Server Java Client API to interact with Process Server. You can also use standalone Business Central to interact with Process Server.
3.4. IBM WebSphere Application Server
IBM WebSphere Application Server is a flexible and secure web application server that hosts Java-based web applications and provides Java EE-certified run time environments. IBM WebSphere 9.0 supports Java SE 8 and is fully compliant with Java EE 7 since version 8.5.5.6.
You can install Process Server in an IBM WebSphere Application Server instance and then use the headless Process Automation Manager controller to interact with Process Server. You can also use standalone Business Central to interact with Process Server.
3.5. Development platform option
Developers can develop assets in Red Hat Process Automation Manager. However, you can optionally integrate Red Hat JBoss Developer Studio with Red Hat Process Automation Manager to enable developers to write complex applications and leverage code auto-completion.
Red Hat JBoss Developer Studio is an integrated development environment (IDE) based on Eclipse. It integrates tooling and runtime components by combining Eclipse, Eclipse Tooling, and Red Hat JBoss EAP. Red Hat JBoss Developer Studio provides plug-ins with tools and interfaces for Red Hat Process Automation Manager. These plug-ins are based on the community version of these products. For this reason, the Red Hat Process Automation Manager plug-ins are called the jBPM and Drools plug-ins.
Chapter 4. Supported repositories
4.1. Git repositories
Git repositories are used internally within Business Central to store all processes, rules, and other artifacts that are created in the authoring environment. Git is a distributed version control system. It implements revisions as commit objects. When you commit your changes into a repository, a new commit object in the Git repository is created. When you create a project in Business Central it is added to the Git repository connected to Business Central.
If you have projects in other Git repositories, you can import them into Business Central spaces. You can use Git hooks to synchronize the internal Git repositories with external repositories.
4.2. Apache Maven
Apache Maven is a distributed build automation tool used in Java application development to build and manage software projects. You can use Maven to build, publish, and deploy your Red Hat Process Automation Manager projects. Maven provides the following benefits:
- The build process is easy and a uniform build system is implemented across projects.
- All of the required JAR files for a project are made available at compile time.
- A proper project structure is configured.
- Dependencies and versions are well managed.
- The is no need for additional build processing because Maven builds output into a number of predefined types, such as JAR and WAR.
Maven uses repositories to store Java libraries, plug-ins, and other build artifacts. These repositories can be local or remote. Red Hat Process Automation Manager maintains local and remote maven repositories that you can add to your project for accessing the rules, processes, events, and other project dependencies. When building projects and archetypes, Maven dynamically retrieves Java libraries and Maven plug-ins from local or remote repositories. Doing this promotes sharing and reuse of dependencies across projects.
Chapter 5. Installation environment options
With Red Hat Process Automation Manager, you can set up a development environment to develop process-driven applications, a runtime environment to run those applications to support decisions, or both.
A development environment typically consists of one Business Central installation and at least one Process Server installation. Business Central enables developers to create decision processes, rules, and other artifacts. They use Process Server to test the artifacts that they created.
A runtime environment consists of one or more Process Server instances with or without Business Central. Business Central has an embedded Process Automation Manager controller. If you install Business Central, use the Execution Server page to create and maintain containers. If you want to automate Process Server management without Business Central, you can use the headless Process Automation Manager controller.
Clustered environments
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. 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.
You can cluster both development and runtime environments. The primary benefit of clustering Red Hat Process Automation Manager development environments is high availability and enhanced collaboration. The primary benefit of clustering a runtime environment is load balancing and high availability. If activity on one node of the cluster increases, that activity can be shared among the other nodes of the cluster to improve performance.
Clustering is supported on Red Hat JBoss EAP 7.1. Clustering on OpenShift is currently in technology preview.
Chapter 6. Roles and users
To access Business Central or Process Server, you must create users and assign them appropriate roles before the servers are started. This section describes available Red Hat Process Automation Manager user roles.
The admin
, analyst
, developer
, manager
, process-admin
, user
, and rest-all
roles are reserved for Business Central. The kie-server
role is reserved for Process Server. For this reason, the available roles can differ depending on whether Business Central, Process Server, or both are installed.
-
admin
: Users with theadmin
role are the Business Central administrators. They can manage users and create, clone, and manage the repositories. They have full access to make required changes in the application. Users with theadmin
role have access to all areas within Red Hat Process Automation Manager. -
analyst
: Users with theanalyst
role have access to all high-level features. They can model and execute their projects. However, these users cannot add contributors to spaces or delete spaces in the Design → Projects view. Access to the Deploy → Execution Servers view, which is intended for administrators, is not available to users with theanalyst
role. However, the Deploy button is available to these users when they access the Library perspective. -
developer
: Users with thedeveloper
role have access to almost all features and can manage rules, models, process flows, forms, and dashboards. They can manage the asset repository, they can create, build, and deploy projects, and they can use Red Hat JBoss Developer Studio to view processes. Only certain administrative functions such as creating and cloning a new repository are hidden from users with thedeveloper
role. -
manager
: Users with themanager
role can view reports. These users are usually interested in statistics about the business processes and their performance, business indicators, and other business-related reporting. A user with this role has access only to process and task reports. -
process-admin
: Users with theprocess-admin
role are business process administrators. They have full access to business processes, business tasks, and execution errors. These users can also view business reports and have access to the Task Inbox list. -
user
: Users with theuser
role can work on the Task Inbox list, which contains business tasks that are part of currently running processes. Users with this role can view process and task reports and manage processes. -
rest-all
: Users with therest-all
role can access Business Central REST capabilities. -
kie-server
: Users with thekie-server
role can access Process Server (KIE Server) REST capabilities. This role is mandatory for users to have access to Manage and Track views in Business Central.
Chapter 7. Integrating with Red Hat Single Sign-On
Red Hat Single Sign-On (RH-SSO) is a single sign-on solution that you can use to secure your browser applications with your REST web services and Git access.
When you integrate Red Hat Process Automation Manager with RH-SSO, you create an SSO and identity management (IDM) environment for Red Hat Process Automation Manager. The session management feature of RH-SSO enables you to use a single authentication for different Red Hat Process Automation Manager environments on the internet.
RH-SSO 7.2 is supported with Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1.
Chapter 8. Additional resources
- Installing and configuring Red Hat Process Automation Manager on Red Hat JBoss EAP 7.1
- Installing and configuring Process Server on IBM WebSphere Application Server
- Installing and configuring Process Server on Oracle WebLogic Server
- Integrating Red Hat Developer Studio with Red Hat Process Automation Manager
- Integrating Red Hat Process Automation Manager with Red Hat Single Sign-On
- Deploying a Red Hat Process Automation Manager immutable server environment on Red Hat OpenShift Container Platform
- Deploying a Red Hat Process Automation Manager authoring environment on Red Hat OpenShift Container Platform
- Deploying a Red Hat Process Automation Manager managed server environment on Red Hat OpenShift Container Platform
Appendix A. Versioning information
Documentation last updated on Wednesday, March 27, 2019.