Kubernetes Pod Autoscaling in practice
I am curious to hear people's/companies' experiences using Kubernetes Pod Autoscaling (primarily thinking of Horizontal Pod Autoscaling, but also interested to hear if/how people use Vertical Pod Autoscaling).
When I Google around, I find lots of blog posts of the form "here is how to set up k8s autoscaling based on CPU utilization/custom metrics..." but I don't find much of the form "here is my/my company's experience actually deploying k8s autoscaling in the real world..."
What metrics do you use to autoscale? How do you select/set the autoscaling parameters for your real-world deployments? Are you happy with the experience? Are there any pathological cases/issues you frequently run into?
(
3 comments
| 2 points
| on HN
)
1. You need good observability
2. You'll need a cluster autoscaler, that's really where it the rubber meets the road, especially for utilization / cost controls
3. Use multiple node pools for different classes of workloads
4. Workload scaling metrics will be application specific
This requires the use of things like kubernetes custom metrics api and Prometheus adapter