Skip to content

Latest commit

 

History

History
326 lines (240 loc) · 18.5 KB

processserver64-amq-mysql-s2i.adoc

File metadata and controls

326 lines (240 loc) · 18.5 KB

processserver64-amq-mysql-s2i

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

KIE_CONTAINER_DEPLOYMENT

KIE_CONTAINER_DEPLOYMENT

The KIE Container deployment configuration in format: containerId=groupId:artifactId:version|c2=g2:a2:v2

processserver-library=org.openshift.quickstarts:processserver-library:1.4.0.Final

False

KIE_SERVER_PROTOCOL

KIE_SERVER_PROTOCOL

The protocol to access the KIE Server REST interface.

https

False

KIE_SERVER_PORT

KIE_SERVER_PORT

The port to access the KIE Server REST interface.

8443

False

KIE_SERVER_USER

KIE_SERVER_USER

The user name to access the KIE Server REST or JMS interface.

kieserver

False

KIE_SERVER_PASSWORD

KIE_SERVER_PASSWORD

The password to access the KIE Server REST or JMS interface. Must be different than username; must not be root, admin, or administrator; must contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), and 1 non-alphanumeric symbol(s).

 — 

False

KIE_SERVER_DOMAIN

KIE_SERVER_DOMAIN

JAAS LoginContext domain that shall be used to authenticate users when using JMS.

other

False

KIE_SERVER_JMS_QUEUES_REQUEST

KIE_SERVER_JMS_QUEUES_REQUEST

JNDI name of request queue for JMS.

queue/KIE.SERVER.REQUEST

False

KIE_SERVER_JMS_QUEUES_RESPONSE

KIE_SERVER_JMS_QUEUES_RESPONSE

JNDI name of response queue for JMS.

queue/KIE.SERVER.RESPONSE

False

KIE_SERVER_EXECUTOR_JMS_QUEUE

KIE_SERVER_EXECUTOR_JMS_QUEUE

JNDI name of executor queue for JMS.

queue/KIE.SERVER.EXECUTOR

False

KIE_SERVER_PERSISTENCE_DIALECT

KIE_SERVER_PERSISTENCE_DIALECT

Hibernate persistence dialect.

org.hibernate.dialect.MySQL5Dialect

False

APPLICATION_NAME

 — 

The name for the application.

kie-app

True

HOSTNAME_HTTP

 — 

Custom hostname for http service route. Leave blank for default hostname, e.g.: <application-name>-<project>.<default-domain-suffix>

 — 

False

HOSTNAME_HTTPS

 — 

Custom hostname for https service route. Leave blank for default hostname, e.g.: secure-<application-name>-<project>.<default-domain-suffix>

 — 

False

SOURCE_REPOSITORY_URL

 — 

Git source URI for application

https://github.com/jboss-openshift/openshift-quickstarts

True

SOURCE_REPOSITORY_REF

 — 

Git branch/tag reference

1.4

False

CONTEXT_DIR

 — 

Path within Git project to build; empty for root project directory.

processserver/library

False

DB_JNDI

DB_JNDI

Database JNDI name used by application to resolve the datasource, e.g. java:/jboss/datasources/ExampleDS

java:jboss/datasources/ExampleDS

False

DB_DATABASE

DB_DATABASE

Database name

root

True

MQ_JNDI

MQ_JNDI

JNDI name for connection factory used by applications to connect to the broker, e.g. java:/JmsXA

java:/JmsXA

False

MQ_PROTOCOL

MQ_PROTOCOL

Broker protocols to configure, separated by commas. Allowed values are: openwire, amqp, stomp and mqtt. Only openwire is supported by EAP.

openwire

False

MQ_QUEUES

MQ_QUEUES

Queue names, separated by commas. These queues will be automatically created when the broker starts. Also, they will be made accessible as JNDI resources in EAP.

KIE.SERVER.REQUEST,KIE.SERVER.RESPONSE,KIE.SERVER.EXECUTOR

False

MQ_TOPICS

MQ_TOPICS

Topic names, separated by commas. These topics will be automatically created when the broker starts. Also, they will be made accessible as JNDI resources in EAP.

 — 

False

