
Building out a managed Kubernetes service is a bigger job than you think
Saintedyfy59
Description
<p>You may be running your code in containers. You might even have taken the plunge and orchestrated it all with YAML code through Kubernetes. But infrastructure as code becomes a whole new level of complicated when setting up a managed Kubernetes service. </p><p>On this sponsored episode of the Stack Overflow podcast, Ben and Ryan talk with David Dymko and Walt Ribeiro of Vultr about what they went through to build their managed Kubernetes service as a cloud offering. It was a journey that ended not just with a managed K8s service, but also with a wealth of additional tooling, upgrades, and open sourcing. </p><p>When building out a Kubernetes implementation, you can abstract away some of the complexity, especially if you use some of the more popular tools like <a href="https://kubernetes.io/docs/reference/setup-tools/kubeadm/">Kubeadm</a> or <a href="https://kubernetes.io/docs/setup/production-environment/tools/kubespray/">Kubespray</a>. But when using a managed service, you want to be able to focus on your workloads and only your workloads, which means taking away the control plane. The user doesn’t need to care about the underlying infrastructure, but for those designing it, the missing control plane opens a whole heap of trouble. </p><p>Once you remove this abstraction, your cloud cluster is treated as a single solid compute. But then how do you do upgrades? How do you maintain x509 certifications for HTTPS calls? How do you get metrics? Without the control plane, Vultr needed to communicate to their Kubernetes worker nodes through the API. And wouldn’t you know it: the API isn’t all that well-documented. </p><p>They took it back to bare necessities, the MVP feature set of their K8s cloud service. They’d need the <a href="https://kubernetes.io/docs/concepts/architecture/cloud-controller/">Cloud Controller Manager (CCM)</a> and the <a href="https://kubernetes-csi.github.io/docs/">Container Storage Interface (CSI)</a> as core components to have Vultr be a first-class citizen on a Kubernetes cluster. They built
Uploader
Episodes
Building out a managed Kubernetes service is a bigger job than you think
Saintedyfy59