When Microsoft launched Azure Container Service back in April, it aimed to provide a place in Azure for those running container workloads with either Docker Swarm or Mesosphere DCOS.
One major feature Azure Container Service has lacked is support for Google's Kubernetes orchestration system, a technology that's become as synonymous with containers as Docker.
This week, that missing piece has been filled in, as Microsoft has announced a preview version of support for Kubernetes in Azure Container Service.
This change goes hand-in-hand with several other additions Microsoft is rolling out for Azure Container Service, although Kubernetes support is arguably the most significant feature of the bunch.
What's more, Microsoft is providing support beyond proprietary elements in Azure. The integration between Azure and Kubernetes is itself an open source project.
Corey Sanders, director of compute for Azure, explained in a phone call that Microsoft's Kubernetes integration spans two realms. First, Azure support has been added to the Kubernetes codebase. Sanders noted that much of this work was done not by Microsoft directly, but instead by Brendan Burns, a key figure in Kubernetes development.
The second realm is Azure Container Service Engine, the software on Azure's side that controls how orchestration projects work with Azure, such as Mesosphere's DC/OS, Docker Swarm, and now Kubernetes. Adding Kubernetes to this project "will [also] be part of the open sourcing that we plan to do with the service engine," said Sanders.
Microsoft's plan appears to be about more than offering "the only public cloud with a container service that offers a choice of open source orchestration technologies," as stated in a press release. It also fits in with the company's ongoing drive to brand itself as a friend to all things open source by being instrumental to key projects in the field.
Putting the "flow" back in workflow
Adding Kubernetes to Container Service is likely to appeal most to the operations side of an organization. But Microsoft's other big improvement to Container Service is aimed at developers, which is a set of integrations for Visual Studio, Visual Studio Code, and Visual Studio Team Services that allow continuous integration and deployment of Linux apps to the service.
Those who aren't already using Team Services, though, will not have to alter their workflows. Sanders said, "For many of the customers deploying using the Azure Container Service today, they're using tools like Git, GitHub, Jenkins, Maven, etc. to be able to manage their deployment and development experiences. And they just work, because we are simply using those open source solutions for our orchestrator; they integrate natively with all those tools."
For folks who are starting out with containers, Sanders said, Microsoft wants the experience to be as easy and painless as possible. "For folks who are already developing and deploying, that already have a toolchain they like, this is why Azure Container Service directly deploying as a fully open source solution will make a lot of sense."
With so much of Container Service becoming open source, it seems inevitable that it'll also become part of Azure Stack, Microsoft's private/hybrid cloud project eventually destined to have major parts of it also released as open source. Sanders confirmed it would happen: "We do have plans to make the Azure Container Service available there ... it'll effectively be the same engine that we'll be deploying in the public cloud, so it'll be the one we're open-sourcing."
But there's still no precise timetable for when it'll all take place.