HTTPS_SECRET

 — 

The name of the secret containing the keystore file

processserver-app-secret

False

HTTPS_KEYSTORE

HTTPS_KEYSTORE

The name of the keystore file within the secret

keystore.jks

False

HTTPS_NAME

HTTPS_NAME

The name associated with the server certificate

jboss

False

HTTPS_PASSWORD

HTTPS_PASSWORD

The password for the keystore and certificate

mykeystorepass

False

DB_USERNAME

DB_USERNAME

Database user name

 — 

True

DB_PASSWORD

DB_PASSWORD

Database user password

 — 

True

DB_MIN_POOL_SIZE

DB_MIN_POOL_SIZE

Sets xa-pool/min-pool-size for the configured datasource.

 — 

False

DB_MAX_POOL_SIZE

DB_MAX_POOL_SIZE

Sets xa-pool/max-pool-size for the configured datasource.

 — 

False

DB_TX_ISOLATION

DB_TX_ISOLATION

Sets transaction-isolation for the configured datasource.

 — 

False

MYSQL_LOWER_CASE_TABLE_NAMES

MYSQL_LOWER_CASE_TABLE_NAMES

Sets how the table names are stored and compared.

 — 

False

MYSQL_MAX_CONNECTIONS

MYSQL_MAX_CONNECTIONS

The maximum permitted number of simultaneous client connections.

 — 

False

MYSQL_FT_MIN_WORD_LEN

MYSQL_FT_MIN_WORD_LEN

The minimum length of the word to be included in a FULLTEXT index.

 — 

False

MYSQL_FT_MAX_WORD_LEN

MYSQL_FT_MAX_WORD_LEN

The maximum length of the word to be included in a FULLTEXT index.

 — 

False

MYSQL_AIO

MYSQL_AIO

Controls the innodb_use_native_aio setting value if the native AIO is broken.

 — 

False

MQ_USERNAME

MQ_USERNAME

User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.

 — 

False

MQ_PASSWORD

MQ_PASSWORD

Password for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.

 — 

False

AMQ_MESH_DISCOVERY_TYPE

AMQ_MESH_DISCOVERY_TYPE

The discovery agent type to use for discovering mesh endpoints. 'dns' will use OpenShift’s DNS service to resolve endpoints. 'kube' will use Kubernetes REST API to resolve service endpoints. If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.

dns

False

AMQ_STORAGE_USAGE_LIMIT

AMQ_STORAGE_USAGE_LIMIT

The A-MQ storage usage limit

100 gb

False

GITHUB_WEBHOOK_SECRET

 — 

GitHub trigger secret

 — 

True

GENERIC_WEBHOOK_SECRET

 — 

Generic build trigger secret

 — 

True

IMAGE_STREAM_NAMESPACE

 — 

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

MAVEN_MIRROR_URL

 — 

Maven mirror to use for S2I builds

 — 

False

ARTIFACT_DIR

 — 

List of directories from which archives will be copied into the deployment folder. If unspecified, all archives in /target will be copied.

 — 

False

MYSQL_IMAGE_STREAM_TAG

 — 

The tag to use for the "mysql" image stream. Typically, this aligns with the major.minor version of MySQL.

5.7

True

MEMORY_LIMIT

 — 

Container memory limit

1Gi

False

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.

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

${APPLICATION_NAME}

8080

 — 

The web server’s http port.

secure-${APPLICATION_NAME}

8443

 — 

The web server’s https port.

${APPLICATION_NAME}-mysql

3306

 — 

The database server’s port.

${APPLICATION_NAME}-amq-tcp

61616

 — 

The broker’s OpenWire port.

${APPLICATION_NAME}-amq-mesh

61616

mesh

Supports node discovery for mesh formation.

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

${APPLICATION_NAME}-http

none

${HOSTNAME_HTTP}

${APPLICATION_NAME}-https

TLS passthrough

${HOSTNAME_HTTPS}

Build Configurations

A buildConfig describes a single build definition and a set of triggers for when a new build should be created. A buildConfig is a REST object, which can be used in a POST to the API server to create a new instance. Refer to the Openshift documentation for more information.

S2I image link Build output BuildTriggers and Settings

