Skip to content

CONCEPT Cited by 1 source

Empty host

Empty host is the operational primitive of a fully-empty physical server with nothing scheduled on it, deliberately preserved by the cluster scheduler for:

  1. System updates / planned maintenance. Draining a host to upgrade firmware, kernel, or control-plane software; if no hosts are empty, the operator must first migrate workloads off a candidate host, which is expensive and disruptive.
  2. Provisioning large, resource-intensive VMs. A VM request whose shape exceeds the free-resource budget of any partially-occupied host requires a fully-empty host to land. If the cluster has no empty hosts, large-VM requests either queue or force a rebalancing migration wave.

Named directly in Google Research's 2025-10-17 LAVA post: "Poor VM allocation… reduces the number of 'empty hosts', which are essential for tasks like system updates and provisioning large, resource-intensive VMs" (Source: sources/2025-10-17-google-solving-virtual-machine-puzzles-lava).

Why naive packing erodes the empty-host reserve

The obvious "pack the pieces as tightly as possible" objective — the first-order Tetris framing — eats the empty-host reserve as a side effect. Maximising per-host utilisation spreads small workloads across all hosts so none are fully empty. The cluster then hits the large-VM provisioning + host- maintenance failure modes above.

Empty hosts are therefore a second-order operational objective that competes with raw packing density. Good schedulers treat it as a constraint the placement policy must respect, not an outcome that happens automatically.

Relationship to [lifetime

prediction](<./vm-lifetime-prediction.md>)

If the scheduler knows (or can predict) VM lifetimes, it can:

  • Co-place similar-duration workloads so hosts drain together, naturally producing empty hosts without active migration.
  • Avoid placing a likely-long-lived VM on a host that would otherwise be drainable soon — preserving the upcoming empty-host opportunity.

Without lifetime information, these optimisations are unreachable: the scheduler can't tell which host is about to become empty on its own, so it either over-reserves (wastes capacity deliberately) or under-reserves (exhausts the empty-host budget and hits maintenance / large-VM failure modes).

The LAVA family's continuous reprediction of lifetime distributions is pitched as the primitive that makes empty- host-aware placement tractable at scale.

Seen in

Last updated · 200 distilled / 1,178 read