How Kubernetes Plays Tetris with Your Containers
Talkat Open Source Summit Europe 2022 · on Friday, 2022-09-16· at 10:50· Liffey B Part 2 (Level 1), Convention Centre Dublin, Spencer Dock, N Wall Quay, North Wall Dublin 1, D01 T1·
summary
Kubernetes scheduler runs two phases — scheduling (pre-filter/filter/score) and binding — and stores decisions as Bindings in etcd; it uses ~12 built-in predicates and multiple priorities like image locality and resource packing to "play Tetris" with pods. Filters remove nodes (example: GPU requirement), scores rank remaining nodes, kubelet + container runtime create the pod on the chosen node. Influence is possible via node selector, node affinity and pod affinity/anti-affinity, taints and tolerations, or by writing a custom scheduler plugin.
AI-written summary · about
chapters (14)
- 0:00Start
- 2:51Recap of What Containers Are
- 5:40The Kubernetes Scheduler
- 6:12Api Server
- 6:35Controller Manager
- 9:38Scheduling and Binding in Practice
- 11:33Filtering in Kubernetes
- 14:28Image Locality Priority
- 15:41Kubernetes Standard Procedure
- 16:38Node Selector
- 20:52Part Affinity and Anti-Affinity
- 22:51The Yellow App
- 33:55Recap
- 34:56Node Affinity
related talks
58mHow Kubernetes plays Tetris with your containers
11mHow Jenga & Tetris Can Help Run More Containers with Lesser Costs...
20mHow Scheduling in Kubernetes Works
34mKubernetes Scheduling Features or How Can I Make the System Do What I Want?
42mDeep Dive Into the Latest Kubernetes Scheduler Features
35mSIG Scheduling Deep Dive
11mLightning Talk: How Jenga & Tetris Can Help Run More Containers with Lesser Costs & Downtime
30mDeep Dive: Scheduling SIG
