Microsoft, VMware make Azure Spring Cloud GA
Azure Spring Cloud has reached general availability as a service that enables Spring Boot developers to build and run Java apps on Microsoft's Azure cloud platform.
Microsoft and VMware have made Azure Spring Cloud generally available for developers using the Spring framework to build applications.
Azure Spring Cloud is a managed service for Spring Boot applications. Spring Boot, from VMware's Pivotal, is an open source Java framework for building microservices. The companies introduced the generally available version of Azure Spring Cloud at the SpringOne 2020 virtual developer conference this week.
Microsoft operates the Azure Spring Cloud service with VMware's support, said Julia Liuson, corporate vice president of Microsoft's developer division.
"About five years ago, the words Java and Microsoft probably wouldn't show up in the same sentence in a nice way, but we've made a significant pivot in our strategy to help Java developers build and run cloud applications on Azure," she said.
Where the Java developers are
Microsoft is smart to target Spring developers, as Spring commands about 60% of the market for enterprise Java app development, according to a study conducted by Snyk, a London-based provider of cloud-native security software.
From Azure Spring Cloud, "Microsoft gets more Java workloads running on Azure," said Jeffrey Hammond, an analyst at Forrester Research. "In most Java surveys you see, Spring is the most popular framework. For Microsoft, whatever turns the Azure dials is all good: .NET, Java, Linux -- it's all good."
Microsoft and VMware worked on tools and frameworks in Azure Spring Cloud, including a service registry, client-side load balancing and circuit-breakers, said Ryan Morgan, vice president of software engineering at VMware. These features make deploying apps easier.
Other Azure Spring Cloud services include kpack, an open source Kubernetes-native build service that automates the creation and updating of container images on Kubernetes using Cloud Native Buildpacks. Kpack is the foundation of VMware's Tanzu Build Service. Azure Spring Cloud is built on top of Microsoft's Azure Kubernetes Service.
Many core Spring capabilities are useful to developers on Azure, Liuson said. "My personal favorite feature is distributed tracing, which is another super cool capability that allows developers to easily identify issues in their application and quickly troubleshoot and fix them," she said. "Depending on which developer you talk with, there is a wealth of capabilities."
In addition, Azure Spring Cloud is tied into popular Azure services, such as Azure Active Directory and Cosmos DB, Liuson said. Microsoft provides Spring Starters that help to automate configuration with these and other Azure services.
DevOps aficionados can automate their CI/CD pipelines by integrating with the DevOps tools of their choice, including Microsoft's own Azure DevOps and the open source Jenkins project.
VMware pulls in .NET devs
Under the leadership of CEO Satya Nadella, Microsoft has taken a much more open approach to the ecosystem, something Azure Spring Cloud reflects.
"Typically, when you're thinking about running Java, you didn't really think Azure was the place to do that, but that's all been changing with the work that we've done together, both in open source as well as on Azure Spring Cloud," Morgan said of his group's work with Microsoft. "We've really simplified the process of onboarding Java developers to be able to create and deploy applications on Azure."
VMware has SDKs for running Spring on other public cloud platforms. "[But with] this one … there is big commercial backing -- between both Microsoft and VMware," Morgan said. "Microsoft has always been a great partner for VMware. But as we looked at the community of Spring developers out there, the Microsoft customer was one where we didn't really have a lot of interaction."
Azure Spring Cloud could have appeal as it "makes it easier for Spring devs to focus on building apps as opposed to operating infrastructure," Hammond said. "Higher levels of abstraction improve enterprise developer productivity. It also gives Java devs at companies that have made strategic commitments to Microsoft's cloud an easy way to fall into line."