Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Why Java/Jakarta EE Developers are First-Class ...

Reza Rahman
October 27, 2020

Why Java/Jakarta EE Developers are First-Class Citizens on Azure

Java/Jakarta EE is an important technology to support on Azure. Enterprise Java is a heterogenous ecosystem with as much as a third of workloads still running on Jakarta EE application servers such as WebLogic, WebSphere/Open Liberty, JBoss EAP, WildFly, and Payara. This is particularly true for large enterprises that need to lift and shift their existing mission-critical, largely monolithic applications to Azure. Traditionally, Azure has not focused on strong support for such workloads but that has changed now, in a big way.

This session will outline the efforts to better support Jakarta EE workloads on Azure. We will touch on the history of the open-standard enterprise Java movement and why open standards are and remain important to enterprises. We will discuss what is possible now, what is coming soon and what is further afield. This includes services, tools and guidance to better support Jakarta EE users opting for virtual machines, Kubernetes, or PaaS. It also includes integration with Azure services such as the Azure Service Bus through Jakarta EE APIs such as JMS.

This is also an invaluable opportunity to hear from you and better understand how Microsoft can support you best.

Reza Rahman

October 27, 2020
Tweet

More Decks by Reza Rahman

Other Decks in Programming

Transcript

  1. Why Java/Jakarta EE Developers are First- Class Citizens on Azure

    Reza Rahman Principal Program Manager, Java on Azure [email protected]
  2. Agenda • Java/Jakarta EE ecosystem context • Java/Jakarta EE on

    Azure current capabilities • Java/Jakarta EE on Azure roadmap
  3. The Importance of Jakarta EE • Java/Jakarta EE is an

    important part of Java ecosystem and cloud • 30-40% of new and existing Java applications run on Jakarta EE application servers • WebLogic, WebSphere/Liberty, JBoss EAP/WildFly • 70-80% of Java applications depend on at least one or more Jakarta EE APIs • Tomcat, Hibernate, ActiveMQ, Jetty, Jersey, CXF, Spring, Quarkus, MicroProfile • Many of these applications are moving to the cloud now and in the near future 2023 Jakarta EE Developer Survey: https://outreach.eclipse.foundation/jakarta-ee-developer-survey-2023
  4. The Jakarta EE Transition JPE J2EE 1.2 Servlet, JSP, EJB,

    JMS J2EE 1.3 CMP, JCA J2EE 1.4 JAX-WS Java EE 5 EJB 3, JPA, JSF, JAXB, JAX-WS Java EE 7 WebSocket, JSON, Concurrency, Batch, pruning Java EE 8 HTTP/2, SSE, Security, pruning Java EE 6 Profiles, CDI, JAX-RS, Bean Validation Jakarta EE 8 Open-source governance Jakarta EE 9.x Namespace transition Jakarta EE 10 New features, updates Jakarta EE 11 New APIs, features, updates
  5. Virtual Machines • In addition to Windows, Azure has long

    supported Linux virtual machines essential for Jakarta EE customers • Azure Marketplace includes Jakarta EE focused virtual machine images and templates • More will be done to enhance the developer experience
  6. WebLogic on Azure VMs • Robust, up-to-date Azure Marketplace images

    and solutions for WebLogic • Linux, Oracle JDK, WebLogic • Jointly published, maintained and supported by Microsoft and Oracle • Bing your own license • Supports common use-cases such as base image, single instance and clusters • Supports key integrations such as App Gateway, Azure SQL, Azure PostgreSQL, Azure MySQL, Oracle DB, Oracle Coherence • Step-by-step guide for manual deployment as an alternative to Marketplace solution https://aka.ms/weblogic-on-azure
  7. WebSphere on Azure VMs • Robust, up-to-date Azure Marketplace solution

    for WebSphere traditional • Red Hat Linux, IBM J9, WebSphere • Jointly published, maintained and supported by Microsoft and IBM • Bring your own license, trial license • Supports common use-cases such as base image, single instance and clusters • Enables key integrations such as IBM HTTP Server, App Gateway, Azure SQL, IBM Db2, Oracle DB • Step-by-step guide for manual deployment as an alternative to Marketplace solution https://aka.ms/websphere-on-azure
  8. JBoss EAP on Azure VMs • Robust, up-to-date Azure Marketplace

    solutions for JBoss EAP • Red Hat Linux, OpenJDK, JBoss EAP • Jointly published, maintained and supported by Microsoft and Red Hat • Standalone and cluster configuration • Virtual machines and virtual machine scale sets • Bring your own subscription, pay as you go coming soon • Enables key integrations such as App Gateway, Azure SQL, Azure MySQL, Azure PostgreSQL, Oracle DB • Initial release available, more releases soon https://aka.ms/jboss-on-vms
  9. Containers • Azure provides best of breed support for Docker

    and Kubernetes through the Azure Kubernetes Service (AKS) and the Azure Container Registry (ACR) • Another option is Azure Container Apps (ACA) as an easier pathway of using Docker on Azure • Application server vendors provide Docker images, Helm charts, and Kubernetes Operators • WebLogic, WebSphere Liberty, Open Liberty • Guides and solution templates available for most application servers Azure Kubernetes Service Azure Container Apps Azure Container Registry
  10. WebLogic on AKS • WebLogic certified by Oracle and Microsoft

    to run well on AKS via WebLogic Kubernetes Operator • Robust Marketplace solution quickly provisions WebLogic on AKS • Operator, AKS cluster, Azure Container Registry (ACR), WebLogic Docker image • Jointly published, maintained and supported by Microsoft and Oracle, bring your own license • Supports key integrations such as Azure Load Balancer, App Gateway, Azure SQL, Azure PostgreSQL, Azure MySQL, Oracle DB, App Insights, Azure Files • Step-by-step guide for manual deployment as an alternative to Marketplace solution https://aka.ms/weblogic-on-aks
  11. Open/WebSphere Liberty on AKS • Open/WebSphere Liberty certified by IBM

    and Microsoft to run well on AKS via Operators • Robust Marketplace solution quickly provisions Liberty on AKS • Operators, AKS cluster, Azure Container Registry (ACR), Liberty/Docker image, sample app • Jointly published, maintained and supported by IBM and Microsoft • Bring your own license • Enables key integrations such as Azure App Gateway as Ingress Controller (AGIC) • Step-by-step guide for manual deployment as an alternative to Marketplace solution https://aka.ms/liberty-on-aks
  12. OpenShift • OpenShift provides uniform higher-level API over Kubernetes that

    allows using multiple cloud providers, moving between cloud providers, hybrid cloud deployments and moving from on- premise to cloud • Azure provides managed OpenShift offering through Red Hat partnership • Application server support for OpenShift generally builds upon Kubernetes support • Guides and solution templates available for some application servers
  13. Liberty on ARO • Liberty certified by IBM and Microsoft

    to run well on Azure Red Hat OpenShift (ARO) via Operators • Robust Marketplace solution quickly provisions Liberty on ARO • Operators, ARO cluster, secured project, Liberty/Docker image, sample application • Jointly published, maintained and supported by IBM and Microsoft • Bring your own license • Step-by-step guide for manual deployment as an alternative to Marketplace solution https://aka.ms/liberty-on-aro
  14. JBoss EAP on ARO • JBoss EAP certified by Red

    Hat and Microsoft to run well on Azure Red Hat OpenShift (ARO) via Operator and Helm Chart • Robust Marketplace solution quickly provisions JBoss EAP on ARO • Operator, ARO cluster, JBoss EAP deployment using Source-to-Image (S2I), sample application • Jointly published, maintained and supported by Red Hat and Microsoft • Bring your own subscription • Step-by-step guide for manual deployment using Helm Chart as an alternative to Marketplace solution https://aka.ms/jbosseap-on-aro
  15. Managed Services • Azure only top tier public cloud with

    managed Jakarta EE application server offering • JBoss EAP on App Service • Jointly developed and supported by Red Hat and Microsoft (integrated, pay-as-you-go commercial support for JBoss EAP) • Load-balanced, clustered, auto-deployed, auto-scaled, monitored, secure, update notifications • Deployment APIs and integrations with Maven, GitHub Actions, and popular IDEs • No console access, customization via CLI possible Azure App Service https://aka.ms/jboss-eap-app-service-ga-blog
  16. JMS Support in Azure Service Bus • JMS 2 support

    in Azure Service Bus via AMQP in public preview • Partial support has been possible for some time via Apache Qpid JMS, but Azure Service Bus now targeting full JMS 2 compatibility • Will go GA in a timely fashion • JCA adapters make it possible to integrate with Java EE application servers • Wide array of access options that also include full support for AMQP, Java client libraries (non-JMS), Spring/Boot libraries and Azure Functions integrations Service Bus Java Client Libraries Functions https://docs.microsoft.com/en-us/azure/service-bus-messaging/how- to-use-java-message-service-20 JMS
  17. Roadmap Solution Title Description ETA JBoss EAP on VMs PAYGO

    support PAYGO support in JBoss EAP on VMs solution templates Q1 2024 JBoss EAP on VMs JBoss EAP 8 JBoss EAP 8 and Java SE 21 support in base images, solution templates Q1 2024 Liberty on ACA How-to guide Getting started with Open Liberty on ACA Q1 2024 JBoss EAP on App Service License transfer Applying existing subscription entitlements to App Service Q3 2024 JBoss EAP on App Service Flexible tiers Support for more App Service tiers with lower capacity resource profiles Q2 2024 JBoss EAP on App Service Lower price Reducing PAYGO pricing Q2 2024 JBoss EAP on App Service Free tier Enable free tier for evaluation use cases Q2 2024 JBoss EAP on App Service JBoss EAP 8 JBoss EAP 8 and Java SE 21 support Q2 2024
  18. Summary • There is a team dedicated to Jakarta EE

    on Azure success • We are eager to engage and aid your migration case directly, if desired • Robust guides and tooling for migrating Jakarta EE applications to Azure using containers and virtual machines well in the works • WebLogic, WebSphere/Liberty, JBoss EAP • Managed Jakarta EE application server on top tier public cloud • JBoss EAP on App Service Please engage us! https://aka.ms/migration-survey
  19. Resources • Java EE, Jakarta EE and MicroProfile on Azure

    • https://learn.microsoft.com/en-us/azure/developer/java/ee/ • Announcement for JBoss EAP on App Service Clustering General Availability • https://azure.github.io/AppService/2023/09/28/JBoss-EAP-Clustering-on-Azure-App- Service.html • Announcement for JBoss EAP on Azure Red Hat OpenShift • https://techcommunity.microsoft.com/t5/apps-on-azure-blog/run-jboss-eap-on-azure-red- hat-openshift/ba-p/3812097 • Announcement for WebLogic on Azure Kubernetes Service • https://techcommunity.microsoft.com/t5/apps-on-azure/run-oracle-weblogic-server-on- azure-kubernetes-service/ba-p/2901524 • Announcement for WebSphere/Open Liberty on AKS/ARO • https://techcommunity.microsoft.com/t5/apps-on-azure-blog/run-websphere-open-liberty- on-openshift-and-kubernetes/ba-p/2910258