Another week, another foundation. At OSCON this week, Google announced not just that its container management project Kubernetes, had reached 1.0 status, but also that Google was donating it to the newly formed Cloud Native Computing Foundation. The CNCF’s goal is to provided interoperability among container management projects such as Kubernetes, Mesos, and Docker Swarm.
Kubernetes has had more than 14,000 commits from more than 400 contributes, and includes features such as DNS and load balancing, grouping of containers into pods for easier management, and scaling capabilities. In fact the announcement is a bit of an understatement. Pre-release versions of the software were already in wide usage, and at the time of the announcement, version 1.0 had been available for more than a week; 1.0.1 is already available on Github. Last week’s announcement that Google had signed on to OpenStack showed that it was in wide usage there as the underpinnings for OpenStack Magnum and a large part of the OpenStack Application Catalog.
So perhaps the bigger news is the formation of the Cloud Native Computing Foundation. The CNCF will be a collaborative project under the Linux Foundation and starts with 22 companies as founding members: AT&T, Box, Cisco, Cloud Foundry, CoreOS, Cycle Computing, Docker, eBay, Goldman Sachs, Google, Huawei, IBM, Intel, Joyent, Kismatic, Mesosphere, Red Hat, Switch, Twitter, Univa, VMware, and Weaveworks. Other organizations will reportedly be added in the coming weeks. “This new organization aims to advance the state-of-the-art for building cloud native applications and services,” said the Linux Foundation in a press release, “allowing developers to take full advantage of existing and to-be-developed open source technologies. Cloud native refers to applications or services that are container-packaged, dynamically scheduled and micro services-oriented.”
The scope here is intentionally broad, in contrast with the narrow scope of the Open Container Initiative (apparently renamed from the Open Container Project when someone pointed out that “OCP” already means “Open Compute Project”), which is meant simply to define a common standard for container runtimes.
Google has seeded the CNCF with Kubernetes, which will now be under the foundation’s control. Apache Mesos has also donated code that integrates Mesos with Kubernetes. That’s not to say that the intention of the foundation is to standardize container management around Kubernetes. After all there are other tools out there, such as Mesos and Docker Swarm, and some of them could eventually fall under the purview of the CNCF. The stated intent of the foundation is to provide integration between these tools, and to “to create these reference stacks that orchestration engines can use to interoperate,” according to Patrick Chanezon, a member of the technical staff at Docker and a force behind its participation in the CNCF. For example, he told SDXCentral, Docker Swarm might use Kubernetes as a scheduler.
Kubernetes is already being woven into the fabric of OpenStack. Mirantis helped to incorporate it into OpenStack Murano for deploying container-based applications, and Red Hat created the heat-kubernetes orchestration templates, which are also used by the OpenStack Magnum container orchestration project. IBM’s Angel Diaz and Jesse Proudman suggested that the CNCF and OpenStack “are two peas in the same datacenter pod,” providing a way for OpenStack to more easily integrate with container management technology.
All of that sounds cosy, doesn’t it? Well, maybe not so much.
On the one hand, there’s talk of multiple options. On the other hand, the CNCF is clearly focused on Kubernetes as a common architecture. Bryan Cantrill, CTO of cloud provider Joyent, and member of CNCF the technical committee, made a point of saying at the CNCF should tell users what to use — in contrast to OpenStack. “We shouldn’t be afraid to be opinionated,” he told NetworkWorld, which pointed out that he was speaking for himself, and not for the CNCF. “One of the biggest problems with OpenStack is that there is so little that companies agree on that there end up being so many decisions left up to the end user,” he says. He even goes on to call the CNCF the “anti-OpenStack”.
But it may not be that easy. Even before the announcement, there was reportedly trouble, with the first version of the CNCF announcement press release distributed to journalists mentioning Kubernetes, but not Docker, Cloud Foundry, or Red Hat (which is second only to Google in Kubernetes contributions). The final release includes all three — but not Kubernetes, which is relegated to being mentioned in quotes from the participants. Although sources reportedly claim that Docker (which has its own orchestration plans) insisted on the change, the company denies it, saying that participation was contingent on a letter of intent, and was simply a matter of timing.
And then there’s the more practical issue of agreement. While Cantrill might not be comfortable with OpenStack’s view that users can make up their own mind, it does, at least, prevent one company from being able to run the whole technological show. According to ZDNet, “While no one would go on record, a source close to Docker said, ‘First, we had to compromise on the container format, and now we had to trade down on container management.’” Getting all of these companies to agree on a single “opinionated” standard might be difficult.
Complicating matters is the fact that the two biggest cloud vendors in the industry, Amazon Web Services and Microsoft, have so far declined to join the CNCF, despite their membership in the OCI.
Still, everyone does have a stake in this working out, as fragmentation in the container world will only hold back adoption as companies worry about expending effort that eventually gets locked out of the ecosystem. CoreOS is sticking close, releasing Tectonic, its commercial distro of Kubernetes. Mesos has contributed code. Even Docker, which has its own plans, participated (though it made sure to use to opportunity to remind everyone of the OCI).
Although many are quick to criticize OpenStack and its massive (and growing) ecosystem, nobody has yet found a more successful alternative. “Ideally, this new foundation could bring some agreement to an area where many insiders have started to choose sides and thus permit fragmentation,” VentureBeat points out. “Should clear standards emerge, larger companies might feel more inclined to give containers a try, if they haven’t already. Then again, as more vendors get involved, container-based computing could start to lose the excitement that has built up around it in the past couple of years.”