Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Chapter 2. Preparing to deploy Red Hat Process Automation Manager in your OpenShift environment
Before deploying Red Hat Process Automation Manager in your OpenShift environment, you need to complete several preparatory tasks. You do not need to repeat these tasks if you want to deploy additional images, for example, for new versions of processes or for other processes.
2.1. Ensuring the availability of image streams and the image registry Link kopierenLink in die Zwischenablage kopiert!
To deploy Red Hat Process Automation Manager components on Red Hat OpenShift Container Platform, you must ensure that OpenShift can download the correct images from the Red Hat registry. To download the images, OpenShift requires the information about their location (known as image streams). OpenShift also must be configured to authenticate with the Red Hat registry using your service account user name and password.
Some versions of the OpenShift environment include the required image streams. You must check if they are available. If image streams are available in OpenShift by default, you can use them if the OpenShift infrastructure is configured for registry authentication server. The administrator must complete the registry authentication configuration when installing the OpenShift environment.
Otherwise, you can configure registry authentication in your own project and install the image streams in the same project.
Procedure
- Determine whether Red Hat OpenShift Container Platform is configured with the user name and password for Red Hat registry access. For details about the required configuration, see Configuring a Registry Location. If you are using an OpenShift Online subscription, it is configured for Red Hat registry access.
If Red Hat OpenShift Container Platform is configured with the user name and password for Red Hat registry access, run the following commands:
oc get imagestreamtag -n openshift | grep rhpam73-businesscentral oc get imagestreamtag -n openshift | grep rhpam73-kieserver
$ oc get imagestreamtag -n openshift | grep rhpam73-businesscentral $ oc get imagestreamtag -n openshift | grep rhpam73-kieserver
Copy to Clipboard Copied! Toggle word wrap Toggle overflow If the outputs of both commands are not empty, the required image streams are available in the
openshift
namespace and no further action is required.If the output of one or both of the commands is empty or if OpenShift is not configured with the user name and password for Red Hat registry access, complete the following steps:
-
Ensure you are logged in to OpenShift with the
oc
command and that your project is active. - Complete the steps documented in Registry Service Accounts for Shared Environments. You must log in to Red Hat Customer Portal to access the document and to complete the steps to create a registry service account.
- Select the OpenShift Secret tab and click the link under Download secret to download the YAML secret file.
-
View the downloaded file and note the name that is listed in the
name:
entry. Run the following commands:
oc create -f <file_name>.yaml oc secrets link default <secret_name> --for=pull oc secrets link builder <secret_name> --for=pull
oc create -f <file_name>.yaml oc secrets link default <secret_name> --for=pull oc secrets link builder <secret_name> --for=pull
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Where
<file_name>
is the name of the downloaded file and <secret_name> is the name that is listed in thename:
entry of the file.-
Download the
rhpam-7.3.0-openshift-templates.zip
product deliverable file from the Software Downloads page and extract therhpam73-image-streams.yaml
file. Complete one of the following actions:
Run the following command:
oc create -f rhpam73-image-streams.yaml
$ oc create -f rhpam73-image-streams.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Using the OpenShift Web UI, select Add to Project
Import YAML / JSON and then choose the file or paste its contents. NoteIf you complete these steps, you install the image streams into the namespace of your project. If you install the image streams using these steps, you must set the
IMAGE_STREAM_NAMESPACE
parameter to the name of this project when deploying templates.
-
Ensure you are logged in to OpenShift with the
2.2. Creating the secrets for Process Server Link kopierenLink in die Zwischenablage kopiert!
OpenShift uses objects called Secrets
to hold sensitive information, such as passwords or keystores. For more information about OpenShift secrets, see the Secrets chapter in the OpenShift documentation.
You must create an SSL certificate for Process Server and provide it to your OpenShift environment as a secret.
Procedure
Generate an SSL keystore with a private and public key for SSL encryption for Process Server. In a production environment, generate a valid signed certificate that matches the expected URL of the Process Server. Save the keystore in a file named
keystore.jks
. Record the name of the certificate and the password of the keystore file.For more information on how to create a keystore with self-signed or purchased SSL certificates, see Generate a SSL Encryption Key and Certificate.
Use the
oc
command to generate a secret namedkieserver-app-secret
from the new keystore file:oc create secret generic kieserver-app-secret --from-file=keystore.jks
$ oc create secret generic kieserver-app-secret --from-file=keystore.jks
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3. Creating the secrets for Business Central Link kopierenLink in die Zwischenablage kopiert!
If you are planning to deploy Business Central or Business Central Monitoring in your OpenShift environment, you must create an SSL certificate for Business Central and provide it to your OpenShift environment as a secret. Do not use the same certificate and keystore for Business Central and for Process Server.
Procedure
Generate an SSL keystore with a private and public key for SSL encryption for Business Central. In a production environment, generate a valid signed certificate that matches the expected URL of the Business Central. Save the keystore in a file named
keystore.jks
. Record the name of the certificate and the password of the keystore file.For more information on how to create a keystore with self-signed or purchased SSL certificates, see Generate a SSL Encryption Key and Certificate.
Use the
oc
command to generate a secret namedbusinesscentral-app-secret
from the new keystore file:oc create secret generic businesscentral-app-secret --from-file=keystore.jks
$ oc create secret generic businesscentral-app-secret --from-file=keystore.jks
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4. Changing GlusterFS configuration Link kopierenLink in die Zwischenablage kopiert!
Check whether your OpenShift environment uses GlusterFS to provide permanent storage volumes. If it uses GlusterFS, to ensure optimal performance, tune your GlusterFS storage by changing the storage class configuration.
Procedure
To check whether your environment uses GlusterFS, run the following command:
oc get storageclass
oc get storageclass
Copy to Clipboard Copied! Toggle word wrap Toggle overflow In the results, check whether the
(default)
marker is on the storage class that listsglusterfs
. For example, in the following output the default storage class isgluster-container
, which does listglusterfs
:NAME PROVISIONER AGE gluster-block gluster.org/glusterblock 8d gluster-container (default) kubernetes.io/glusterfs 8d
NAME PROVISIONER AGE gluster-block gluster.org/glusterblock 8d gluster-container (default) kubernetes.io/glusterfs 8d
Copy to Clipboard Copied! Toggle word wrap Toggle overflow If the result has a default storage class that does not list
glusterfs
or if the result is empty, you do not need to make any changes. In this case, skip the rest of this procedure.To save the configuration of the default storage class into a YAML file, run the following command:
oc get storageclass <class-name> -o yaml >storage_config.yaml
oc get storageclass <class-name> -o yaml >storage_config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Replace
<class-name>
with the name of the default storage class. For example:oc get storageclass gluster-container -o yaml >storage_config.yaml
oc get storageclass gluster-container -o yaml >storage_config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Edit the
storage_config.yaml
file:Remove the lines with the following keys:
-
creationTimestamp
-
resourceVersion
-
selfLink
-
uid
-
On the line with the
volumeoptions
key, add the following two options:features.cache-invalidation on, performance.nl-cache on
. For example:volumeoptions: client.ssl off, server.ssl off, features.cache-invalidation on, performance.nl-cache on
volumeoptions: client.ssl off, server.ssl off, features.cache-invalidation on, performance.nl-cache on
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
To remove the existing default storage class, run the following command:
oc delete storageclass <class-name>
oc delete storageclass <class-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Replace
<class-name>
with the name of the default storage class. For example:oc delete storageclass gluster-container
oc delete storageclass gluster-container
Copy to Clipboard Copied! Toggle word wrap Toggle overflow To re-create the storage class using the new configuration, run the following command:
oc create -f storage_config.yaml
oc create -f storage_config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5. Building a custom Process Server image for an external database Link kopierenLink in die Zwischenablage kopiert!
If you want to use an external database server for a Process Server and this server is neither MySQL nor PostgreSQL, you must build a custom Process Server image with drivers for this server before deploying your environment.
You can use this build procedure to provide drivers for the following database servers:
- Microsoft SQL Server
- MariaDB
- IBM DB2
- Oracle Database
- Sybase
For the tested versions of the database servers, see Red Hat Process Automation Manager 7 Supported Configurations.
The build procedure creates a custom image that extends the existing Process Server image. It pushes this custom image into a new ImageStream
in the openshift
namespace with the same version tag as the original image.
Prerequisites
-
You have logged on to your project in the OpenShift environment using the
oc
command as a user with thecluster-admin
role. - For IBM DB2, Oracle Database, or Sybase, you have downloaded the JDBC driver from the database server vendor.
Procedure
For IBM DB2, Oracle Database, or Sybase, provide the JDBC driver JAR in a local directory or on an HTTP server. Within the local directory or HTTP server, the following paths are expected:
-
For IBM DB2,
<local_path_or_url>/com/ibm/db2/jcc/db2jcc4/10.5/db2jcc4-10.5.jar
-
For Oracle Database,
<local_path_or_url>/com/oracle/ojdbc7/12.1.0.1/ojdbc7-12.1.0.1.jar
For Sybase,
<local_path_or_url>/com/sysbase/jconn4/16.0_PL05/jconn4-16.0_PL05.jar
Where
<local_path_or_url>
is the path to the local directory or the URL for the HTTP server where the driver is provided.
-
For IBM DB2,
-
To install the source code for the custom build, download the
rhpam-7.3.0-openshift-templates.zip
product deliverable file from the Software Downloads page. Unzip the file and, using the command line, change to thetemplates/contrib/jdbc
directory of the unzipped file. Change to the following subdirectory:
-
For Microsoft SQL Server,
mssql-driver-image
-
For MariaDB,
mariadb-driver-image
-
For IBM DB2,
db2-driver-image
-
For Oracle Database,
oracle-driver-image
-
For Sybase,
sybase-driver-image
-
For Microsoft SQL Server,
Run the following command:
- For Microsoft SQL Server or MariaDB:
../build.sh
../build.sh
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - For IBM DB2, Oracle Database, or Sybase:
../build.sh --artifact-repo=<local_path_or_url>
../build.sh --artifact-repo=<local_path_or_url>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Where
<local_path_or_url>
is the path to the local directory or the URL for the HTTP server where the driver is provided. For example:../build.sh --artifact-repo=/home/builder/drivers ../build.sh --artifact-repo=http://nexus.example.com/nexus/content/groups/public
../build.sh --artifact-repo=/home/builder/drivers ../build.sh --artifact-repo=http://nexus.example.com/nexus/content/groups/public
Copy to Clipboard Copied! Toggle word wrap Toggle overflow If you want to configure your OpenShift docker registry address in the process, add also the
--registry=<registry_name.domain_name:port>
parameter to your build command.Examples:
../build.sh --registry=docker-registry.custom-domain:80 ../build.sh --artifact-repo=/home/builder/drivers --registry=docker-registry.custom-domain:80
../build.sh --registry=docker-registry.custom-domain:80 ../build.sh --artifact-repo=/home/builder/drivers --registry=docker-registry.custom-domain:80
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.6. Extracting the source code from Business Central for use in an S2I build Link kopierenLink in die Zwischenablage kopiert!
If you are using Business Central for authoring services, you can extract the source code for your service and place it into a separate Git repository (such as GitHub or an on-premise installation of GitLab) for use in the S2I build.
Procedure
Use the following command to extract the source code:
git clone ssh://adminUser@business-central-host:8001/MySpace/MyProject
git clone ssh://adminUser@business-central-host:8001/MySpace/MyProject
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Replace:
-
adminUser
with the administrative user for Business Central -
business-central-host
with the host on which Business Central is running -
MySpace
with the name of the Business Central space in which the project is located -
MyProject
with the name of the project
-
- Upload the source code to another Git repository for the S2I build.
2.7. Preparing a Maven mirror repository for offline use Link kopierenLink in die Zwischenablage kopiert!
If your Red Hat OpenShift Container Platform environment does not have outgoing access to the public Internet, you must prepare a Maven repository with a mirror of all the necessary artifacts and make this repository available to your environment.
Skip this procedure if your Red Hat OpenShift Container Platform environment is connected to the Internet.
Procedure
- Prepare a Maven release repository to which you can write. The repository must allow read access without authentication. Your OpenShift environment must have access to this repository. You can deploy a Nexus repository manager in the OpenShift environment. For instructions about setting up Nexus on OpenShift, see Setting up Nexus.
Complete the following actions on a computer that has an outgoing connection to the public Internet:
-
Clear the local Maven cache directory (
~/.m2/repository
). -
Build the source of your services using the
mvn clean install
command. -
Upload all artifacts from the local Maven cache directory (
~/.m2/repository
) to the Maven repository that you prepared. You can use the Maven Repository Provisioner utility to upload the artifacts.
-
Clear the local Maven cache directory (