Resize Your Pods In-Place With Deterministic eBPF Triggers
Talkat KubeCon + CloudNativeCon North America 2022 · on Wednesday, 2022-10-26· at 11:55· Portside Ballroom (Room 260)·
summary
Demonstrates a concrete system that detects a build command and expands a running pod’s resources without restart by combining Kubernetes’ upcoming in-place pod resize API (APIserver/kubelet/CRI changes, containerd update_container_resources) with an execve eBPF trigger that monitors cgroup IDs and command names via BPF maps and a DaemonSet. Prototype raises memory to 5 GiB on make, turns tens-to-hundreds-second VPA reactions into sub-second resizing, and works in demo though code is a proof-of-concept.
AI-written summary · about
chapters (15)
- 0:00Intro
- 1:29The End of Local Development
- 3:59The Dawn of Cloud-Native Development
- 6:07Cost Reduction
- 7:32Booting Spikes + VPA + In-Place Pod Resize
- 8:36"make" Spikes + VPA + In-Place Pod Resize
- 9:38Optimal "make" Spikes Behavior
- 12:09In-Place Pod Resize - What Changed?
- 14:59In-Place Pod Resize - What Does It Involve?
- 15:44In-Place Pod Resize - Design
- 17:54In-Place Pod Resize - Container Resize Order
- 19:03In-Place Resize - Expectations From Runtime
- 20:26In-Place Pod Resize - Innovating with eBPF
- 23:19In-Place Pod Resize + eBPF + BPF maps
- 30:29Key Takeaways
related talks
29mResize Your Pods w/o Disruptions aka How to Have a Cake and Eat a Cake
33mRestart-Free Vertical Scaling for Kubernetes Pods
36mTaming the Beast: Advanced Resource Management With Kubernetes
29mRight-Size Your Kubernetes Deployments
38mDynamic Pod Resource Boundary Adjustment in Web Scale Clusters
38mDynamic Pod Resource Boundary Adjustment in Web Scale Clusters
25mHoney, I shrunk the pods (and everything else)
11mHow Jenga & Tetris Can Help Run More Containers with Lesser Costs...
