KubeCon / CloudNativeCon Europe 2018 took place at the shiny Bella Center of Copenhagen on May 2 – 4, 2018.
Here at ICCLab/SPLab we use extensively Kubernetes / CNCF technologies both in teaching and research, but we had one extra reason for being there this year: our friends and colleagues from Rapyuta Robotics (RR) were scheduled to give a talk on Cloud Robotics PaaS.
KubeCon is a developers’ conference centered around the Kubernetes (k8s) container management platform and the wider Cloud Native Computing Foundation (CNCF) software ecosystem. Typically it’s not a conference intended for academics, but the very favorable academic rates made it very attractive also for non-industry attendants.
The full schedule of the talks is available here. All talks were recorded and are expected to be available online soon.
The general impression I had was of a very enthusiastic, fast-growing community, already showing some signs of commoditization in some areas. Some (luckily still few) sponsor keynotes were shameless product plugs, and some sponsor product offerings are already too similar to be distinguishable (e.g., managed k8s clusters). The advanced tech talks were not always as deep as I would have wanted, but it’s also true that k8s is in continuous development and it’s really hard to keep everybody constantly up to date on such a fast moving target.
In the following I will just give some highlights of the most interesting talks I managed to attend. Unfortunately, the conference was massive and the program had to be split in several parallel tracks, so it was often the case where I would have liked to be in 4 or 5 places at once.
In his opening keynote, Dan Kohn, the executive director of CNCF, gave an idea of the growing momentum in the community by showing the attendance growth, from about 1000 participants at KubeCon 2017 in Berlin to the roughly 4300 of 2018. He then quickly moved on to one of the thorniest aspects of large open-source projects: code quality. This will be the focus for the next year in k8s and the whole set of projects under the CNCF umbrella.
It was refreshing for a technological conference to have a keynote speaker explicitly link Testing and Continuous Integration (CI) practices with philosophy of science concepts. Kohn argued that proper testing is all about falsifiability, or comparing the idealized conception we have of our software with “the truth”. The mention of Popper’s work brought back memories from my philosophy teacher in high school.
Next it was Kelsey Hightower’s turn, the very successful face of Kubernetes for so many, who introduced Liz Rice acting as moderator for most of the keynote program.
Liz gave an overview of all the projects in CNCF and the three categories they can belong to depending on maturity: “sandbox”, “incubating”, “graduated”. One of the indicators of the incredible speed at which technology moves in this community is for instance Vitess. It’s an “incubating” project, but it can boast adopters such as YouTube, Slack, JD.com
Another important remark regarded how CNCF awards the “graduated” status to a project. The idea is that it has to cross “the chasm”: not only it has to be embraced by a community of visionaries, but it has to win over the early majority of adopters in a solution space.
In his brief speech, Dirk Hohndel (Chief Open Source Officer from VmWare) put the spotlight on one of the core issues of IT communities in general: the lack of diversity. He looked around and said plainly that of the over four thousand people in the keynote hall, most were just like him, white and male. Given the explosive growth of the interest around the CNCF ecosystem he reiterated: “We have a huge opportunity: there are more jobs than people to fill them” so we can bring new people into the industry, “it’s time to hire women, hire minorities, it’s time to promote them, invest into them”. When Kelsey came back on stage the message was even stronger.
Alexis Richardson (founder of Weaveworks) discussed the overall vision for CNCF, that is start by bringing “higher velocity”, more and faster deployments with lower failure rates (done!), all the way to enabling the “explosion of higher order systems”.
What are “higher order systems” you may ask? Apps on top of platforms, is the answer. The trend is the same for PaaS: abstraction, letting experts work on their applications hiding the complexity of the underlying systems. Nothing too new here, but a confirmation that our (and RR’s) approach to building a domain specific PaaS for robotics is going in the right direction. As an example, he brought the KubeFlow project, whose goal is to provide data scientists with a consistent environment to experiment with, train, and predict with models on their laptop, the cloud, the edge (a specific keynote was given on day 3 on KubeFlow).
Another visionary concept was that of “gitops” or “operations by pull requests”.
Oliver Beattie (head of engineering at Monzo) went over an interesting post-mortem analysis showing just how many things can go wrong in a system with so many moving parts as a Kubernetes cluster with service meshes.
Ralph Squillace of Microsoft gave a short but successful demo of integrated debugging with checkpoints from an IDE to components deployed on a cloud (much more impressive than Google’s “skaffold”).
Craig Box (Google) introduced one of the most exciting technologies unveiled at KubeCon: gVisor. It’s a container runtime sandbox (basically a kernel in user-space) that provides isolation to containers and can already be deployed using docker containers on k8s. This is a life-saver for multi-tenancy on k8s!
Prometheus 2 and its massive improvements on monitoring cloud-native anything was in the spotlight, and finally Kelsey reached a new peak on stage coolness by self-quoting himself from 5 minutes before.Day 2 saw Aparna Sinha giving a summary of the main advancements in the last versions of k8s: support of more diverse applications (jobs, workload controllers, storage, stateful with Operators), monitoring, development experience. Operators were also the focus of the talk of CoreOS CTO’s.
The technical director of Ops and reliability of the Financial Times gave an interesting look back at their migration to k8s, while Dave Zolotusky of Spotify gave some solid reasons to become more active in the CNCF developer community.
The second day ended with the social event at the Tivoli amusement park in the center of Copenhagen. It’s a historical amusement park and it felt like entering a Wes Anderson movie…
The best keynote from day three was given by Simon Wardley who was already a celebrity in our lab. His presentation on maps and strategy gave the audience something to laugh about when he asked why the Greeks didn’t use SWAT analysis to fight the Persians. More importantly Wardley asked the right questions: isn’t DevOps already legacy? Aren’t containers ? If past success breeds inertia, isn’t CNCF winning the container battle and losing the serverless war to AWS?
Given our work in cloud robotics, I mostly attended tech talks on edge computing, multi-cluster networking, and container networking. Among the talks I managed to attend, my favorites were:
- Building Hybrid Clouds with Istio – Allan Naim, Google & Rohit Agarwalla, Cisco
- SIG Multi-Cluster deep dive
- Blackholes and Wormholes: Understand and Troubleshoot the “Magic” of Kubernetes Networking – Minhan Xia & Rohit Ramkumar, Google
- Global Container Networks on Kubernetes at DigitalOcean – Andrew Sy Kim, DigitalOcean
- Clusters as Cattle: How to Seamlessly Migrate Apps across Kubernetes Clusters – Andy Goldstein, Heptio
- Kubernetes as an Abstraction Layer for a Connected Home – Scott Nichols, Google
- Are You Ready to Be Edgy? — Bringing Cloud-Native Applications to the Edge of the Network – Megan O’Keefe & Steve Louie, Cisco
- Why Running kubelet on Your Vacuum Robot Is (Not) a Good Idea – Christian Simon, Jetstack
- Accelerating Envoy with the Linux Kernel – Thomas Graf, Covalent
In particular I highly recommend the last talk by Thomas Graf on using BPF (Berkley Packet Filters, a kernel extension) to improve networking performance in your cluster, and of course DJ’s talk on building a cloud robotics PaaS with kubernetes!