It's always funny watching a new open source initiative gain traction -- all the more so when the initiative in question isn't yet firmly ensconced into the warm, inviting bosom of its own full-fledged foundation. This is certainly the case for Kubernetes.
Kubernetes (commonly referred to by the cool Silicon Valley kids as "k8s") is an open source container cluster manager that is a direct descendant of Google's infamous Borg, the system that Google uses to run its massive global infrastructure. Kubernetes was released less than a year ago as a kind of partnership between Google and the Linux Foundation.
That partnership formed the nucleus of the Cloud Native Computing Foundation, a nascent foundation that (as the name implies) is focused on helping further technologies that ease the pain of building web-scale and cloud-native products. Kubernetes' part in all of this is to automate the deployment, scaling and operation of containers across clusters of hosts.
If that sounds vaguely familiar, it is because Kubernetes is, if not directly competitive, somewhat analogous to a plethora of different products -- Docker's orchestration tools, Cloud Foundry, OpenShift and Mesosphere, among others. All of which means that if Kubernetes is to really get traction, it needs to accelerate the rate at which it builds out its technology.
Given this pressure, this week's announcement of Kubernetes 1.3 is an interesting stake in the ground. A key highlight from this release includes support for cross-cluster federated services that allow containers to run consistently within and outside their clusters. This will largely benefit customers who seek improved flexibility and portability across hybrid or multi-cloud environments.
The 1.3 release is a product of over 800 individual contributors and a claimed 223 person-years of effort. The foundation has 19 different special interest groups and has held over 100 meetups globally. Anyway, those are all interesting factoids (if somewhat vanity metrics), but the proof is, as they say, in the pudding. So what is the thrust of this Kubernetes release?
It's all about helping address production issues around containers at scale, and in hybrid environments -- bridging services across multiple clouds (either on-premises or off), support for multiple node types, and simplified cluster setup and deployment all speak to the real enterprise demand.
But at the same time, the developer-centricity hasn't gone -- setting up and deploying clusters from a laptop directly answers the speed and agility demands that developer-centric organizations have. The introduction of MiniKube, an easy way for developers to learn to use Kubernetes from their laptop with a local Kubernetes cluster, is a great on-ramp -- the fact that MiniKube is compatible with the full Kubernetes API is a logical progression.
The other big change is the support for stateful applications. Customers looking to use containers for stateful workloads (such as databases or key value stores) will find a new "PetSet" object with raft of alpha features, including:
- Permanent hostnames that persist across restarts
- Automatically provisioned persistent disks per container that live beyond the life of a container
- Unique identities in a group to allow for clustering and leader election
- Initialization containers which are critical for starting up clustered applications
Finally, Kubernetes is rolling out wide support for container standards including rkt, the Open Container Initiative (OCI) and the Container Network Interface (CNI). Given the rate at which the broader container marketplace is changing, and the increasing velocity with which new "standards" and products come to market, it is important for Kubernetes as a movement to roll out support for the various players as quickly as possible.
Version 1.3 supports emerging standards such as OCI and CNI natively. The foundation is also introducing rkt as an alternative container runtime in Kubernetes node, with a first-class integration between rkt and the kubelet. This allows Kubernetes users to take advantage of some of rkt's unique features.
An important release for Kubernetes, an exciting and fast-moving initiative. It is going to be fascinating to look back at the container space in a year or two and to see which initiatives really gained traction.
This article is published as part of the IDG Contributor Network. Want to Join?