Jake Sanders | 10 March 2016
It's 2016, and KubeCon has come to our home turf - London. Since the inaugural event in San Francisco last year, Kubernetes has exploded in popularity, as the wider DevOps world has started to take notice. If you've managed to avoid noticing the buzz, you can read our introduction to Kubernetes, or visit the official Kubernetes web site.
Kubernetes 1.2 is just around the corner! This version looks to simplify large deployments by introducing some new API objects: Deployments and ConfigMaps.
Deployments automatically create Replication Controllers (to be renamed ReplicaSets) based on the template you provide. The magic happens when you update the definition of your deployment. If, for example, you wanted to update the version of the software you have deployed, it will handle the rollout for you. Kubernetes ensures that some pods always remain available for the duration of the upgrade, so your deployment should involve zero downtime!
Config Maps are simple key:value maps that can be consumed by a Pod when it's launched. The values can be created as environment variables or mounted as files inside a directory. The advantage of a ConfigMap is you can re-use a pod inside several different environments by applying the configuration through Kubernetes rather than baking it in to your container, or using an external config management solution.
The first KubeCon EU has been split into several different tracks. Unfortunately, there's only 1 of me (we're working on the clone - Ed), so we'll just be following talks from the main room!
The Day began with Google's Kelsey Hightower delivering the Keynote. After setting our expectations low on a completely successful demo, he showed off Kubernetes 1.2 successfully deploying Ghost using a number of beta/alpha features. He recounted his "experience" of running npm whilst on an aeroplane (npm 1 - bandwidth 0), before rousing the crowd with some impromptu cheerleading. (My "English reserve" found this very difficult to follow)
The keynote was followed by David Aronchick, product manager at Google, talking about "Kubernetes State of the Union". He showed that, thanks to community contributions to the open-source project, Kubernetes is growing unbelievably quickly. He then showed off some of the new features that will be dropping in Kubernetes 1.2, and the ambitions for 1.3 including Cluster federation and better support for Legacy applications.
Matthew Bates, of then brought everyone down to earth with a talk on "The state of state." Unfortunately, most applications aren't designed for a completely stateless architecture, so how would you go about keeping state, using persistent volumes, and running your databases on Kubernetes. A very strong technical talk which touched on the upcoming resource PetSet as well as the highly scalable MySQL project Vitess.
Tom Wilkie and Ilya Dmitrichenko from Weave delivered a serious talk with the lighthearted title: "If you can drink and watch Star Wars, you can handle Kubernetes in production (Because that’s exactly what we did) " We were treated to not one but three demo's covering their product offering of Flux, Scope and Tracer
After lunch, Sinclair Schuller from Apprenda, talked about how to marry modern cloud-native applications with more traditional enterprise applications. With a focus on the Apprenda PaaS, he showed how to use CI/CD to push a Node.JS front-end application on to Kubernetes, that retrieved data from a traditional Oracle J2EE application.
Eric Lewis from the New York Times gave us a presentation that many of us implementing Kubernetes in production will find familiar: how they migrated from a messy platform based around many VMs, to experimenting with containers and fleet, to a production work-flow on Kubenetes. Of particular interest to us, he showed off their custom dashboard, and talked about the upcoming Kubernetes Dashboard UI.
Shaun Crampton, from Metaswitch/Project Calico showed that you should care about the network fabric that your cluster uses by going through the pain points of various overlay networks. He then talked about internet-level scaling, and showed off securing your microservices at the network level. We can see network security being a key development over the coming year.
Andrew Hutchings from NGINX talked about exposing services on your cluster to the outside world, and the shortcomings of the current solutions (Services and Ingress Controllers) He then showed how to extend the Ingress resource with NGINX, and finished with a load balancing demo. We can certainly see further companies developing Ingress load-balancers as more user standardise on Ingress
See you tomorrow for a day 2 summary!