Chapter 4. OpenShift template reference information
Red Hat Process Automation Manager provides the following OpenShift templates. To access the templates, download and extract the rhpam-7.1.0-openshift-templates.zip
product deliverable file from the Software Downloads page of the Red Hat customer portal.
-
rhpam71-authoring.yaml
provides a Business Central and a Process Server connected to the Business Central. The Process Server uses an H2 database with persistent storage. You can use this environment to author processes, services, and other business assets. For details about this template, see Section 4.1, “rhpam71-authoring”. -
rhpam71-authoring-ha.yaml
provides a high-availability Business Central, a Process Server connected to the Business Central, and a MySQL instance that the Process Server uses. You can use this environment to author processes, services, and other business assets. The high-availability functionality is in technical preview. For details about this template, see Section 4.2, “rhpam71-authoring-ha”.
4.1. rhpam71-authoring
4.1.1. Parameters
Templates allow you to define parameters which take on a value. That value is then substituted wherever the parameter is referenced. References can be defined in any text field in the objects list field. Refer to the Openshift documentation for more information.
Variable name | Image Environment Variable | Description | Example value | Required |
---|---|---|---|---|
| — | The name for the application. | myapp | True |
|
| KIE administrator username | adminUser | False |
|
| KIE administrator password |
| False |
|
| KIE server controller username (Sets the org.kie.server.controller.user system property) | controllerUser | False |
|
| KIE server controller password (Sets the org.kie.server.controller.pwd system property) |
| False |
|
| KIE server controller token for bearer authentication (Sets the org.kie.server.controller.token system property) |
| False |
|
| KIE server username (Sets the org.kie.server.user system property) | executionUser | False |
|
| KIE server password (Sets the org.kie.server.pwd system property) |
| False |
|
| KIE server bypass auth user (Sets the org.kie.server.bypass.auth.user system property) | false | False |
|
| KIE server persistence datasource (Sets the org.kie.server.persistence.ds system property) | java:/jboss/datasources/rhpam | False |
KIE_SERVER_H2_USER | — | KIE server H2 database username | sa | False |
KIE_SERVER_H2_PWD | — | KIE server H2 database password | — | False |
|
| KIE server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties) | enabled | False |
|
| KIE server class filtering (Sets the org.drools.server.filter.classes system property) | true | False |
|
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| False |
|
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| False |
|
| Custom hostname for http service route, if set will also configure the KIE_SERVER_HOST. Leave blank for default hostname, e.g.: <application-name>-kieserver-<project>.<default-domain-suffix> |
| False |
|
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-kieserver-<project>.<default-domain-suffix> |
| False |
|
| Use https for the KIE_SERVER_HOST when it is not explicit configured to a custom value. | false | False |
| — | The name of the secret containing the keystore file | — | True |
|
| The name of the keystore file within the secret | keystore.jks | False |
|
| The name associated with the server certificate | jboss | False |
|
| The password for the keystore and certificate | mykeystorepass | False |
| — | The name of the secret containing the keystore file | — | True |
|
| The name of the keystore file within the secret | keystore.jks | False |
|
| The name associated with the server certificate | jboss | False |
|
| The password for the keystore and certificate | mykeystorepass | False |
| — | Size of persistent storage for database volume. | 1Gi | True |
| — | Namespace in which the ImageStreams for Red Hat Middleware images are installed. These ImageStreams are normally installed in the openshift namespace. You should only need to modify this if you’ve installed the ImageStreams in a different namespace/project. | openshift | True |
| — | The name of the image stream to use for KIE server. Default is "rhpam71-kieserver-openshift". | rhpam71-kieserver-openshift | True |
| — | A named pointer to an image in an image stream. Default is "1.1". | 1.1 | True |
|
| The id to use for the maven repository, if set. Default is generated randomly. |
| False |
|
| Fully qualified URL to a Maven repository or service. |
| False |
|
| Username to access the Maven repository, if required. |
| False |
|
| Password to access the Maven repository, if required. |
| False |
| — | Username to access the Maven service hosted by Business Central inside EAP. | mavenUser | True |
| — | Password to access the Maven service hosted by Business Central inside EAP. | — | True |
|
| The directory to use for git hooks, if required. |
| False |
| — | Size of the persistent storage for Business Central’s runtime data. | 1Gi | True |
| — | Business Central Container memory limit | 2Gi | False |
| — | KIE server Container memory limit | 1Gi | False |
|
| RH-SSO URL |
| False |
|
| RH-SSO Realm name |
| False |
|
| Business Central RH-SSO Client name |
| False |
|
| Business Central RH-SSO Client Secret |
| False |
|
| KIE Server RH-SSO Client name |
| False |
|
| KIE Server RH-SSO Client Secret |
| False |
|
| RH-SSO Realm Admin Username used to create the Client if it doesn’t exist |
| False |
|
| RH-SSO Realm Admin Password used to create the Client |
| False |
|
| RH-SSO Disable SSL Certificate Validation | false | False |
|
| RH-SSO Principal Attribute to use as username. | preferred_username | False |
|
| LDAP Endpoint to connect for authentication |
| False |
|
| Bind DN used for authentication |
| False |
|
| LDAP Credentials used for authentication |
| False |
|
| The JMX ObjectName of the JaasSecurityDomain used to decrypt the password. |
| False |
|
| LDAP Base DN of the top-level context to begin the user search. |
| False |
|
| LDAP search filter used to locate the context of the user to authenticate. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. A common example for the search filter is (uid={0}). |
| False |
|
| The search scope to use. |
| False |
|
| The timeout in milliseconds for user or role searches. |
| False |
|
| The name of the attribute in the user entry that contains the DN of the user. This may be necessary if the DN of the user itself contains special characters, backslash for example, that prevent correct user mapping. If the attribute does not exist, the entry’s DN is used. |
| False |
|
| A flag indicating if the DN is to be parsed for the username. If set to true, the DN is parsed for the username. If set to false the DN is not parsed for the username. This option is used together with usernameBeginString and usernameEndString. |
| False |
|
| Defines the String which is to be removed from the start of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| False |
|
| Defines the String which is to be removed from the end of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| False |
|
| Name of the attribute containing the user roles. |
| False |
|
| The fixed DN of the context to search for user roles. This is not the DN where the actual roles are, but the DN where the objects containing the user roles are. For example, in a Microsoft Active Directory server, this is the DN where the user account is. |
| False |
|
| A search filter used to locate the roles associated with the authenticated user. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. The authenticated userDN is substituted into the filter anywhere a {1} is used. An example search filter that matches on the input username is (member={0}). An alternative that matches on the authenticated userDN is (member={1}). |
| False |
|
| The number of levels of recursion the role search will go below a matching context. Disable recursion by setting this to 0. |
| False |
|
| A role included for all authenticated users |
| False |
|
| Name of the attribute within the roleCtxDN context which contains the role name. If the roleAttributeIsDN property is set to true, this property is used to find the role object’s name attribute. |
| False |
|
| A flag indicating if the DN returned by a query contains the roleNameAttributeID. If set to true, the DN is checked for the roleNameAttributeID. If set to false, the DN is not checked for the roleNameAttributeID. This flag can improve the performance of LDAP queries. |
| False |
|
| Whether or not the roleAttributeID contains the fully-qualified DN of a role object. If false, the role name is taken from the value of the roleNameAttributeId attribute of the context name. Certain directory schemas, such as Microsoft Active Directory, require this attribute to be set to true. |
| False |
|
| If you are not using referrals, this option can be ignored. When using referrals, this option denotes the attribute name which contains users defined for a certain role, for example member, if the role object is inside the referral. Users are checked against the content of this attribute name. If this option is not set, the check will always fail, so role objects cannot be stored in a referral tree. |
| False |
4.1.2. Objects
The CLI supports various object types. A list of these object types as well as their abbreviations can be found in the Openshift documentation.
4.1.2.1. Services
A service is an abstraction which defines a logical set of pods and a policy by which to access them. Refer to the container-engine documentation for more information.
Service | Port | Name | Description |
---|---|---|---|
| 8080 | http | All the Business Central web server’s ports. |
8443 | https | ||
8001 | git-ssh | ||
| 8080 | http | All the KIE server web server’s ports. |
8443 | https |
4.1.2.2. Routes
A route is a way to expose a service by giving it an externally-reachable hostname such as www.example.com
. A defined route and the endpoints identified by its service can be consumed by a router to provide named connectivity from external clients to your applications. Each route consists of a route name, service selector, and (optionally) security configuration. Refer to the Openshift documentation for more information.
Service | Security | Hostname |
---|---|---|
| none |
|
| TLS passthrough |
|
| none |
|
| TLS passthrough |
|
4.1.2.3. Deployment Configurations
A deployment in OpenShift is a replication controller based on a user defined template called a deployment configuration. Deployments are created manually or in response to triggered events. Refer to the Openshift documentation for more information.
4.1.2.3.1. Triggers
A trigger drives the creation of new deployments in response to events, both inside and outside OpenShift. Refer to the Openshift documentation for more information.
Deployment | Triggers |
---|---|
| ImageChange |
| ImageChange |
4.1.2.3.2. Replicas
A replication controller ensures that a specified number of pod "replicas" are running at any one time. If there are too many, the replication controller kills some pods. If there are too few, it starts more. Refer to the container-engine documentation for more information.
Deployment | Replicas |
---|---|
| 1 |
| 1 |
4.1.2.3.3. Pod Template
4.1.2.3.3.1. Service Accounts
Service accounts are API objects that exist within each project. They can be created or deleted like any other API object. Refer to the Openshift documentation for more information.
Deployment | Service Account |
---|---|
|
|
|
|
4.1.2.3.3.2. Image
Deployment | Image |
---|---|
| rhpam71-businesscentral-openshift |
|
|
4.1.2.3.3.3. Readiness Probe
${APPLICATION_NAME}-rhpamcentr
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/kie-wb.jsp
${APPLICATION_NAME}-kieserver
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/services/rest/server/readycheck
4.1.2.3.3.4. Liveness Probe
${APPLICATION_NAME}-rhpamcentr
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/kie-wb.jsp
${APPLICATION_NAME}-kieserver
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/services/rest/server/readycheck
4.1.2.3.3.5. Exposed Ports
Deployments | Name | Port | Protocol |
---|---|---|---|
| jolokia | 8778 |
|
http | 8080 |
| |
https | 8443 |
| |
git-ssh | 8001 |
| |
| jolokia | 8778 |
|
http | 8080 |
| |
https | 8443 |
|
4.1.2.3.3.6. Image Environment Variables
Deployment | Variable name | Description | Example value |
---|---|---|---|
|
| KIE administrator username |
|
| KIE administrator password |
| |
| KIE server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties) |
| |
| KIE server controller username (Sets the org.kie.server.controller.user system property) |
| |
| KIE server controller password (Sets the org.kie.server.controller.pwd system property) |
| |
| KIE server controller token for bearer authentication (Sets the org.kie.server.controller.token system property) |
| |
| KIE server username (Sets the org.kie.server.user system property) |
| |
| KIE server password (Sets the org.kie.server.pwd system property) |
| |
| The id to use for the maven repository, if set. Default is generated randomly. |
| |
| Fully qualified URL to a Maven repository or service. |
| |
| Username to access the Maven repository, if required. |
| |
| Password to access the Maven repository, if required. |
| |
| — |
| |
| — |
| |
| The directory to use for git hooks, if required. |
| |
| — |
| |
| The name of the keystore file within the secret |
| |
| The name associated with the server certificate |
| |
| The password for the keystore and certificate |
| |
| — |
| |
| RH-SSO URL |
| |
| — | ROOT.war | |
| RH-SSO Realm name |
| |
| Business Central RH-SSO Client Secret |
| |
| Business Central RH-SSO Client name |
| |
| RH-SSO Realm Admin Username used to create the Client if it doesn’t exist |
| |
| RH-SSO Realm Admin Password used to create the Client |
| |
| RH-SSO Disable SSL Certificate Validation |
| |
| RH-SSO Principal Attribute to use as username. |
| |
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| LDAP Endpoint to connect for authentication |
| |
| Bind DN used for authentication |
| |
| LDAP Credentials used for authentication |
| |
| The JMX ObjectName of the JaasSecurityDomain used to decrypt the password. |
| |
| LDAP Base DN of the top-level context to begin the user search. |
| |
| LDAP search filter used to locate the context of the user to authenticate. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. A common example for the search filter is (uid={0}). |
| |
| The search scope to use. |
| |
| The timeout in milliseconds for user or role searches. |
| |
| The name of the attribute in the user entry that contains the DN of the user. This may be necessary if the DN of the user itself contains special characters, backslash for example, that prevent correct user mapping. If the attribute does not exist, the entry’s DN is used. |
| |
| A flag indicating if the DN is to be parsed for the username. If set to true, the DN is parsed for the username. If set to false the DN is not parsed for the username. This option is used together with usernameBeginString and usernameEndString. |
| |
| Defines the String which is to be removed from the start of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Defines the String which is to be removed from the end of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Name of the attribute containing the user roles. |
| |
| The fixed DN of the context to search for user roles. This is not the DN where the actual roles are, but the DN where the objects containing the user roles are. For example, in a Microsoft Active Directory server, this is the DN where the user account is. |
| |
| A search filter used to locate the roles associated with the authenticated user. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. The authenticated userDN is substituted into the filter anywhere a {1} is used. An example search filter that matches on the input username is (member={0}). An alternative that matches on the authenticated userDN is (member={1}). |
| |
| The number of levels of recursion the role search will go below a matching context. Disable recursion by setting this to 0. |
| |
| A role included for all authenticated users |
| |
| Name of the attribute within the roleCtxDN context which contains the role name. If the roleAttributeIsDN property is set to true, this property is used to find the role object’s name attribute. |
| |
| A flag indicating if the DN returned by a query contains the roleNameAttributeID. If set to true, the DN is checked for the roleNameAttributeID. If set to false, the DN is not checked for the roleNameAttributeID. This flag can improve the performance of LDAP queries. |
| |
| Whether or not the roleAttributeID contains the fully-qualified DN of a role object. If false, the role name is taken from the value of the roleNameAttributeId attribute of the context name. Certain directory schemas, such as Microsoft Active Directory, require this attribute to be set to true. |
| |
| If you are not using referrals, this option can be ignored. When using referrals, this option denotes the attribute name which contains users defined for a certain role, for example member, if the role object is inside the referral. Users are checked against the content of this attribute name. If this option is not set, the check will always fail, so role objects cannot be stored in a referral tree. |
| |
|
| — |
|
| — | rhpam7 | |
| — |
| |
| — | true | |
| — | h2 | |
| — |
| |
| — |
| |
| — | jdbc:h2:/opt/eap/standalone/data/rhpam | |
| — | dummy_ignored | |
| — | 12345 | |
| — | org.hibernate.dialect.H2Dialect | |
| KIE server class filtering (Sets the org.drools.server.filter.classes system property) |
| |
| KIE administrator username |
| |
| KIE administrator password |
| |
| KIE server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties) |
| |
| KIE server bypass auth user (Sets the org.kie.server.bypass.auth.user system property) |
| |
| KIE server controller username (Sets the org.kie.server.controller.user system property) |
| |
| KIE server controller password (Sets the org.kie.server.controller.pwd system property) |
| |
| KIE server controller token for bearer authentication (Sets the org.kie.server.controller.token system property) |
| |
| — |
| |
| — | ws | |
| — |
| |
| Custom hostname for http service route, if set will also configure the KIE_SERVER_HOST. Leave blank for default hostname, e.g.: <application-name>-kieserver-<project>.<default-domain-suffix> |
| |
| — |
| |
| Use https for the KIE_SERVER_HOST when it is not explicit configured to a custom value. |
| |
| KIE server persistence datasource (Sets the org.kie.server.persistence.ds system property) |
| |
| KIE server username (Sets the org.kie.server.user system property) |
| |
| KIE server password (Sets the org.kie.server.pwd system property) |
| |
| — | RHPAMCENTR,EXTERNAL | |
| — |
| |
| — |
| |
| Username to access the Maven repository, if required. |
| |
| Password to access the Maven repository, if required. |
| |
| The id to use for the maven repository, if set. Default is generated randomly. |
| |
| Fully qualified URL to a Maven repository or service. |
| |
| Username to access the Maven repository, if required. |
| |
| Password to access the Maven repository, if required. |
| |
| — |
| |
| The name of the keystore file within the secret |
| |
| The name associated with the server certificate |
| |
| The password for the keystore and certificate |
| |
| RH-SSO URL |
| |
| — | ROOT.war | |
| RH-SSO Realm name |
| |
| Business Central RH-SSO Client Secret |
| |
| Business Central RH-SSO Client name |
| |
| RH-SSO Realm Admin Username used to create the Client if it doesn’t exist |
| |
| RH-SSO Realm Admin Password used to create the Client |
| |
| RH-SSO Disable SSL Certificate Validation |
| |
| RH-SSO Principal Attribute to use as username. |
| |
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| LDAP Endpoint to connect for authentication |
| |
| Bind DN used for authentication |
| |
| LDAP Credentials used for authentication |
| |
| The JMX ObjectName of the JaasSecurityDomain used to decrypt the password. |
| |
| LDAP Base DN of the top-level context to begin the user search. |
| |
| LDAP search filter used to locate the context of the user to authenticate. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. A common example for the search filter is (uid={0}). |
| |
| The search scope to use. |
| |
| The timeout in milliseconds for user or role searches. |
| |
| The name of the attribute in the user entry that contains the DN of the user. This may be necessary if the DN of the user itself contains special characters, backslash for example, that prevent correct user mapping. If the attribute does not exist, the entry’s DN is used. |
| |
| A flag indicating if the DN is to be parsed for the username. If set to true, the DN is parsed for the username. If set to false the DN is not parsed for the username. This option is used together with usernameBeginString and usernameEndString. |
| |
| Defines the String which is to be removed from the start of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Defines the String which is to be removed from the end of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Name of the attribute containing the user roles. |
| |
| The fixed DN of the context to search for user roles. This is not the DN where the actual roles are, but the DN where the objects containing the user roles are. For example, in a Microsoft Active Directory server, this is the DN where the user account is. |
| |
| A search filter used to locate the roles associated with the authenticated user. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. The authenticated userDN is substituted into the filter anywhere a {1} is used. An example search filter that matches on the input username is (member={0}). An alternative that matches on the authenticated userDN is (member={1}). |
| |
| The number of levels of recursion the role search will go below a matching context. Disable recursion by setting this to 0. |
| |
| A role included for all authenticated users |
| |
| Name of the attribute within the roleCtxDN context which contains the role name. If the roleAttributeIsDN property is set to true, this property is used to find the role object’s name attribute. |
| |
| A flag indicating if the DN returned by a query contains the roleNameAttributeID. If set to true, the DN is checked for the roleNameAttributeID. If set to false, the DN is not checked for the roleNameAttributeID. This flag can improve the performance of LDAP queries. |
| |
| Whether or not the roleAttributeID contains the fully-qualified DN of a role object. If false, the role name is taken from the value of the roleNameAttributeId attribute of the context name. Certain directory schemas, such as Microsoft Active Directory, require this attribute to be set to true. |
| |
| If you are not using referrals, this option can be ignored. When using referrals, this option denotes the attribute name which contains users defined for a certain role, for example member, if the role object is inside the referral. Users are checked against the content of this attribute name. If this option is not set, the check will always fail, so role objects cannot be stored in a referral tree. |
|
4.1.2.3.3.7. Volumes
Deployment | Name | mountPath | Purpose | readOnly |
---|---|---|---|---|
| businesscentral-keystore-volume |
| ssl certs | True |
| kieserver-keystore-volume |
| ssl certs | True |
4.1.2.4. External Dependencies
4.1.2.4.1. Volume Claims
A PersistentVolume
object is a storage resource in an OpenShift cluster. Storage is provisioned by an administrator by creating PersistentVolume
objects from sources such as GCE Persistent Disks, AWS Elastic Block Stores (EBS), and NFS mounts. Refer to the Openshift documentation for more information.
Name | Access Mode |
---|---|
| ReadWriteOnce |
| ReadWriteOnce |
4.1.2.4.2. Secrets
This template requires the following secrets to be installed for the application to run.
businesscentral-app-secret kieserver-app-secret
4.2. rhpam71-authoring-ha
4.2.1. Parameters
Templates allow you to define parameters which take on a value. That value is then substituted wherever the parameter is referenced. References can be defined in any text field in the objects list field. Refer to the Openshift documentation for more information.
Variable name | Image Environment Variable | Description | Example value | Required |
---|---|---|---|---|
| — | The name for the application. | myapp | True |
|
| KIE administrator username | adminUser | False |
|
| KIE administrator password |
| False |
|
| KIE server controller username (Sets the org.kie.server.controller.user system property) | controllerUser | False |
|
| KIE server controller password (Sets the org.kie.server.controller.pwd system property) |
| False |
|
| KIE server controller token for bearer authentication (Sets the org.kie.server.controller.token system property) |
| False |
|
| KIE server username (Sets the org.kie.server.user system property) | executionUser | False |
|
| KIE server password (Sets the org.kie.server.pwd system property) |
| False |
|
| KIE server bypass auth user (Sets the org.kie.server.bypass.auth.user system property) | false | False |
|
| KIE server persistence datasource (Sets the org.kie.server.persistence.ds system property) | java:/jboss/datasources/rhpam | False |
|
| KIE server MySQL database username | rhpam | False |
| — | KIE server MySQL database password | — | False |
| — | KIE server MySQL database name | rhpam7 | False |
| — | Namespace in which the ImageStream for the MySQL image is installed. The ImageStream is already installed in the openshift namespace. You should only need to modify this if you’ve installed the ImageStream in a different namespace/project. Default is "openshift". | openshift | False |
| — | The MySQL image version, which is intended to correspond to the MySQL version. Default is "5.7". | 5.7 | False |
| — | Size of persistent storage for database volume. | 1Gi | True |
|
| KIE server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties) | enabled | False |
|
| KIE server class filtering (Sets the org.drools.server.filter.classes system property) | true | False |
|
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| False |
|
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| False |
|
| Custom hostname for http service route, if set will also configure the KIE_SERVER_HOST. Leave blank for default hostname, e.g.: <application-name>-kieserver-<project>.<default-domain-suffix> |
| False |
|
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-kieserver-<project>.<default-domain-suffix> |
| False |
|
| Use https for the KIE_SERVER_HOST when it is not explicit configured to a custom value. | false | False |
| — | The name of the secret containing the keystore file | — | True |
|
| The name of the keystore file within the secret | keystore.jks | False |
|
| The name associated with the server certificate | jboss | False |
|
| The password for the keystore and certificate | mykeystorepass | False |
| — | The name of the secret containing the keystore file | — | True |
|
| The name of the keystore file within the secret | keystore.jks | False |
|
| The name associated with the server certificate | jboss | False |
|
| The password for the keystore and certificate | mykeystorepass | False |
|
| The number of times that appformer will try to connect to the elasticsearch node before give up. |
| False |
|
| The port to connect in the JMS broker. Defaults to 61616 |
| False |
|
| The username to connect in the JMS broker. | jmsBrokserUser | True |
|
| The password to connect in the JMS broker. |
| True |
|
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamindex-<project>.<default-domain-suffix> |
| False |
|
| Sets the ES cluster.name and configure it on Business Central. Defaults to kie-cluster. |
| False |
|
| Sets the ES node.name property. Defaults to HOSTNAME env value. |
| False |
|
| Sets the ES transport.host property. This will set the transport address of the main ES cluster node. Used for communication between nodes in the cluster. Defaults to container address. |
| False |
|
| Sets the ES http.host property. This will set the http address of the main ES cluster node. Used for communication between nodes in the cluster and the communication with Business Central. |
| False |
|
| Sets the ES http.host property. This will set the http address of the main ES cluster node. Used to interact with cluster rest api. Defaults to the container ip address |
| False |
|
| Sets the ES http.port property. This will set the http port of the main ES cluster node. Used to interact with cluster rest api. |
| False |
|
| Appends custom jvm configurations/properties to ES jvm.options configuration file. |
| False |
| — | Namespace in which the ImageStream for the AMQ image is installed. Default is "openshift". | openshift | True |
| — | The name of the image stream to use for the AMQ broker. Default is "amq-broker71-openshift". | amq-broker71-openshift | True |
| — | The AMQ image stream tag. Default is "1.0". | 1.0 | True |
|
| User role for standard broker user. | admin | True |
|
| The name of the broker | broker | True |
|
| Maximum amount of memory which message data may consume (Default: Undefined, half of the system’s memory). | 100 gb | False |
| — | Size of persistent storage for Elasticsearch volume. | 1Gi | True |
| — | Namespace in which the ImageStreams for Red Hat Middleware images are installed. These ImageStreams are normally installed in the openshift namespace. You should only need to modify this if you’ve installed the ImageStreams in a different namespace/project. | openshift | True |
| — | The name of the image stream to use for KIE server. Default is "rhpam71-kieserver-openshift". | rhpam71-kieserver-openshift | True |
| — | A named pointer to an image in an image stream. Default is "1.1". | 1.1 | True |
|
| The id to use for the maven repository, if set. Default is generated randomly. |
| False |
|
| Fully qualified URL to a Maven repository or service. |
| False |
|
| Username to access the Maven repository, if required. |
| False |
|
| Password to access the Maven repository, if required. |
| False |
| — | Username to access the Maven service hosted by Business Central inside EAP. | mavenUser | True |
| — | Password to access the Maven service hosted by Business Central inside EAP. | — | True |
|
| The directory to use for git hooks, if required. |
| False |
|
| Sets refresh-interval for the EJB timer database data-store service. | 60000 | True |
| — | Size of the persistent storage for Business Central’s runtime data. | 1Gi | True |
| — | Business Central Container memory limit | 2Gi | False |
| — | KIE server Container memory limit | 1Gi | False |
|
| RH-SSO URL |
| False |
|
| RH-SSO Realm name |
| False |
|
| Business Central RH-SSO Client name |
| False |
|
| Business Central RH-SSO Client Secret |
| False |
|
| KIE Server RH-SSO Client name |
| False |
|
| KIE Server RH-SSO Client Secret |
| False |
|
| RH-SSO Realm Admin Username used to create the Client if it doesn’t exist |
| False |
|
| RH-SSO Realm Admin Password used to create the Client |
| False |
|
| RH-SSO Disable SSL Certificate Validation | false | False |
|
| RH-SSO Principal Attribute to use as username. | preferred_username | False |
|
| LDAP Endpoint to connect for authentication |
| False |
|
| Bind DN used for authentication |
| False |
|
| LDAP Credentials used for authentication |
| False |
|
| The JMX ObjectName of the JaasSecurityDomain used to decrypt the password. |
| False |
|
| LDAP Base DN of the top-level context to begin the user search. |
| False |
|
| LDAP search filter used to locate the context of the user to authenticate. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. A common example for the search filter is (uid={0}). |
| False |
|
| The search scope to use. |
| False |
|
| The timeout in milliseconds for user or role searches. |
| False |
|
| The name of the attribute in the user entry that contains the DN of the user. This may be necessary if the DN of the user itself contains special characters, backslash for example, that prevent correct user mapping. If the attribute does not exist, the entry’s DN is used. |
| False |
|
| A flag indicating if the DN is to be parsed for the username. If set to true, the DN is parsed for the username. If set to false the DN is not parsed for the username. This option is used together with usernameBeginString and usernameEndString. |
| False |
|
| Defines the String which is to be removed from the start of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| False |
|
| Defines the String which is to be removed from the end of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| False |
|
| Name of the attribute containing the user roles. |
| False |
|
| The fixed DN of the context to search for user roles. This is not the DN where the actual roles are, but the DN where the objects containing the user roles are. For example, in a Microsoft Active Directory server, this is the DN where the user account is. |
| False |
|
| A search filter used to locate the roles associated with the authenticated user. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. The authenticated userDN is substituted into the filter anywhere a {1} is used. An example search filter that matches on the input username is (member={0}). An alternative that matches on the authenticated userDN is (member={1}). |
| False |
|
| The number of levels of recursion the role search will go below a matching context. Disable recursion by setting this to 0. |
| False |
|
| A role included for all authenticated users |
| False |
|
| Name of the attribute within the roleCtxDN context which contains the role name. If the roleAttributeIsDN property is set to true, this property is used to find the role object’s name attribute. |
| False |
|
| A flag indicating if the DN returned by a query contains the roleNameAttributeID. If set to true, the DN is checked for the roleNameAttributeID. If set to false, the DN is not checked for the roleNameAttributeID. This flag can improve the performance of LDAP queries. |
| False |
|
| Whether or not the roleAttributeID contains the fully-qualified DN of a role object. If false, the role name is taken from the value of the roleNameAttributeId attribute of the context name. Certain directory schemas, such as Microsoft Active Directory, require this attribute to be set to true. |
| False |
|
| If you are not using referrals, this option can be ignored. When using referrals, this option denotes the attribute name which contains users defined for a certain role, for example member, if the role object is inside the referral. Users are checked against the content of this attribute name. If this option is not set, the check will always fail, so role objects cannot be stored in a referral tree. |
| False |
4.2.2. Objects
The CLI supports various object types. A list of these object types as well as their abbreviations can be found in the Openshift documentation.
4.2.2.1. Services
A service is an abstraction which defines a logical set of pods and a policy by which to access them. Refer to the container-engine documentation for more information.
Service | Port | Name | Description |
---|---|---|---|
| 8080 | http | All the Business Central web server’s ports. |
8443 | https | ||
8001 | git-ssh | ||
| 8888 | ping | The JGroups ping port for clustering. |
| 8080 | http | All the KIE server web server’s ports. |
8443 | https | ||
| 9200 | rest | All the Business Central Indexing Elasticsearch ports. |
9300 | transport | ||
| 61616 | — | The broker’s OpenWire port. |
| 3306 | — | The MySQL server’s port. |
4.2.2.2. Routes
A route is a way to expose a service by giving it an externally-reachable hostname such as www.example.com
. A defined route and the endpoints identified by its service can be consumed by a router to provide named connectivity from external clients to your applications. Each route consists of a route name, service selector, and (optionally) security configuration. Refer to the Openshift documentation for more information.
Service | Security | Hostname |
---|---|---|
| none |
|
| TLS passthrough |
|
| none |
|
| TLS passthrough |
|
| none |
|
4.2.2.3. Deployment Configurations
A deployment in OpenShift is a replication controller based on a user defined template called a deployment configuration. Deployments are created manually or in response to triggered events. Refer to the Openshift documentation for more information.
4.2.2.3.1. Triggers
A trigger drives the creation of new deployments in response to events, both inside and outside OpenShift. Refer to the Openshift documentation for more information.
Deployment | Triggers |
---|---|
| ImageChange |
| ImageChange |
| ImageChange |
| ImageChange |
| ImageChange |
4.2.2.3.2. Replicas
A replication controller ensures that a specified number of pod "replicas" are running at any one time. If there are too many, the replication controller kills some pods. If there are too few, it starts more. Refer to the container-engine documentation for more information.
Deployment | Replicas |
---|---|
| 2 |
| 2 |
| 1 |
| 1 |
| 1 |
4.2.2.3.3. Pod Template
4.2.2.3.3.1. Service Accounts
Service accounts are API objects that exist within each project. They can be created or deleted like any other API object. Refer to the Openshift documentation for more information.
Deployment | Service Account |
---|---|
|
|
|
|
4.2.2.3.3.2. Image
Deployment | Image |
---|---|
| rhpam71-businesscentral-openshift |
|
|
| rhpam71-businesscentral-indexing-openshift |
|
|
| mysql |
4.2.2.3.3.3. Readiness Probe
${APPLICATION_NAME}-rhpamcentr
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/kie-wb.jsp
${APPLICATION_NAME}-kieserver
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/services/rest/server/readycheck
${APPLICATION_NAME}-rhpamindex
Http Get on http://localhost:9200/_cluster/health
${APPLICATION_NAME}-amq
/bin/bash -c /opt/amq/bin/readinessProbe.sh
${APPLICATION_NAME}-mysql
/bin/sh -i -c MYSQL_PWD="$MYSQL_PASSWORD" mysql -h 127.0.0.1 -u $MYSQL_USER -D $MYSQL_DATABASE -e 'SELECT 1'
4.2.2.3.3.4. Liveness Probe
${APPLICATION_NAME}-rhpamcentr
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/kie-wb.jsp
${APPLICATION_NAME}-kieserver
/bin/bash -c curl --fail --silent -u '${KIE_ADMIN_USER}:${KIE_ADMIN_PWD}' http://localhost:8080/services/rest/server/readycheck
4.2.2.3.3.5. Exposed Ports
Deployments | Name | Port | Protocol |
---|---|---|---|
| jolokia | 8778 |
|
http | 8080 |
| |
https | 8443 |
| |
ping | 8888 |
| |
| jolokia | 8778 |
|
http | 8080 |
| |
https | 8443 |
| |
| es | 9300 |
|
http | 9200 |
| |
| jolokia | 8161 |
|
amqp | 5672 |
| |
mqtt | 1883 |
| |
stomp | 61613 |
| |
artemis | 61616 |
| |
| — | 3306 |
|
4.2.2.3.3.6. Image Environment Variables
Deployment | Variable name | Description | Example value |
---|---|---|---|
|
| KIE administrator username |
|
| KIE administrator password |
| |
| KIE server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties) |
| |
| KIE server controller username (Sets the org.kie.server.controller.user system property) |
| |
| KIE server controller password (Sets the org.kie.server.controller.pwd system property) |
| |
| KIE server controller token for bearer authentication (Sets the org.kie.server.controller.token system property) |
| |
| KIE server username (Sets the org.kie.server.user system property) |
| |
| KIE server password (Sets the org.kie.server.pwd system property) |
| |
| The id to use for the maven repository, if set. Default is generated randomly. |
| |
| Fully qualified URL to a Maven repository or service. |
| |
| Username to access the Maven repository, if required. |
| |
| Password to access the Maven repository, if required. |
| |
| — |
| |
| — |
| |
| The directory to use for git hooks, if required. |
| |
| — |
| |
| The name of the keystore file within the secret |
| |
| The name associated with the server certificate |
| |
| The password for the keystore and certificate |
| |
| — |
| |
| — | openshift.DNS_PING | |
| — |
| |
| — | 8888 | |
| Sets the ES http.host property. This will set the http address of the main ES cluster node. Used for communication between nodes in the cluster and the communication with Business Central. |
| |
| Sets the ES cluster.name and configure it on Business Central. Defaults to kie-cluster. |
| |
| The number of times that appformer will try to connect to the elasticsearch node before give up. |
| |
| — |
| |
| — |
| |
| The port to connect in the JMS broker. Defaults to 61616 |
| |
| The username to connect in the JMS broker. |
| |
| The password to connect in the JMS broker. |
| |
| RH-SSO URL |
| |
| — | ROOT.war | |
| RH-SSO Realm name |
| |
| Business Central RH-SSO Client Secret |
| |
| Business Central RH-SSO Client name |
| |
| RH-SSO Realm Admin Username used to create the Client if it doesn’t exist |
| |
| RH-SSO Realm Admin Password used to create the Client |
| |
| RH-SSO Disable SSL Certificate Validation |
| |
| RH-SSO Principal Attribute to use as username. |
| |
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| LDAP Endpoint to connect for authentication |
| |
| Bind DN used for authentication |
| |
| LDAP Credentials used for authentication |
| |
| The JMX ObjectName of the JaasSecurityDomain used to decrypt the password. |
| |
| LDAP Base DN of the top-level context to begin the user search. |
| |
| LDAP search filter used to locate the context of the user to authenticate. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. A common example for the search filter is (uid={0}). |
| |
| The search scope to use. |
| |
| The timeout in milliseconds for user or role searches. |
| |
| The name of the attribute in the user entry that contains the DN of the user. This may be necessary if the DN of the user itself contains special characters, backslash for example, that prevent correct user mapping. If the attribute does not exist, the entry’s DN is used. |
| |
| A flag indicating if the DN is to be parsed for the username. If set to true, the DN is parsed for the username. If set to false the DN is not parsed for the username. This option is used together with usernameBeginString and usernameEndString. |
| |
| Defines the String which is to be removed from the start of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Defines the String which is to be removed from the end of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Name of the attribute containing the user roles. |
| |
| The fixed DN of the context to search for user roles. This is not the DN where the actual roles are, but the DN where the objects containing the user roles are. For example, in a Microsoft Active Directory server, this is the DN where the user account is. |
| |
| A search filter used to locate the roles associated with the authenticated user. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. The authenticated userDN is substituted into the filter anywhere a {1} is used. An example search filter that matches on the input username is (member={0}). An alternative that matches on the authenticated userDN is (member={1}). |
| |
| The number of levels of recursion the role search will go below a matching context. Disable recursion by setting this to 0. |
| |
| A role included for all authenticated users |
| |
| Name of the attribute within the roleCtxDN context which contains the role name. If the roleAttributeIsDN property is set to true, this property is used to find the role object’s name attribute. |
| |
| A flag indicating if the DN returned by a query contains the roleNameAttributeID. If set to true, the DN is checked for the roleNameAttributeID. If set to false, the DN is not checked for the roleNameAttributeID. This flag can improve the performance of LDAP queries. |
| |
| Whether or not the roleAttributeID contains the fully-qualified DN of a role object. If false, the role name is taken from the value of the roleNameAttributeId attribute of the context name. Certain directory schemas, such as Microsoft Active Directory, require this attribute to be set to true. |
| |
| If you are not using referrals, this option can be ignored. When using referrals, this option denotes the attribute name which contains users defined for a certain role, for example member, if the role object is inside the referral. Users are checked against the content of this attribute name. If this option is not set, the check will always fail, so role objects cannot be stored in a referral tree. |
| |
|
| — | true |
| Sets refresh-interval for the EJB timer database data-store service. |
| |
| — |
| |
| — |
| |
| — | mysql | |
| — |
| |
| — |
| |
| — |
| |
| — | 3306 | |
| — | org.hibernate.dialect.MySQLDialect | |
| KIE server persistence datasource (Sets the org.kie.server.persistence.ds system property) |
| |
| — |
| |
| — | true | |
| KIE server class filtering (Sets the org.drools.server.filter.classes system property) |
| |
| KIE administrator password |
| |
| KIE administrator username |
| |
| KIE server mbeans enabled/disabled (Sets the kie.mbeans and kie.scanner.mbeans system properties) |
| |
| KIE server bypass auth user (Sets the org.kie.server.bypass.auth.user system property) |
| |
| KIE server controller username (Sets the org.kie.server.controller.user system property) |
| |
| KIE server controller password (Sets the org.kie.server.controller.pwd system property) |
| |
| KIE server controller token for bearer authentication (Sets the org.kie.server.controller.token system property) |
| |
| — |
| |
| — | ws | |
| — |
| |
| Custom hostname for http service route, if set will also configure the KIE_SERVER_HOST. Leave blank for default hostname, e.g.: <application-name>-kieserver-<project>.<default-domain-suffix> |
| |
| — |
| |
| Use https for the KIE_SERVER_HOST when it is not explicit configured to a custom value. |
| |
| KIE server password (Sets the org.kie.server.pwd system property) |
| |
| KIE server username (Sets the org.kie.server.user system property) |
| |
| — | RHPAMCENTR,EXTERNAL | |
| — |
| |
| — |
| |
| Username to access the Maven repository, if required. |
| |
| Password to access the Maven repository, if required. |
| |
| The id to use for the maven repository, if set. Default is generated randomly. |
| |
| Fully qualified URL to a Maven repository or service. |
| |
| Username to access the Maven repository, if required. |
| |
| Password to access the Maven repository, if required. |
| |
| — |
| |
| The name of the keystore file within the secret |
| |
| The name associated with the server certificate |
| |
| The password for the keystore and certificate |
| |
| RH-SSO URL |
| |
| — | ROOT.war | |
| RH-SSO Realm name |
| |
| Business Central RH-SSO Client Secret |
| |
| Business Central RH-SSO Client name |
| |
| RH-SSO Realm Admin Username used to create the Client if it doesn’t exist |
| |
| RH-SSO Realm Admin Password used to create the Client |
| |
| RH-SSO Disable SSL Certificate Validation |
| |
| RH-SSO Principal Attribute to use as username. |
| |
| Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-rhpamcentr-<project>.<default-domain-suffix> |
| |
| LDAP Endpoint to connect for authentication |
| |
| Bind DN used for authentication |
| |
| LDAP Credentials used for authentication |
| |
| The JMX ObjectName of the JaasSecurityDomain used to decrypt the password. |
| |
| LDAP Base DN of the top-level context to begin the user search. |
| |
| LDAP search filter used to locate the context of the user to authenticate. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. A common example for the search filter is (uid={0}). |
| |
| The search scope to use. |
| |
| The timeout in milliseconds for user or role searches. |
| |
| The name of the attribute in the user entry that contains the DN of the user. This may be necessary if the DN of the user itself contains special characters, backslash for example, that prevent correct user mapping. If the attribute does not exist, the entry’s DN is used. |
| |
| A flag indicating if the DN is to be parsed for the username. If set to true, the DN is parsed for the username. If set to false the DN is not parsed for the username. This option is used together with usernameBeginString and usernameEndString. |
| |
| Defines the String which is to be removed from the start of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Defines the String which is to be removed from the end of the DN to reveal the username. This option is used together with usernameEndString and only taken into account if parseUsername is set to true. |
| |
| Name of the attribute containing the user roles. |
| |
| The fixed DN of the context to search for user roles. This is not the DN where the actual roles are, but the DN where the objects containing the user roles are. For example, in a Microsoft Active Directory server, this is the DN where the user account is. |
| |
| A search filter used to locate the roles associated with the authenticated user. The input username or userDN obtained from the login module callback is substituted into the filter anywhere a {0} expression is used. The authenticated userDN is substituted into the filter anywhere a {1} is used. An example search filter that matches on the input username is (member={0}). An alternative that matches on the authenticated userDN is (member={1}). |
| |
| The number of levels of recursion the role search will go below a matching context. Disable recursion by setting this to 0. |
| |
| A role included for all authenticated users |
| |
| Name of the attribute within the roleCtxDN context which contains the role name. If the roleAttributeIsDN property is set to true, this property is used to find the role object’s name attribute. |
| |
| A flag indicating if the DN returned by a query contains the roleNameAttributeID. If set to true, the DN is checked for the roleNameAttributeID. If set to false, the DN is not checked for the roleNameAttributeID. This flag can improve the performance of LDAP queries. |
| |
| Whether or not the roleAttributeID contains the fully-qualified DN of a role object. If false, the role name is taken from the value of the roleNameAttributeId attribute of the context name. Certain directory schemas, such as Microsoft Active Directory, require this attribute to be set to true. |
| |
| If you are not using referrals, this option can be ignored. When using referrals, this option denotes the attribute name which contains users defined for a certain role, for example member, if the role object is inside the referral. Users are checked against the content of this attribute name. If this option is not set, the check will always fail, so role objects cannot be stored in a referral tree. |
| |
|
| — |
|
| Sets the ES node.name property. Defaults to HOSTNAME env value. |
| |
| Sets the ES transport.host property. This will set the transport address of the main ES cluster node. Used for communication between nodes in the cluster. Defaults to container address. |
| |
| — |
| |
| Sets the ES http.port property. This will set the http port of the main ES cluster node. Used to interact with cluster rest api. |
| |
| Sets the ES http.host property. This will set the http address of the main ES cluster node. Used to interact with cluster rest api. Defaults to the container ip address |
| |
| Appends custom jvm configurations/properties to ES jvm.options configuration file. |
| |
|
| — |
|
| — |
| |
| User role for standard broker user. |
| |
| The name of the broker |
| |
| — | openwire | |
| Maximum amount of memory which message data may consume (Default: Undefined, half of the system’s memory). |
| |
|
| KIE server MySQL database username |
|
| — |
| |
| — |
|
4.2.2.3.3.7. Volumes
Deployment | Name | mountPath | Purpose | readOnly |
---|---|---|---|---|
| businesscentral-keystore-volume |
| ssl certs | True |
| kieserver-keystore-volume |
| ssl certs | True |
|
|
| rhpamindex | false |
|
|
| mysql | false |
4.2.2.4. External Dependencies
4.2.2.4.1. Volume Claims
A PersistentVolume
object is a storage resource in an OpenShift cluster. Storage is provisioned by an administrator by creating PersistentVolume
objects from sources such as GCE Persistent Disks, AWS Elastic Block Stores (EBS), and NFS mounts. Refer to the Openshift documentation for more information.
Name | Access Mode |
---|---|
| ReadWriteMany |
| ReadWriteOnce |
| ReadWriteOnce |
4.2.2.4.2. Secrets
This template requires the following secrets to be installed for the application to run.
businesscentral-app-secret kieserver-app-secret
4.2.2.4.3. Clustering
Clustering in OpenShift EAP is achieved through one of two discovery mechanisms: Kubernetes or DNS. This is done by configuring the JGroups protocol stack in standalone-openshift.xml with either the <openshift.KUBE_PING/>
or <openshift.DNS_PING/>
elements. The templates are configured to use DNS_PING
, however `KUBE_PING`is the default used by the image.
The discovery mechanism used is specified by the JGROUPS_PING_PROTOCOL
environment variable which can be set to either openshift.DNS_PING
or openshift.KUBE_PING
. openshift.KUBE_PING
is the default used by the image if no value is specified for JGROUPS_PING_PROTOCOL
.
For DNS_PING to work, the following steps must be taken:
-
The
OPENSHIFT_DNS_PING_SERVICE_NAME
environment variable must be set to the name of the ping service for the cluster (see table above). If not set, the server will act as if it is a single-node cluster (a "cluster of one"). -
The
OPENSHIFT_DNS_PING_SERVICE_PORT
environment variables should be set to the port number on which the ping service is exposed (see table above). TheDNS_PING
protocol will attempt to discern the port from the SRV records, if it can, otherwise it will default to 8888. A ping service which exposes the ping port must be defined. This service should be "headless" (ClusterIP=None) and must have the following:
- The port must be named for port discovery to work.
-
It must be annotated with
service.alpha.kubernetes.io/tolerate-unready-endpoints
set to"true"
. Omitting this annotation will result in each node forming their own "cluster of one" during startup, then merging their cluster into the other nodes' clusters after startup (as the other nodes are not detected until after they have started).
Example ping service for use with DNS_PING
kind: Service apiVersion: v1 spec: clusterIP: None ports: - name: ping port: 8888 selector: deploymentConfig: eap-app metadata: name: eap-app-ping annotations: service.alpha.kubernetes.io/tolerate-unready-endpoints: "true" description: "The JGroups ping port for clustering."
For KUBE_PING
to work, the following steps must be taken:
-
The
OPENSHIFT_KUBE_PING_NAMESPACE
environment variable must be set (see table above). If not set, the server will act as if it is a single-node cluster (a "cluster of one"). -
The
OPENSHIFT_KUBE_PING_LABELS
environment variables should be set (see table above). If not set, pods outside of your application (albeit in your namespace) will try to join. - Authorization must be granted to the service account the pod is running under to be allowed to access Kubernetes' REST api. This is done on the command line.
Example 4.1. Policy commands
Using the default service account in the myproject namespace:
oc policy add-role-to-user view system:serviceaccount:myproject:default -n myproject
Using the eap-service-account in the myproject namespace:
oc policy add-role-to-user view system:serviceaccount:myproject:eap-service-account -n myproject
4.3. OpenShift usage quick reference
To deploy, monitor, manage, and undeploy Red Hat Process Automation Manager templates on Red Hat OpenShift Container Platform, you can use the OpenShift Web console or the oc
command.
For instructions about using the Web console, see Create and build an image using the Web console.
For detailed instructions about using the oc
command, see CLI Reference. The following commands are likely to be required:
To create a project, use the following command:
$ oc new-project <project-name>
For more information, see Creating a project using the CLI.
To deploy a template (create an application from a template), use the following command:
$ oc new-app -f <template-name> -p <parameter>=<value> -p <parameter>=<value> ...
For more information, see Creating an application using the CLI.
To view a list of the active pods in the project, use the following command:
$ oc get pods
To view the current status of a pod, including information whether or not the pod deployment has completed and it is now in a running state, use the following command:
$ oc describe pod <pod-name>
You can also use the
oc describe
command to view the current status of other objects. For more information, see Application modification operations.To view the logs for a pod, use the following command:
$ oc logs <pod-name>
To view deployment logs, look up a
DeploymentConfig
name in the template reference and run the following command:$ oc logs -f dc/<deployment-config-name>
For more information, see Viewing deployment logs.
To view build logs, look up a
BuildConfig
name in the template reference and run the command:$ oc logs -f bc/<build-config-name>
For more information, see Accessing build logs.
To scale a pod in the application, look up a
DeploymentConfig
name in the template reference and run the command:$ oc scale dc/<deployment-config-name> --replicas=<number>
For more information, see Manual scaling.
To undeploy the application, you can delete the project by using the command:
$ oc delete project <project-name>
Alternatively, you can use the
oc delete
command to remove any part of the application, such as a pod or replication controller. For details, see Application modification CLI operation.