Writing a Kubernetes Controller

2021-02-10

In this episode, we're going to explore writing our own Kubernetes controller.
#KubernetesTutorial #Tutorial


šŸæ Rawkode Live

Hosted by David McKay / šŸ¦ https://twitter.com/rawkode
Website: https://rawkode.live
Discord Chat: https://rawkode.live/chat

#RawkodeLive

šŸ•° Timeline

00:00 - Holding screen
01:00 - Introductions
03:00 - What is a Kubernetes controller?
05:30 - What are we going to build?
15:10 - Question: Controller vs Operator?
18:20 - Question: Build from scratch or SDKs?
21:00 - Building the boilerplate for our admission controller
42:00 - Building a container image
45:00 - Creating the Kubernetes manifests
48:00 - Generating the certificates
1:20:00 - Creating our MutatingWebhook configuration
1:34:00 - Deploying our admission controller
1:36:00 - Modifying the Pod spec
1:49:00 - Resolving the semantic version constraint

šŸ‘„ About the Guests

Suhail Patel

I'm a software engineer focused on designing and operating distributed systems.
Currently I work at Monzo šŸ¦ as a Platform Engineer. I work with Go, Kubernetes, Envoy Proxy, Etcd, Cassandra and more. I focus on keeping the systems reliable and correct.
Previously, I was at Citymapper šŸš‚ helping make Public Transit in cities usable. I worked on integrating real-time departures, multimodal routing, search as well as evolving the backend infrastructure underpinning everything.


šŸ¦ https://twitter.com/suhailpatel
šŸ§© https://github.com/suhailpatel
šŸŒ https://suhailpatel.com/


šŸ”Ø About the Technologies

Kubernetes

Kubernetes is a portable, extensible, open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation. It has a large, rapidly growing ecosystem. Kubernetes services, support, and tools are widely
available.
The name Kubernetes originates from Greek, meaning helmsman or pilot. Google open-sourced the Kubernetes project in 2014. Kubernetes combines over 15 years of Google's experience running production workloads at scale with best-of-breed ideas and practices from the community.
Designed on the same principles that allows Google to run billions of containers a week, Kubernetes can scale without increasing your ops team.
Whether testing locally or running a global enterprise, Kubernetes flexibility grows with you to deliver your applications consistently and easily no matter how complex your need is.
Kubernetes is open source giving you the freedom to take advantage of on-premises, hybrid, or public cloud infrastructure, letting you effortlessly move workloads to where it matters to you.

šŸŒ https://kubernetes.io/
šŸ¦ https://twitter.com/kubernetesio
šŸ§© https://github.com/kubernetes/kubernetes

#CloudNative #Kubernetes


šŸŒ Show Links
https://gitlab.com/rawkode/kubernetes-semantic-image-controller