One of the great aspects of the Docker community is its ever-growing ecosystem of tools, technologies, and services built on the Docker platform. Today, we’re excited to join with Google to highlight the momentum of their Docker orchestration and workload scheduling tool, Kubernetes. Based on tools Google uses internally to run large workloads like Gmail and Search, Kubernetes was first announced at last month’s DockerCon, the Docker community’s inaugural conference.
Orchestration is an important category of tooling for distributed applications built on the Docker platform, and Kubernetes joins Mesos, Consul, Fleet, Geard, ZooKeeper, and others, each addressing a particular use case or niche. In Kubernetes’ case, it coordinates Docker workloads so as to take advantage of Google Compute’s underlying operations and infrastructure. Given Google’s expertise in large scale operations, Kubernetes is a welcome addition to this tool category.
This proliferation of orchestration tools puts the user in the position of having to evaluate the field and select one. And yet as each user’s requirements are different and each tool has its strengths, the decision is a complex one: Should they prioritize for service discovery? Clustering? Composition? Workload scheduling? And what new requirements will the user face as their app needs evolve? In a world where the technology is iterating and improving rapidly, wouldn’t it be awesome if the user didn’t get locked-in to one vendor’s solution?
Thanks to libswarm, a new community project announced at DockerCon in Solomon’s keynote address, now they won’t. libswarm is a standard interface to combine and organize services in a distributed system. It provides the building blocks or primitives for orchestration services like composition, clustering, service registration and discovery, and more. Much like the “write once, run anywhere” promise for apps in Docker containers, libswarm’s “define once, run anywhere” promise for distributed systems has inspired the community, and we’re already seeing community-contributed libswarm adapters for Mesos, Geard, Fleet, AWS EC2, Google Compute, Rackspace, Microsoft Azure, Tutum, Orchard, and others. While libswarm and Kubernetes don’t work together yet, we are excited to work with Google to make this a reality. This groundswell of support of libswarm’s building blocks provides users with interoperability across orchestration tools and service providers, freeing users from lock-in and enabling multi-cloud, multi-environment deployments and workload migration.
There’s a brave new world ahead for distributed systems enabled by the libswarm community, and we’re excited to partner with Google and others on this journey. Watch this space!
Dockerize early and often,
– The Docker Team