One of the key features of the Spotinst Ocean Autoscaler, is the ability to maintain a dynamic buffer of spare capacity called Headroom. The buffer is algorithmically tailored to meet the actual requirements of the incoming containerized workloads which enables immediate pod scheduling. This helps prevent pending pods, making scale-up a proactive process.
Up until now, the headroom could be configured in one of two ways, automatically and manually.
The automatic option would derive the size and number of headroom units from the most common pods in the cluster, resulting in a total buffer size of up to 5% of the cluster capacity in terms of CPU and Memory.
The manual option, on the other hand, would allow users to tailor the headroom units to their own specification, but with one caveat – the defined headroom capacity would end up being static:
Today, we are happy to announce a new feature for the Spotinst Autoscaler Headroom configuration: Automatic Headroom Size.
This new parameter allows users to customize the percentage of the total cluster capacity that the automatic headroom will take up. The result is a configurable buffer which both scales with the cluster dynamically, and leverages the autoscaler’s ability to learn the cluster’s workload and ensure every pod can be scheduled without delay.
For mission critical workloads, for example, customers can increase the headroom percentage to support high availability. A larger amount of spare capacity will provide a larger safety net that will ensure incoming pods don’t end up in a “pending” state.
On the other hand, for dev/test workloads where pod schedule time is less of a priority, customers can decrease the buffer to promote higher savings and resource allocation efficiency.
Automatic Headroom size is currently available via API, with console support arriving soon. To use the new feature, please refer to the following documentation: https://api.spotinst.com/spotinst-api/ocean/ocean-cloud-api/ocean-for-aws/create/ (AWS users) or https://api.spotinst.com/spotinst-api/ocean/ocean-cloud-api/ocean-for-gke/create/ (GKE users).