Chapter 2. Preparing to deploy Red Hat Decision Manager in your OpenShift environment
Before deploying Red Hat Decision 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 decision services or for other decision services.
Prerequisites
- Ensure that at least four gigabytes of memory are available in the OpenShift environment.
- Create the OpenShift project for the deployment.
-
Log in to the project using the OpenShift web console and using the
oc
command.
2.1. Ensuring the availability of image streams
You must ensure that the image streams that are required for the deployment are available in your OpenShift environment. Some versions of the OpenShift environment include the necessary image streams. You must check if they are available. If they are not available, you must install the rhdm70-image-streams.yaml
file.
Procedure
Run the following commands:
oc get imagestreamtag -n openshift | grep rhdm70-decisioncentral-openshift oc get imagestreamtag -n openshift | grep rhdm70-kieserver-openshift
$ oc get imagestreamtag -n openshift | grep rhdm70-decisioncentral-openshift $ oc get imagestreamtag -n openshift | grep rhdm70-kieserver-openshift
Copy to Clipboard Copied! If the outputs of both commands are not empty, the required image streams are available and no further action is required.
If the output of one or both of the commands is empty, download the
rhdm-7.0.1-openshift-templates.zip
product deliverable file from the Software Downloads page for Red Hat Decision Manager 7.0. Extract therhdm70-image-streams.yaml
file from it. Complete one of the following actions:Run the following command:
oc create -f rhdm70-image-streams.yaml
$ oc create -f rhdm70-image-streams.yaml
Copy to Clipboard Copied! -
Using the OpenShift Web UI, select Add to Project
Import YAML / JSON, then choose the file or paste its contents.
2.2. Creating the secrets for Decision Server
OpenShift uses objects called Secrets
to hold sensitive information, such as passwords or keystores. See the Secrets chapter in the OpenShift documentation for more information.
You must create an SSL certificate for Decision Server and provide it to your OpenShift environment as a secret.
You do not need to create the secrets object if you are planning to deploy a Decision Server using source to image (S2I) without support for HTTPS.
Procedure
Generate an SSL keystore with a private and public key for SSL encryption for Decision Server. In a production environment, generate a valid signed certificate that matches the expected URL of the Decision Server. Save the keystore in a file named
keystore.jks
. Record the name of the certificate and the password of the keystore file.See Generate a SSL Encryption Key and Certificate for more information on how to create a keystore with self-signed or purchased SSL certificates.
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! Create a service account named
kieserver-service-account
:oc create serviceaccount kieserver-service-account
$ oc create serviceaccount kieserver-service-account
Copy to Clipboard Copied! Add the secret to the service account:
oc secret add sa/kieserver-service-account secret/kieserver-app-secret
$ oc secret add sa/kieserver-service-account secret/kieserver-app-secret
Copy to Clipboard Copied!
2.3. Creating the secrets for Decision Central
If you are planning to deploy Decision Central in your OpenShift environment, you must create an SSL certificate for Decision Central and provide it to your OpenShift environment as a secret. Do not use the same certificate and keystore for Decision Central and for Decision Server.
Procedure
Generate an SSL keystore with a private and public key for SSL encryption for Decision Central. In a production environment, generate a valid signed certificate that matches the expected URL of the Decision Central. Save the keystore in a file named
keystore.jks
. Record the name of the certificate and the password of the keystore file.See Generate a SSL Encryption Key and Certificate for more information on how to create a keystore with self-signed or purchased SSL certificates.
Use the
oc
command to generate a secret nameddecisioncentral-app-secret
from the new keystore file:oc create secret generic decisioncentral-app-secret --from-file=keystore.jks
$ oc create secret generic decisioncentral-app-secret --from-file=keystore.jks
Copy to Clipboard Copied! Create a service account named
decisioncentral-service-account
:oc create serviceaccount decisioncentral-service-account
$ oc create serviceaccount decisioncentral-service-account
Copy to Clipboard Copied! Add the secret to the service account:
oc secret add sa/decisioncentral-service-account secret/decisioncentral-app-secret
$ oc secret add sa/decisioncentral-service-account secret/decisioncentral-app-secret
Copy to Clipboard Copied!