Explore a comprehensive journey through supporting virtual machines with dedicated CPUs on Kubernetes in this DevConf.CZ 2023 conference talk. Delve into the Kubernetes resource allocation model, including abstract concepts like resource requests, limits, and container QoS, and learn how these are converted to cgroup configurations. Discover the challenges of implementing true CPU pinning for VMs running on Kubernetes using Kubevirt, an add-on that enables cloud-native VM execution. Gain insights into Kubernetes and Cgroup resource allocation models, and understand how they can be further utilized. Examine the interactions between various technologies in the ecosystem, including Cgroups, KVM, libvirt, Kubevirt, and Kubernetes, through different use cases. Follow the speaker's journey in supporting dedicated CPUs for VMs, covering topics such as container basics, Cgroups, thread models, CPU allocation in Kubernetes, namespaces, and Kernel-based VMs. Analyze multiple attempts to support dedicated CPUs, including compute container approaches, emulator isolation, housekeeping methods, and dedicated-cpu cgroup solutions. Conclude with a summary of key takeaways and implications for improved collaboration between ecosystem technologies.
Read more
A Journey Through Supporting VMs with Dedicated CPUs on Kubernetes - Lecture