Blog Post

Apps on Azure Blog
3 MIN READ

Clustering Support for JBoss EAP on Azure App Service (Public Preview)

Jason_Freeberg's avatar
Mar 15, 2022

Red Hat JBoss EAP on Azure App Service has been generally available since June 2021 and is jointly supported by Red Hat and Microsoft. Today, we are announcing the Public Preview of support for clustered deployments of JBoss EAP on App Service. This means customers can run Java EE, Jakarta EE and MicroProfile applications which use stateful session beans, distributed transactions, and similar features that require instance-to-instance communication or high availability. Previously, individual JBoss EAP instances on App Service could not communicate with one another; with this update all nodes can communicate over a virtual network. Read on to learn more!

 

Create a JBoss EAP cluster on App Service now and deploy a stateful application! 

 

 

 

About JBoss EAP Clustering

In JBoss EAP, clustering is a broad term which encompasses services such as load balancing between instances, failover, sharing session state, managing transactions, and more. There are two operating modes for EAP clusters: managed domain clusters and standalone clusters. The same capabilities are available in either operating mode, they are only different in how you manage the servers.

  • Managed Domain: In this operating mode, a domain controller (and one or more host controllers) is the central control plane for the cluster.
  • Standalone: In this operating mode, each member of the cluster has its own configuration.

 

Clustering on App Service

On App Service, JBoss EAP is always deployed in standalone mode and Azure acts as the central management plane for deploying code, scaling in/out, updating configuration, etc. When you create a JBoss EAP site and join it to a virtual network, JBoss EAP will automatically be booted with a clustered configuration profile and use the virtual network for node-to-node communication. JBoss EAP on App Service uses the FILE_PING JGroups discovery protocol to discover instances. With FILE_PING, a common storage account persists the cluster information like the cluster members, their identifiers, and their IP addresses. This is the same discovery mechanism used for JBoss EAP on virtual machines, but on App Service the storage account is managed for you. Clustering can be disabled, see the documentation for more information about clustering on App Service.

 

"Over the years EAP has proven itself as the a great choice for enterprise Java developers who are interested in speed, performance, scalability and standards conformance. As we continue to track EAP changes through Java EE to Eclipse Jakarta EE and even Eclipse MicroProfile it is great to see Microsoft and Red Hat collaborating to bring that same innovative platform to App Service.”

Mark Little, VP Engineering, Red Hat

 

Deploy a JBoss EAP Cluster on App Service

Ready to try clustering on App Service? Follow this quicktstart to deploy an ARM template with the necessary resources, deploy a stateful session application, and observe the session information being distributed across the cluster.

 

Talk to the Team

Want to learn more or provide feedback on this feature? Email us at jboss-on-app-service@microsoft.com. Planning to migrate Java EE/Jakarta EE applications to Azure? Fill out this intake form and we will get in touch with you: Guidance for Java EE Migration to Azure (qualtrics.com).

 

Resources

 

Updated Mar 15, 2022
Version 3.0
No CommentsBe the first to comment