jboss-processserver64-openshift:1.6

jboss-processserver64-openshift

${APPLICATION_NAME}:latest

GitHub, Generic, ImageChange, ConfigChange

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.

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

${APPLICATION_NAME}

ImageChange

${APPLICATION_NAME}-mysql

ImageChange

${APPLICATION_NAME}-amq

ImageChange

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

${APPLICATION_NAME}

1

${APPLICATION_NAME}-mysql

1

${APPLICATION_NAME}-amq

1

Pod Template

Image
Deployment Image

${APPLICATION_NAME}

${APPLICATION_NAME}

${APPLICATION_NAME}-mysql

mysql

${APPLICATION_NAME}-amq

jboss-amq-63

Readiness Probe
${APPLICATION_NAME}
/bin/bash -c /opt/eap/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'
${APPLICATION_NAME}-amq
/bin/bash -c /opt/amq/bin/readinessProbe.sh
Liveness Probe
${APPLICATION_NAME}
/bin/bash -c /opt/eap/bin/livenessProbe.sh
${APPLICATION_NAME}-mysql
tcpSocket on port 3306
Exposed Ports
Deployments Name Port Protocol

${APPLICATION_NAME}

jolokia

8778

TCP

http

8080

TCP

https

8443

TCP

${APPLICATION_NAME}-mysql

 — 

3306

TCP

${APPLICATION_NAME}-amq

jolokia

8778

TCP

amqp

5672

TCP

amqp-ssl

5671

TCP

mqtt

1883

TCP

stomp

61613

TCP

stomp-ssl

61612

TCP

tcp

61616

TCP

tcp-ssl

61617

TCP

Image Environment Variables
Deployment Variable name Description Example value

${APPLICATION_NAME}

KIE_CONTAINER_DEPLOYMENT

The KIE Container deployment configuration in format: containerId=groupId:artifactId:version|c2=g2:a2:v2

${KIE_CONTAINER_DEPLOYMENT}

KIE_SERVER_PROTOCOL

The protocol to access the KIE Server REST interface.

${KIE_SERVER_PROTOCOL}

KIE_SERVER_PORT

The port to access the KIE Server REST interface.

${KIE_SERVER_PORT}

KIE_SERVER_USER

The user name to access the KIE Server REST or JMS interface.

${KIE_SERVER_USER}

KIE_SERVER_PASSWORD

The password to access the KIE Server REST or JMS interface. Must be different than username; must not be root, admin, or administrator; must contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), and 1 non-alphanumeric symbol(s).

${KIE_SERVER_PASSWORD}

KIE_SERVER_DOMAIN

JAAS LoginContext domain that shall be used to authenticate users when using JMS.

${KIE_SERVER_DOMAIN}

KIE_SERVER_JMS_QUEUES_REQUEST

JNDI name of request queue for JMS.

${KIE_SERVER_JMS_QUEUES_REQUEST}

KIE_SERVER_JMS_QUEUES_RESPONSE

JNDI name of response queue for JMS.

${KIE_SERVER_JMS_QUEUES_RESPONSE}

KIE_SERVER_EXECUTOR_JMS_QUEUE

JNDI name of executor queue for JMS.

${KIE_SERVER_EXECUTOR_JMS_QUEUE}

MQ_SERVICE_PREFIX_MAPPING

 — 

${APPLICATION_NAME}-amq=MQ

MQ_JNDI

JNDI name for connection factory used by applications to connect to the broker, e.g. java:/JmsXA

${MQ_JNDI}

MQ_USERNAME

User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.

${MQ_USERNAME}

MQ_PASSWORD

Password for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.

${MQ_PASSWORD}

MQ_PROTOCOL

Broker protocols to configure, separated by commas. Allowed values are: openwire, amqp, stomp and mqtt. Only openwire is supported by EAP.

tcp

MQ_QUEUES

Queue names, separated by commas. These queues will be automatically created when the broker starts. Also, they will be made accessible as JNDI resources in EAP.

${MQ_QUEUES}

MQ_TOPICS

Topic names, separated by commas. These topics will be automatically created when the broker starts. Also, they will be made accessible as JNDI resources in EAP.

${MQ_TOPICS}

