Comparison
Bin packingvsCluster autoscaling
Bin packing
the cluster is at ninety percent booked and forty percent used, and adding one more workload still needs a whole new node.
Fitting workloads of assorted sizes onto as few nodes as possible. It is the lever that converts requests into a bill: efficiency is set by how honest requests are and by the ratio of the largest workload to the node size, since one big request can leave an unusable remainder on every node. It is also the reason a cluster can be simultaneously expensive and underused, which reads as a paradox until you look at requests rather than usage.
Full entry →Cluster autoscaling
a workload could not be placed, so a new machine was bought, booted and joined the cluster — three minutes after you needed it.
Adding and removing nodes in response to unschedulable workloads and to nodes that could be emptied. It is the layer that turns pod autoscaling into an actual change in what you are paying, and it operates on a much slower clock because it involves provisioning machines. Scale-down is the harder half: one workload with no other home, or a restrictive disruption budget, will keep an almost-empty expensive node alive indefinitely.
Full entry →