Autoscaling Pods and Nodes in Kubernetes: Where to Start?
summary
Team runs autoscaling on IBM Watson Kubernetes clusters across 22 clusters 100–8,500 pods and reports concrete practices: use CPU HPA (stable since 1.3) for many services, treat custom-metrics HPA as HPA v2beta2 and Cluster Autoscaler with third‑party adapters, and avoid relying on limits above 100% of requests. Recommends thresholds (burstable 70–100%, guaranteed <80%), size min/max replicas from 90‑day usage, and shows a Jupyter notebook emulator and measurements (e.g., set foo to min 10 max 24) used to validate tuning.
AI-written summary · about
chapters (23)
- 0:00Intro
- 0:13Watson Performance Engineering Team
- 2:12Refresher: Why Autoscale?
- 3:38Refresher: Performance Bottlenecks
- 4:30Refresher: Kubernetes Objects
- 9:51Three Major Flavors of Autoscalers
- 11:04Horizontal Pod Autoscaling on CPU
- 12:01Horizontal Pod Autoscaling on Custom Metric
- 12:56Cluster Autoscaling
- 13:50Vertical Pod Autoscaling
- 15:08How Mature are Autoscalers?
- 19:46Preparing for CPU-based HPA
- 21:40How to Interpret Your CPU-based HPA Object
- 23:28Calculating CPU Utilization with Multiple Containers
- 24:36Sizing CPU Utilization Thresholds
- 27:14Sizing Min and Max Replicas
- 31:37Deploy to Production
- 35:58Prerequisites Checklist
- 37:59Foo Service Prerequisites Check
- 38:55Gather and Visualize Data
- 40:24Foo Service Data Gathering
- 43:29Recap
- 45:05Resources
related talks
35mAutoscaling Kubernetes Deployments: A (Mostly) Practical Guide
22mIntelligent Autoscaling in Enterprise...
17mScaling Made Simple: Implementing Autoscaling for Optimal K8s Performance
35mSIG Autoscaling Intro
29mKubernetes Autoscaling: Beyond One Size Fits All
30mAutoscaling in Kubernetes
35mIntroduction to Autoscaling
31mFailing to Autoscale?
