It's Kubecon 2015 this week, so there's never been a better time to try Kubernetes. If you've never heard of it, you can always read our introduction or the official site. If you're really interested, you can spin up a local cluster on Vagrant and give it a go!
The Big News
Kubernetes v1.1 has been released! This brings some of the exciting new features that have been sitting in the extensions API for a little while into
the stable release:
Horizontal Pod Autoscaling - dynamically increasing the replicas of a specified Pod when they reach a specified resource limit, for example CPU utilisation
Job objects - for batch and other run-once workloads
HTTP Load Balancing - You can now use an Ingress Controller to direct HTTP requests to different domains/paths on your load balancer to different services.
Improvements to the kubectl tool, including the ability to run a container interactively on your cluster for debugging purposes, and improvements to the rolling update functionality
A ton of bug fixes, listed on the Github release page
The day opened with a keynote from Brendan Burns, a senior engineer working on Kubernetes, including a quick demo of a 0-downtime rolling update - all while serving 1 million requests per second. Impressive!
There were a few talks Kubernetes in production, starting with the system behind build.golang.org and continuing with talks from Deis about running a Kubernetes-based PaaS, then eBay, about
running Kubernetes on OpenStack.
Other talks emphasised the pluggable nature of Kubernetes components. Eugene Yakubovich, a flannel maintainer at CoreOS, talked about the Container Network Interface.
This specification is an attempt to make container networking solutions (which Kubernetes relies on for inter-pod communication) standardised, and how you would go about adding a Kubernetes network plugin
We've already had a sneak preview of the talk by Sysdig, as they gave a similar talk at Container Camp London. This time around it comes with Kubernetes integration which allows you to filter
based upon Kubernetes objects such as namespaces and services. Suffice to say, they've got a very cool looking container monitoring dashboard but we were more impressed by the ncurses based interface. Very positive response from the audience
A talk that particularly caught our interest was Pachyderm, a containerised data-store for large data sets. It expands the commit-based, copy-on-write
filesystem of btrfs across a cluster of containers. It's in very early stages, but could offer an alternative to Hadoop at some point in the future!
The day ended with a talk about "Ubernetes," how to federate Kubernetes clusters across multiple data centres and providers. How
do you solve problems such as data and application migration, global scaling and resilience against major outages? The talk went in to implementation details and the roadmap for how Kubernetes will solve these problems over the coming months. Of particular
interest was how Ubernetes can be deployed to avoid potential vendor lock-in as your infrastructure would now have scope across multiple providers. Also, how you can tune the placement of your application components to use the best aspects of each
See you tomorrow for a day 2 summary!