For a technology that the average person has probably never heard of, Kubernetes surged in popularity in 2017 with a particular group of IT pros who are working with container technology. Kubernetes is the orchestration engine that underlies how operations staff deploy and manage containers at scale. (For the low-down on containers, check out this article.)
In plain English, that means that as the number of containers grows then you need a tool to help launch and track them all. And because the idea of containers — and the so-called “microservices” model it enables — is to break down a complex monolithic app into much smaller and more manageable pieces, the number of containers tends to increase over time. Kubernetes has become the de facto standard tool for that job.
Kubernetes is actually an open source project, originally developed at Google, which is managed by the Cloud Native Computing Foundation (CNCF). Over the last year, we’ve seen some of the biggest names in tech flocking to the CNCF including AWS, Oracle, Microsoft and others, in large part because they want to have some influence over the development of Kubernetes.
As Kubernetes has gained momentum, it has become a platform for innovation and business ideas (as tends to happen with popular open source projects). Once you get beyond the early adopters, companies start to see opportunities to help customers who want to move to the new technology, but lack internal expertise. Companies can create commercial opportunities by hiding some of the underlying complexity associated with using a tool like this.
We are starting to see this in a big way with Kubernetes as companies begin to build products based on the open source that deliver a more a packaged approach that makes it easier to use and implement without having to learn all of the tool’s nuances.
To give you a sense of how quickly usage had increased, 451 Research did a container survey in 2015 and found just 10 percent of respondents were using some sort of container orchestration tool, whether Kubernetes or a competitor. Just two years later in a follow-up survey, 451 found that 71% of respondents were using Kubernetes to manage their containers.
Google’s Sam Ramji, who is VP of product management at Google (and was formerly CEO at Cloud Foundry Foundation), says it feels like an overnight sensation, but like many things it was a long time in the making. The direct antecedent of Kubernetes is a Google project called Borg. Ramji points out that Google was running containers in production for a decade before the company released Kubernetes as an open source project in 2014.
“There was almost a decade of container management at scale in Google. It wasn’t an experiment. It was code that ran the Google business at scale on Borg. Kubernetes is built from scratch based on those lessons,” Ramji said.
One of the big drivers behind using Kubernetes and cloud native tools in general is that companies are increasingly operating in a hybrid world where some of their resources are in the cloud and some on-prem in a data center. Tools like Kubernetes provide a framework for managing applications wherever they happen to live in a consistent way.
That consistency is one big reason for its popularity. If IT was forced to manage applications in two different places using two different tools (or sets of tools), it would (and does) create a confusing mess that makes it difficult to understand just what resources they are using and where the data is living at any particular moment.
One reason the Cloud Native Computing Foundation is called that (instead of the Kubernetes foundation), is that Google and other governing members recognize that Kubernetes is only part of the cloud native story. It may be a big part, but they want to encourage a much richer system of tools. By naming it more broadly, they are encouraging the open source community to build tools to expand the ability to manage infrastructure in a cloud native fashion.
If you look at the top 10 contributors to the project, it involves some major technology players, some of whom cross over into OpenStack, Linux and other open source projects.These include Google, Red Hat, CoreOS, FathomDB, ZTE Corporation, Huawei, IBM, Microsoft, Fujitsu, and Mirantis.
Dan Kohn, the CNCF’s executive director, says these companies have recognized that it’s easier to cooperate around the base technology and compete on higher level tools. “I would draw an analogy back to Linux. People describe Kubernetes as the ‘Linux of the cloud’. It’s not that all of these companies have decided to hold hands or are not competing for the same customers. But they have recognized that trying to compete in container orchestration doesn’t have a lot of value,” he said.
And many of these companies have been scooping up Kubernetes, container or cloud-native related companies over the last 12-18 months.
All of this adds up to a set of businesses being built around a tool that didn’t even reach 1.0 until July 2015 (although there were several 0.x releases prior to that). Since then, use has steadily climbed.
Earlier this year, the CNCF announced that 36 companies agreed to a Kubernetes certification standard — when was the last time 36 tech companies agreed to anything? They did this to prevent any individual member from creating a non-compatible or inconsistent version that would either behave differently than expected or would not be portable from one version to another. This is typically known as forking and the organization, recognizing the growing popularity of Kubernetes, wanted to ensure to the extent possible that, that didn’t happen.
Companies commercializing Kubernetes include Google itself,which offers a Google Kubernetes Engine (formerly Google Container Engine), Red Hat OpenShift, Pivotal’s Pivotal Container System (known under the confusing acronym PKS) and CoreOS Tectonic. AWS just jumped on the bandwagon too with Kubernetes support for its container service. Earlier this year Docker, the company that started the container craze, did the same.
Beyond finding ways to commercialize the core open source version of Kubernetes, there are a range of other tools being developed from host management and secure images to logging and monitoring to name but a few.
All of this points to a rich of set of tools being developed around an open source project that is barely two years old. This is what happens when you create an open system. Innovation tends to happen as people need tools applications for running that. We have seen it with Linux. We’ve seen it with Hadoop and OpenStack, and we are seeing it with Kubernetes — and this year it took off in a big way.