Reserve capacity
Host failures to tolerate, a percentage (25% by default), dedicated failover hosts, or disabled.
VICTOR PRODUCT / PLACEMENT & HA
Victor combines workload placement, resource balancing, high availability and maintenance policy. Set the rules for where VMs run, how they recover and when changes happen, with decisions recorded in your operational history.
Community · ITSM approval requires Enterprise · limits listed with each feature01 / PLACEMENT RULES
Group VMs and hosts, then write rules between them: keep together, separate, must run on, must not run on, should run on and should not run on. Victor checks rules on create, migration, DRS and HA, and can fix violations for you.




02 / DRS
DRS compares hosts by their VMs’ CPU and memory demand and live-migrates VMs to balance them. Every move respects VM/host rules, maintenance windows, change freezes and each host’s headroom. DRS waits while HA fails over or a rolling host upgrade runs.
DRS balances CPU and memory only: no network or storage I/O balancing, predictive DRS or power management today.
03 / CAPACITY AND OVERCOMMIT
Set overcommit ratios per cluster and provisioning limits per datastore. The cluster summary shows allocation against them, and Victor refuses placements that would exceed them unless an administrator overrides with an audited reason. HA failover and maintenance mode are never refused.
| Setting | Default | Range |
|---|---|---|
| CPU overcommit | 4.0 vCPUs per hardware thread | 0.1–64 |
| Memory overcommit | 1.0 (no overcommit) | 0.1–16 |
| Datastore provisioning | No limit | 0.1–100 |
| Datastore warning | 80% used (the Datastore usage alarm warns at 85% unless the datastore has its own threshold) | 1–100% per datastore |
victorctl capacity set cluster-a --cpu-ratio 1
victorctl drs set cluster-a --mode full --threshold 3 --max-moves 2 --headroom 10
victorctl ha set cluster-a --admission host-failures --host-failures 1resource "victor_cluster_capacity" "db" {
cluster_id = data.victor_cluster.db.id
cpu_ratio = 1 # no CPU overcommit (default 4)
mem_ratio = 1.25 # default 1
}Examples from the product documentation at the reviewed revision. Memory reclaim (KSM, free page reporting) is not offered yet.
04 / HA WITH FENCING
On classic KVM clusters, when a host stops responding, Victor fences it before restarting its VMs elsewhere. It tries each configured method in order and restarts VMs in priority order only after a fence succeeds.
Redfish or IPMI turns the failed host off.
Blocklist the host and break its RBD locks, then read back to confirm.
Withdraw the host’s export on a Linux NFS server.
The host resets itself when it loses contact.


Storage fencing stops writes, not processes, so “no VM runs twice” holds for writes. SAN LUNs have no storage fence yet. Admission control checks aggregate capacity, not whether each VM fits on one surviving host.
On KubeVirt, Kubernetes node remediation and KubeVirt restart the VMs, and Victor watches. HA restarts on shared storage have been exercised in nested and cloud labs, not on bare metal yet.
05 / HA POLICY
Host failures to tolerate, a percentage (25% by default), dedicated failover hosts, or disabled.
Restart priorities with “start after” ordering bring dependencies up first.
VM monitoring resets a guest that stops sending heartbeats.
Suspend and resume HA for maintenance, or confirm a host down by hand.
The control plane is highly available too: several victord replicas and an optional replicated PostgreSQL cluster.


06 / CHANGE MANAGEMENT
Define maintenance windows, change freezes and change-reference policies. Outside a window or inside a freeze, a disruptive action is refused with the next opening named. Queue it to run when the window opens, or override with a reason that is kept on the task and written to the audit log.
DRS respects the same windows and freezes, so balancing does not undo your change policy.
ITSM approval integration is an Enterprise extension point without an approver connector today.
FAQ
The model is familiar: automation levels, a migration threshold, VM overrides and initial placement. Victor balances CPU and memory demand only. It has no shares, predictive DRS or Distributed Power Management today. #
VMs stay where they are and an alarm is raised. Victor does not restart a VM elsewhere until a fence succeeds or an operator confirms the host is down. This applies to classic KVM clusters, where Victor runs HA; on KubeVirt, KubeVirt restarts VMs after the node is remediated. #
Yes. Windows are enforced by victord, not the console, so a request from the API, victorctl or Terraform is refused, queued or overridden the same way. A refusal is recorded as a failed task. #
NEXT STEP
Tell us what you run today. We will show you the workflows that matter to your team.