cluster autoscaler

Do you know to what properties of the candidate node group the Kubernetes autoscaler looks at exactly?

It scans the node groups and looks at their members’ allocatable capacity and here is an example Node in GCP whose type is n2-standard-8, i.e. 8 CPU and 32GB:

Capacity:
  cpu: 8
  ephemeral-storage: 203056560Ki
  hugepages-1Gi: 0
  hugepages-2Mi: 0
  memory: 32859412Ki
  pods: 110
Allocatable:
  cpu: 7910m
  ephemeral-storage: 105532546763
  hugepages-1Gi: 0
  hugepages-2Mi: 0
  memory: 29064468Ki
  pods: 110

If you create a Pod that requests 30Gi of memory, it will not trigger a scale-up because autoscaler doesn’t think that a similar node would be able to accommodate the Pod; it uses allocatable numbers in its calculations. So you need to have a pod that requests less than 29064468Ki memory to trigger the scale-up of its node group.

Follow @muvaffakonus on Twitter.