Chapter 1. What is Red Hat JBoss Enterprise Application Platform
Red Hat JBoss Enterprise Application Platform 8.0 Beta (JBoss EAP) is a middleware platform built on open standards and compliant with the Jakarta EE 10 specification. It provides preconfigured options for features such as high-availability clustering, messaging, and distributed caching. It includes a modular structure that allows you to enable services only when required, which results in improved startup speed.
The web-based management console and management command line interface (CLI) make editing XML configuration files unnecessary and add the ability to script and automate tasks. In addition, JBoss EAP includes APIs and development frameworks that allow you to quickly develop, deploy, and run secure and scalable Jakarta EE applications. JBoss EAP 8.0 Beta is a Jakarta EE 10 compatible implementation for both Web Profile and Full Platform specifications.
1.1. How does JBoss EAP work on OpenShift? Copy linkLink copied to clipboard!
Red Hat offers container images to build and run application images with JBoss EAP on OpenShift.
Red Hat no longer offers images that contain JBoss EAP.
1.2. Comparison: JBoss EAP and JBoss EAP for OpenShift Copy linkLink copied to clipboard!
There are some notable differences when comparing the JBoss EAP product with the JBoss EAP for OpenShift image. The following table describes these differences and notes which features are included or supported in the current version of JBoss EAP for OpenShift.
| JBoss EAP Feature | Status in JBoss EAP for OpenShift | Description |
|---|---|---|
| JBoss EAP management console | Not included | The JBoss EAP management console is not included in this release of JBoss EAP for OpenShift. |
| JBoss EAP management CLI | Not recommended | The JBoss EAP management CLI is not recommended for use with JBoss EAP running in a containerized environment. Any configuration changes made using the management CLI in a running container will be lost when the container restarts. The management CLI is accessible from within a pod for troubleshooting purposes. |
| Managed domain | Not supported | Although a JBoss EAP managed domain is not supported, creation and distribution of applications are managed in the containers on OpenShift. |
| Default root page | Disabled |
The default root page is disabled, but you can deploy your own application to the root context as |
| Remote messaging | Supported | Red Hat AMQ for inter-pod and remote messaging is supported. ActiveMQ Artemis is only supported for messaging within a single pod with JBoss EAP instances and is only enabled when Red Hat AMQ is absent. |
| Transaction recovery | Supported | The EAP operator is the only tested and supported option of transaction recovery in OpenShift 4. For more information about recovering transactions using the EAP operator, see EAP Operator for Safe Transaction Recovery. |
1.3. Version compatibility and support Copy linkLink copied to clipboard!
JBoss EAP for OpenShift provides images for OpenJDK 11 and OpenJDK 17.
Two variants of each image are available: an S2I builder image and a runtime image. The S2I Builder image contains all the required tools that will enable you provision a complete JBoss EAP Server during S2I build. The runtime image contains dependencies needed to run JBoss EAP but does not contain a server. The server is installed in the runtime image during a chained build.
The following modifications were applied to the images in JBoss EAP 8.0 Beta for OpenShift.
- S2I builder image does not contain an installed JBoss EAP server and installs the JBoss EAP 8.0 Beta server during S2I build.
-
Configure the eap-maven-plugin in the application
pomfile during S2I build. -
Use existing JBoss EAP 7.4 application without any changes by setting
GALLEON_PROVISION_FEATURE_PACKS,GALLEON_PROVISION_LAYERS, andGALLEON_PROVISION_CHANNELSenvironment variables during S2I build. The JBoss EAP provisioned server during S2I build contains a
standalone.xmlserver configuration file customized for OpenShift.ImportantThe sever contains a
standalone.xmlconfiguration file, not thestandalone-openshift.xmlconfiguration file that was used with JBoss EAP 7.4.-
Inside the image,
JBOSS_HOMEvalue is/opt/server. The value ofJBOSS_HOMEwas/opt/eapfor JBoss EAP 7.4. -
Jolokia agentis no longer present in the image. -
Prometheus agentis not installed. -
Python probesare no more present. -
SSOadapters are no longer present in the image. -
activemq.raris no more present.
The following discovery mechanism protocols were deprecated and are replaced by other protocols:
-
The
openshift.DNS_PINGprotocol was deprecated and is replaced with thedns.DNS_PINGprotocol. If you referenced theopenshift.DNS_PINGprotocol in acustomized standalone.xmlfile, replace the protocol with thedns.DNS_PINGprotocol. -
The
openshift.KUBE_PINGdiscovery mechanism protocol was deprecated and is replaced with thekubernetes.KUBE_PINGprotocol.
1.3.1. OpenShift 4.x support Copy linkLink copied to clipboard!
Changes in OpenShift 4.1 affect access to Jolokia, and the Open Java Console is no longer available in the OpenShift 4.x web console.
In previous releases of OpenShift, certain kube-apiserver proxied requests were authenticated and passed through to the cluster. This behavior is now considered insecure, and so, accessing Jolokia in this manner is no longer supported.
Due to changes in codebase for the OpenShift console, the link to the Open Java Console is no longer available.
1.3.2. IBM Z Support Copy linkLink copied to clipboard!
The s390x variant of libartemis-native is not included in the image. Thus, any settings related to AIO will not be taken into account.
-
journal-type: Setting thejournal-typetoASYNCIOhas no effect. The value of this attribute defaults toNIOat runtime. -
journal-max-io: This attribute has no effect. -
journal-store-enable-async-io: This attribute has no effect.
1.3.2.1. Upgrades from JBoss EAP 7.4 to JBoss EAP 8.0 on OpenShift Copy linkLink copied to clipboard!
The file standalone.xml installed with JBoss EAP 7.4 on OpenShift is not compatible with JBoss EAP 8.0 and later. You must modify and rename the file to standalone.xml before starting a JBoss EAP 8.0 or later container for OpenShift.
1.3.3. Deployment options Copy linkLink copied to clipboard!
You can deploy the JBoss EAP Java applications on OpenShift using the EAP operator, a JBoss EAP-specific controller that extends the OpenShift API to create, configure, and manage instances of complex stateful applications on behalf of an OpenShift user.