Headroom reduction

Prev Next

Headroom reduction deploys new nodes much faster than other autoscalers with large-scale node hibernation and re-activation reducing the need for buffer.

The following video shows how Headroom reduction reduces the need for an overallocated node buffer:

The magic behind the scenes

When you activate Headroom reduction on a workload, the following automatic steps ensure protection:

  1. Hibernated nodes begin warming up. Kompass listens to the unscheduled Pods pool.

  2. When Kompass determines that there are unscheduled Pods in the pool, Kompass deploys pre-baked, hibernated nodes to respond to spikes.

    At the same time, the autoscaler launches new nodes.

  3. When the Kompass nodes are ready to host Pods, the unscheduled Pods are scheduled to the Kompass nodes.

  4. 5 minutes after being reactivated, Kompass hibernated nodes are cordoned.

  5. After the spike is over, Kompass nodes are gradually drained, until all Pods are hosted by autoscaler nodes.

    To ensure smooth draining, the number of Pods may exceed the number that were running before the spike.

  6. When Kompass nodes are empty (no more Pods being hosted), the nodes are terminated.

The following diagram illustrates the process: