Cloud provider Microsoft has joined rival Google to bring support for the Kubernetes open-source project on its Azure platform. The project is aimed at allowing application and workload portability and letting users avoid supplier lock-in.

Kubernetes, currently in pre-production beta, is an open-source implementation of container cluster management. It was introduced by Google in June, when it declared support for Docker – the open-source program that enables a Linux application and its dependencies to be packaged as a container. Docker is Linux OS-agnostic, which means even Mac and Windows users are able to run Docker by installing a small Linux kernel on their infrastructure.

Google launched several initiatives tied to Docker last month, including support for its images in Google App Engine and the introduction of open-source container manager Kubernetes on GitHub.

Microsoft is now supporting Google's Kubernetes project as part of its efforts to give enterprise cloud customers “more open and community-driven choices,” said Jason Zander, Microsoft Azure corporate vice-president.

“At Microsoft, we recognise the importance of ongoing engagement with developers, partners and customers working in mixed IT environments,” he said.

Microsoft Open Technologies’ contribution to this GitHub project will enable Kubernetes capabilities on top of Azure Linux Virtual Machines. Microsoft’s efforts will be aimed at enabling Azure customers to build multi-cloud products.

Its work on Kubernetes will enable developers to transparently deploy heterogeneous groups of compute containers on top of Azure Linux Virtual Machines, said Jean Paoli, one of the inventors of XML, but now the president of Microsoft Open Technologies which aims to create interoperability between Microsoft and non-Microsoft products.

“This will offer additional options to our developers who want to use Linux containers and manage them with Kubernetes,” he said.

together we will ensure that Kubernetes is a strong and open container management framework for any application and in any environment, whether in a private, public or hybrid cloud. Urs Hölzle, Google

“In addition, it provides a set of deploy scripts that will automatically set up Azure Linux VM [virtual machine] clusters, configure Kubernetes, Docker and all the required dependencies for a Kubernetes cluster.”

Contributing to Kubernetes on GitHub is one Microsoft initiative towards open standards. It is also starting engineering work to support Docker’s project libswarm – a toolkit and library that aims to define a standard interface to build distributed systems on top of Docker.

“It abstracts your various host and infrastructure providers in an effort to avoid lock-in to a particular underlying platform,” Paoli said. “By enabling libswarm on Azure, developers can build against and use libswarm, knowing that it is an interface the Docker community is behind.

According to Paoli, the initiatives are useful for cloud pioneers who are embracing container technologies and want to move beyond very simple deployments to more complex topologies.

“We are making steady progress in openness, as also evidenced by recent announcements on Azure support for Puppet, Chef and other open-source technologies,” Zander added.

Other cloud providers joining Google in the Kubernetes project include IBM, Red Hat and Docker.

“Each company brings unique strengths, and together we will ensure that Kubernetes is a strong and open container management framework for any application and in any environment, whether in a private, public or hybrid cloud,” said Urs Hölzle, senior vice-president for Google’s cloud platform.