PORTLAND, Ore.-- On July 21 at OSCon, Google announced that Kubernetes, its open source container deployment and management tool, was ready for the big time -- general use in production environments -- by releasing Kubernetes 1.0.
Chances are many of you don't know Kubernetes, but the odds are even greater that you use it every day. That's because every time you run a Google program -- Search, Gmail, Google Docs, whatever -- you are running it in Google's own container technology, lmctfy (Let Me Contain That For You). The program that created and managed these billions of containers is Kubernetes.
Sounds pretty darn production ready right? Well, yes, but the search giant wanted Kubernetes to work on more than just Google's gigantic, Linux-powered data centers. They wanted it to work on other platforms, on other cloud platforms, and even with other operating systems.
Far earlier, in July 2014, Google partnered with Microsoft to integrate Kubernetes with Azure. Earlier this year, Google partnered with Mesosphere to bring Kubernetes to Mesosphere's Datacenter Operating System (DCOS). This, in turn, is based on the open-source Apache Mesos cluster manager and will help bring Docker containers to DCOS.
You get the idea. Quietly, and noticed only by those of us who pay close attention to the esoteric world of containers and clouds, Kubernetes has made its way into practically every cloud. The only notable exception is Amazon Web Services. Amazon will battle it out with Kubernetes with its own Amazon EC2 Container Service (ECS)
Kubernetes is not just Google's project. Kubernetes has become one of Google's most popular and successful open source projects. As it's being released, the program has seen over 14,000 commits from more than 400 contributors. These code changes have been made by developers from Red Hat, CoreOS, IBM, Intel, Microsoft, VMware, and many others. In addition, Kubernetes is already being used in production by major companies such as Box, eBay, and Shippable.
Here's the new technical features you'll find in Kubernetes 1.0:
App Services, Network, Storage
● Includes core functionality critical for deploying and managing workloads in production, including DNS, load balancing, scaling, application-level health checking, and service accounts
● Stateful application support with a wide variety of local and network based volumes, such as Google Compute Engine persistent disk, AWS Elastic Block Store, and NFS
● Deploy your containers in pods, a grouping of closely related containers, which allow for easy updates and rollback
● Inspect and debug your application with command execution, port forwarding, log collection, and resource monitoring via the command line interface and web-based interface.
● Upgrade and dynamically scale a live cluster
● Partition a cluster via namespaces for deeper control over resources. For example, you can segment a cluster into different applications, or test and production environments.
Performance and Stability
● Fast application programming interfaces (API) responses, with containers scheduled < 5s on average
● Scale tested to 1000s of containers per cluster, and 100s of nodes
● A stable API with a formal deprecation policy
Last, but far from least, Google isn't holding on to Kubernetes as its biggest stakeholder. The search giant is turning over Kubernetes' future to the Cloud Native Computing Foundation. This branch off from the Linux Foundation will work with open-source partners to manage the future development of Kubernetes and build new software that makes the entire container toolset more robust.