service-vm-fleet — the PPN VM fleet controller
The fleet controller is the placement and registry service for the PPN VM resource pool. It maintains an in-memory registry of node state — available capacity, hardware virtualisation availability, current VM count, and reservation status — and resolves placement requests from the tenant proxy.
Placement algorithm
Placement uses a two-pass selection algorithm. The first pass considers only non-reserved nodes, satisfying the requested capacity ceiling. If the first pass yields no candidate, the second pass widens the search to include reserved nodes. This separation allows operators to designate nodes for latency-sensitive workloads while still permitting overflow placement under load.
Heartbeat ingestion
Host agents report node state to the fleet controller via periodic heartbeats. Ingestion is trust-bounded by the WireGuard underlay and node identity, not by separate credentials. Heartbeat data — available memory, CPU load, KVM availability, current VM count — updates the in-memory registry directly.
Fleet status endpoints
The fleet controller exposes endpoints for global node state and per-tenant VM listings. These endpoints serve the tenant proxy and operator tooling.
See also
- PPN VM Resource Pool Architecture — full architecture overview including fleet controller, host agent, and tenant proxy
- service-vm-tenant — the customer-facing tenant proxy that submits placement requests
- PPN Small-Business Compute — the commercial product built on the PPN substrate
Cite this record: /wiki/service-vm-fleet — revision f173f6b4, last updated 24 August 2026.