KIE_SERVER_PERSISTENCE_DIALECT

Hibernate persistence dialect.

${KIE_SERVER_PERSISTENCE_DIALECT}

DB_SERVICE_PREFIX_MAPPING

 — 

${APPLICATION_NAME}-mysql=DB

DB_JNDI

Database JNDI name used by application to resolve the datasource, e.g. java:/jboss/datasources/ExampleDS

${DB_JNDI}

DB_USERNAME

Database user name

${DB_USERNAME}

DB_PASSWORD

Database user password

${DB_PASSWORD}

DB_DATABASE

Database name

${DB_DATABASE}

TX_DATABASE_PREFIX_MAPPING

 — 

${APPLICATION_NAME}-mysql=DB

DB_MIN_POOL_SIZE

Sets xa-pool/min-pool-size for the configured datasource.

${DB_MIN_POOL_SIZE}

DB_MAX_POOL_SIZE

Sets xa-pool/max-pool-size for the configured datasource.

${DB_MAX_POOL_SIZE}

DB_TX_ISOLATION

Sets transaction-isolation for the configured datasource.

${DB_TX_ISOLATION}

HTTPS_KEYSTORE_DIR

 — 

/etc/processserver-secret-volume

HTTPS_KEYSTORE

The name of the keystore file within the secret

${HTTPS_KEYSTORE}

HTTPS_NAME

The name associated with the server certificate

${HTTPS_NAME}

HTTPS_PASSWORD

The password for the keystore and certificate

${HTTPS_PASSWORD}

${APPLICATION_NAME}-mysql

MYSQL_USER

Database user name

${DB_USERNAME}

MYSQL_PASSWORD

Database user password

${DB_PASSWORD}

MYSQL_DATABASE

Database name

${DB_DATABASE}

MYSQL_LOWER_CASE_TABLE_NAMES

Sets how the table names are stored and compared.

${MYSQL_LOWER_CASE_TABLE_NAMES}

MYSQL_MAX_CONNECTIONS

The maximum permitted number of simultaneous client connections.

${MYSQL_MAX_CONNECTIONS}

MYSQL_FT_MIN_WORD_LEN

The minimum length of the word to be included in a FULLTEXT index.

${MYSQL_FT_MIN_WORD_LEN}

MYSQL_FT_MAX_WORD_LEN

The maximum length of the word to be included in a FULLTEXT index.

${MYSQL_FT_MAX_WORD_LEN}

MYSQL_AIO

Controls the innodb_use_native_aio setting value if the native AIO is broken.

${MYSQL_AIO}

${APPLICATION_NAME}-amq

AMQ_USER

User name for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.

${MQ_USERNAME}

AMQ_PASSWORD

Password for standard broker user. It is required for connecting to the broker. If left empty, it will be generated.

${MQ_PASSWORD}

AMQ_TRANSPORTS

Broker protocols to configure, separated by commas. Allowed values are: openwire, amqp, stomp and mqtt. Only openwire is supported by EAP.

${MQ_PROTOCOL}

AMQ_MESH_DISCOVERY_TYPE

The discovery agent type to use for discovering mesh endpoints. 'dns' will use OpenShift’s DNS service to resolve endpoints. 'kube' will use Kubernetes REST API to resolve service endpoints. If using 'kube' the service account for the pod must have the 'view' role, which can be added via 'oc policy add-role-to-user view system:serviceaccount:<namespace>:default' where <namespace> is the project namespace.

${AMQ_MESH_DISCOVERY_TYPE}

AMQ_MESH_SERVICE_NAME

 — 

${APPLICATION_NAME}-amq-mesh

AMQ_MESH_SERVICE_NAMESPACE

 — 

 — 

AMQ_STORAGE_USAGE_LIMIT

The A-MQ storage usage limit

${AMQ_STORAGE_USAGE_LIMIT}

Volumes
Deployment Name mountPath Purpose readOnly

${APPLICATION_NAME}

processserver-keystore-volume

/etc/processserver-secret-volume

ssl certs

True

${APPLICATION_NAME}-mysql

${APPLICATION_NAME}-data

/var/lib/mysql/data

 — 

false

External Dependencies