Fabio Douek, Head of Cloud Architecture at Singlepoint attended a 3 day Kubecon + CloudNativeCon Europe 2018 conference in Copenhagen.
The main focus of the conference was Kubernetes and the edge components around it. You might not be familiar with Kubernetes at this stage, but don’t worry, we will cover that. You might however have heard or be familiar with Docker containers, which is one of the core components of Kubernetes.
Being back in Copenhagen, made me go back in time and reminded me of the two years I lived in this wonderful city. At that time, I was working on a project for Maersk Line. Maersk Line is the world’s largest container shipping company. The project consisted of integrating their systems, mainly for booking containers and handling issues that might occur with the containers while in-transit. This was my first experience with containers, however those containers are very different in nature from Docker containers.
It’s amazing how Opensource projects such as Kubernetes brings together rival cloud providers and technology companies, such as AWS, Azure, Google, IBM and RedHat. At last, they’ve realised that the facto standards are key to their own success, as it accelerates technology adoption, especially from enterprises.
As Kelsey Hightower from Google stated in an interview during Kubecon, it is common that organisations who are paying millions of dollars in licenses for their legacy systems vendors, have little influence in the product roadmap. This is changing completely with Opensource software. Companies who are embracing opensource are developing the skillsets around the technology, are adapting the software to the company needs, influencing the project roadmap. And most importantly, they are contributing back to the community.
What are these containers?
At this stage, you might be asking, what is all this fuss about containers, Docker, and Kubernetes?
A container image is a lightweight package which encapsulates your binaries, libraries, configurations and runtime. It’s fully portable, and much smaller than the traditional VM images. It usually varies between 6-200 MB, depending on the libraries and base container image.
The concept of containers, and the foundation behind related to isolation is nothing new. It’s being developed in the last 30 years. However, it became popular in 2013 when a company called Docker emerged, and packaged the software in a way that it was easy to be adopted.
Up to now, the most common container engine embraced is Docker. However, the Docker engine by itself does not provide an entire ecosystem for orchestrating containers. For development purposes and for playing around, the Docker runtime by itself might be enough to run in a developer’s laptop, when you are running a handful number of containers. However, when you need to run a few dozen, hundreds and sometimes thousands of containers, you need a container orchestration, which will be responsible for scheduling the container execution, monitoring, self-healing, scaling and a mechanism to support deploying those container images.
That’s where Kubernetes comes into the picture. Kubernetes became “the facto” orchestration engine, being embraced by all the cloud providers, and pretty much all the big technology providers. Originally the project was created by Google about 15 years ago, with the name of Borg, and it was donated to the CNCF (Cloud Native Computing Foundation) in 2015.
What the conference covered?
There were plenty of interesting talks, by the major tech companies: Google, Red Hat, AWS, IBM, Microsoft, etc. But clearly Google and RedHat were leading the show, delivering most of the talks, which reflects their leadership on their contribution to Kubernetes.
The hot topics of the conference, on top of Kubernetes were around Kubernetes monitoring (using Prometheus and Grafana), huge focus on security, Service Mesh (Linkerd, Envoy, Istio), and DevOps.
Clenimar Filemon and Ricardo Rocha shared how CERN is using Multi-Cloud Federated Kubernetes, and disclosed some interesting numbers about their computing power: 320,000 cores across 210 Kubernetes Clusters.
Oliver Beattie from Monzo shared insights of a Production Kubernetes Outage, which was quite interesting from three perspectives: The first one, is related to the transparency and openness on how Monzo dealt with the outage “post-mortem”. Typically banks do not share the root cause in a transparent way of outages. In most cases, they simply classify as a “computer glitch”. The second perspective, is the technical insight, and the third the correlation of events. There is a link to the video at the end of this blog post.
James Strachan from CloudBees shared the power and simplicity of Jenkins-X. A specialised Jenkins distribution tailored to integrate with Kubernetes. Essentially, it truly democratizes Kubernetes for developers, hiding the complexity of how to develop your code in Kubernetes, how to get a hot deployment-like experience into Kubernetes, without having to wait for long cycles.
Liz Rice from aqua shared some great insight about container security, some gotchas and security best practices.
Not directly related to Kubernetes, but related to Serverless, under the CNCF umbrella, it was great to see the first specification for CloudEvents being delivered. This is the first concrete step in a standard specification for CloudEvents. We believe that this will have an even bigger impact than Kubernetes in the years to come.
Following a selection of the talks during Kubecon Europe 2018
High Level Talks
Keynote: Crossing the River by Feeling the Stones – Simon Wardley, Researcher, Leading Edge Forum
Keynote: CNCF 20-20 Vision – Alexis Richardson, Founder & CEO, Weaveworks
Keynote: CNCF Project Update
Keynote: Anatomy of a Production Kubernetes Outage – Oliver Beattie, Head of Engineering, Monzo Bank
Keynote: The Challenges of Migrating 150+ Microservices to Kubernetes, Sarah Wells
Keynote: Kubernetes Project Update – Aparna Sinha, Group Product Manager, Kubernetes
Keynote: Cloud Native Observability & Security from Google Cloud – Craig Box, Google
Kubernetes on Supporting $8 Trillion Card Payments in China
Multi-Cloud Federated Kubernetes at CERN
Introducing Amazon EKS
Cloud Native Networking for Containers in AWS using CNI Plugins
Jenkins X: Easy CI/CD for Kubernetes – James Strachan, CloudBees
Continuously Deliver your Kubernetes Infrastructure – Mikkel Larsen, Zalando SE
Git-push Workflows (using git hooks) for Deploying Applications
Introducing Envoy-Based Service Mesh at Booking.com
Building Hybrid Clouds with Istio
Serverless Working Group, Doug Davis
The Serverless and Event Driven future, Austen Collins
Serverless not so FaaS, Kelsey Hightower
Convergence of Serverless APIs and Compute, Sarah Allen