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

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

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]

    View full-size slide

  2. Agenda • Java/Jakarta EE ecosystem context
    • Java/Jakarta EE on Azure current
    capabilities
    • Java/Jakarta EE on Azure roadmap

    View full-size slide

  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

    View full-size slide

  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

    View full-size slide

  5. An Evolving Ecosystem

    View full-size slide

  6. Current State

    View full-size slide

  7. Mapping the Pathways
    Virtual
    Machines
    Containers
    Managed
    Services

    View full-size slide

  8. 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

    View full-size slide

  9. 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

    View full-size slide

  10. 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

    View full-size slide

  11. 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

    View full-size slide

  12. 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

    View full-size slide

  13. 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

    View full-size slide

  14. 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

    View full-size slide

  15. 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

    View full-size slide

  16. 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

    View full-size slide

  17. 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

    View full-size slide

  18. 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

    View full-size slide

  19. 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

    View full-size slide

  20. https://github.com/m-reza-rahman/azure-cafe

    View full-size slide

  21. Capabilities and Progress
    Virtual
    Machines
    Containers
    Managed
    Services
    Integrations

    View full-size slide

  22. 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

    View full-size slide

  23. 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

    View full-size slide

  24. 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

    View full-size slide

  25. © Copyright Microsoft Corporation. All rights reserved.

    View full-size slide