zwrm-agent to distribute VMs beyond a single server. The control plane schedules workloads across all healthy hosts.
Adding a host
Install the agent on each worker host:Scheduling
The control plane uses a placement scheduler to decide where new VMs run. Two strategies are available:| Strategy | Behavior |
|---|---|
| spread | Distributes VMs evenly across all healthy hosts. Maximizes fault tolerance. |
| pack | Fills hosts to capacity before using the next one. Minimizes host count. |
Apps with local volumes are pinned to the host where the volume was created, regardless of scheduler strategy. See Volumes for details.
Host health monitoring
The control plane monitors host health:- Check interval: Every 15 seconds
- Offline threshold: 30 seconds without a heartbeat
- On offline: Host is marked
offline, its executor is deregistered, and all running machines are markedfailed
Host management
Host drain
Drain a host to gracefully migrate its workloads before maintenance:Drain process
- Mark the host as draining (no new VMs scheduled)
- For each VM on the host:
- Select a target host (excluding the draining host)
- If the VM has volumes, transfer the ext4 image to the target via gRPC streaming
- Destroy the original VM
- Start a replacement VM on the target host
- Wait for health check to pass
- If any migration fails, rollback: destroy the replacement, restore original volume mounts