Benchmark Hosts & Storage¶
The Benchmarks tab (Super Admins only) measures what a host's storage, CPU and network can really do, and tracks it over time so a slowdown gets noticed. It runs standard tools on the hosts themselves:
| Test | Tool | Measures |
|---|---|---|
| Storage | fio (or rados bench for Ceph) |
Read and write IOPS, throughput, latency |
| Compute | sysbench | CPU events per second |
| Network | iperf3, between two hosts | Throughput in Gbps |
This is real load
A benchmark competes with every VM already running on the host. Run them in a maintenance window on production hosts, or on a host in Maintenance mode.
Run a benchmark¶
Storage (fio): pick the target type, the host and the target, then the Size (MB) and Duration (seconds), and Run.
| Target | What's tested |
|---|---|
| Local path | A scratch file under the host's VM storage folder (default /var/lib/libvirt/images). The file is always deleted afterwards. |
| ZFS pool | A scratch file on the pool's mountpoint. |
| LINSTOR (DRBD) | The resource's raw block device, with no filesystem in the way. Refused if any VM's disk is on that resource, with no override, because the test writes real data to the device. |
| Ceph pool | rados bench from the Ceph cluster's monitor node, with temporary test objects that are cleaned up after. It never touches a VM's disk image. It measures the monitor-to-OSD path, which may differ from a compute host's own path to Ceph. |
Compute (sysbench): pick the host, Threads (0 means one per CPU) and
Duration, then Run.
Network (iperf3): pick the two hosts (from → to) and Duration, then Run.
Before a run on a host that has VMs running, the console asks you to confirm and says how many are running. A host in Maintenance, or with nothing running, starts straight away. If the console can't tell what's running, it treats the host as busy.
Results land in the run table (type, host, peer, status, result, who ran it). Export CSV downloads the whole history.
fio, sysbench and iperf3 are installed on hosts when they're added, and
by Repair Worker on older hosts.
Trends¶
Trends charts results over time. Pick Storage (IOPS), Compute (events/sec) or Network (Gbps), then the host (and the peer for network).
Scheduled benchmarks¶
To track a host over time, add a schedule under Scheduled benchmarks: pick the test, its target, a time (UTC) and Daily or Weekly on a given day, then Add Schedule. Scheduled runs don't ask for the confirmation above. Creating the schedule counts as that confirmation, so pick a quiet hour. A LINSTOR schedule still checks for attached VMs each time it fires.
Regression alerts¶
Every finished run is compared with the median of the last 10 runs against the same target: the same host and path, pool or resource, or the same pair of hosts. A drop of 20% or more raises an alarm and sends the Benchmark regression notification (see Notifications & Alarms).
A target needs at least 3 earlier runs before it can alert, so a new target's first runs only build the baseline. A schedule gives the comparison a steady baseline. One-off runs at busy times can trigger false alarms.