From: Dominik Rusovac <d.rusovac@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [RFC PATCH-SERIES cluster/ha-manager/manager/proxmox 0/7] clamp load imbalance to unit interval
Date: Mon, 27 Apr 2026 15:20:24 +0200 [thread overview]
Message-ID: <20260427132031.220468-1-d.rusovac@proxmox.com> (raw)
# TL;DR
clamp load imbalance to value between 0 and 1, and display the value as
percentage in HA Status panel of PVE UI.
# Details
The currently used load imbalance value is given as the so-called coefficient of
variation (CV), a value that may exceed 1. As such, the CV value alone lacks
meaning. A CV value of 0.0 means no imbalance, but what does a value of, say,
1.7 mean?
Relative to the number of nodes in a cluster, it is possible to determine the
upper bound of the CV value [0][1]. By dividing the CV value by its upper
bound, the load imbalance can be represented as a value that varies between 0
and 1. Expressing the CV as a percentage makes the concept of load imbalance
easier to interpret.
# Summary of Changes
This series:
- represents load imbalance as a value between 0 and 1;
- adds a maximum value of 1.0 for load scheduler options; and
- integrates the load imbalance value within the HA status endpoint;
this is to provide feedback on the prevailing load imbalance in the PVE UI.
# Refs
[0] https://repositorio.ipbeja.pt/server/api/core/bitstreams/8ed9a444-dbe0-402f-9d2f-90c5bf6e418c/content
[1] https://stats.stackexchange.com/questions/18621/maximum-value-of-coefficient-of-variation-for-bounded-data-set
proxmox:
Dominik Rusovac (2):
resource-scheduling: clamp imbalance value to unit interval
resource-scheduling: re-adjust hardcoded imbalance values
proxmox-resource-scheduling/src/scheduler.rs | 33 ++++++++++++-------
.../tests/scheduler.rs | 8 ++---
2 files changed, 25 insertions(+), 16 deletions(-)
pve-manager:
Dominik Rusovac (1):
ui: from/CRSOptions: add maximum for threshold
www/manager6/form/CRSOptions.js | 1 +
1 file changed, 1 insertion(+)
pve-ha-manager:
Dominik Rusovac (3):
test: re-adjust logged imbalance values
manager: add load imbalance to status
api: status: add load imbalance to status
src/PVE/API2/HA/Status.pm | 4 +-
src/PVE/HA/Manager.pm | 1 +
.../log.expect | 4 +-
.../log.expect | 38 +++++++++----------
.../log.expect | 4 +-
.../log.expect | 29 +++++---------
.../log.expect | 2 +-
.../log.expect | 2 +-
.../log.expect | 4 +-
.../log.expect | 4 +-
.../log.expect | 4 +-
.../log.expect | 22 +----------
12 files changed, 47 insertions(+), 71 deletions(-)
pve-cluster:
Dominik Rusovac (1):
datacenter config: add maxima for load scheduler options
src/PVE/DataCenterConfig.pm | 2 ++
1 file changed, 2 insertions(+)
Summary over all repositories:
16 files changed, 75 insertions(+), 87 deletions(-)
--
Generated by murpp 0.11.0
next reply other threads:[~2026-04-27 13:21 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-27 13:20 Dominik Rusovac [this message]
2026-04-27 13:20 ` [PATCH proxmox 1/7] resource-scheduling: clamp imbalance value to unit interval Dominik Rusovac
2026-04-27 13:20 ` [PATCH proxmox 2/7] resource-scheduling: re-adjust hardcoded imbalance values Dominik Rusovac
2026-04-27 13:20 ` [PATCH pve-manager 3/7] ui: from/CRSOptions: add maximum for threshold Dominik Rusovac
2026-04-27 13:20 ` [PATCH pve-ha-manager 4/7] test: re-adjust logged imbalance values Dominik Rusovac
2026-04-27 13:20 ` [PATCH pve-ha-manager 5/7] manager: add load imbalance to status Dominik Rusovac
2026-04-27 13:20 ` [PATCH pve-ha-manager 6/7] api: status: " Dominik Rusovac
2026-04-27 13:20 ` [PATCH pve-cluster 7/7] datacenter config: add maxima for load scheduler options Dominik Rusovac
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260427132031.220468-1-d.rusovac@proxmox.com \
--to=d.rusovac@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.