惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

aimingoo的专栏
aimingoo的专栏
人人都是产品经理
人人都是产品经理
M
MIT News - Artificial intelligence
C
Cybersecurity and Infrastructure Security Agency CISA
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
爱范儿
爱范儿
Spread Privacy
Spread Privacy
P
Palo Alto Networks Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
T
The Blog of Author Tim Ferriss
The Cloudflare Blog
WordPress大学
WordPress大学
小众软件
小众软件
H
Help Net Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Blog — PlanetScale
Blog — PlanetScale
V2EX - 技术
V2EX - 技术
H
Hacker News: Front Page
Last Week in AI
Last Week in AI
D
DataBreaches.Net
V
V2EX
S
Securelist
C
CXSECURITY Database RSS Feed - CXSecurity.com
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tenable Blog
Cloudbric
Cloudbric
月光博客
月光博客
Y
Y Combinator Blog
博客园 - 三生石上(FineUI控件)
N
News and Events Feed by Topic
K
Kaspersky official blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
S
Secure Thoughts
S
Security Affairs
W
WeLiveSecurity
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
The Last Watchdog
The Last Watchdog
AI
AI
有赞技术团队
有赞技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 【当耐特】
罗磊的独立博客
Google DeepMind News
Google DeepMind News
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
N
Netflix TechBlog - Medium
PCI Perspectives
PCI Perspectives
SecWiki News
SecWiki News
IT之家
IT之家
Microsoft Azure Blog
Microsoft Azure Blog
V
Visual Studio Blog

Proxmox Support Forum

[SOLVED] - Github Auth for Mirrors-Kernel Repo? [Automation] Mass migration tool for MS Win11/Server Proxmox GUI hang - not response is it possible to reject or quarantine spam based on conditions I set ? The PVENode task list in PVE9 is partially obscured due to the terminal font being too large. About 100% error reporting due to pveproxy.service hooks Kubernetes overlay networking breaks when upgrading from PVE 9.1 to PVE 9.2.3 Zentraler Speicher No space left on device Combine datastore and direct file archival to tape Kernel panic VFS: Unable to mount root fs on unknown-block (0,0) sobald ein 7.x Kernel verwendet wird. How to migrate disk of a VM from one ZFS to another Windows Server 2025 fails to boot after PVE 9.2 / Linux 7.0 Kernel upgrade Cannot Install Proxmox on T610 Poweredge with H700 PERC card sdn Config. gateway not reachable How to safely change domain/FQDN? Welche Filterquote erreicht ihr? NFS Share status unknown on 2 of 5 nodes Can't connect to PVE9 consoles [solved] Can't connect to PVE9 consoles [solved] [SOLVED] - Use secondary network for PVE commands Created cluster, one node storage gone BUG: proxmox mail gateway FROM = null bypass spam filtering Moving existing PBS from VMWare workstation to PVE cluster Does eBGP SDN fabric support external peering? Bug: PDM 1.1 not recognizing valid license status Proxmox GUI hang - not response PVE crashes unexpectedly Proxmox Backup Server 4.2 released! Advice ceph-osd crashes with kernel 6.17.2-1-pve on Dell system [META] Links on Proxmox Forum Website Hardwarer oder Software RAID Joining a cluster with already created guests VM PDM missing backup jobs from PVE / Log retention Remove VM.Monitor from all users/roles, PVE 9.2 Proxmox Freezing (new instalation) 9.2.2 - Intel 12700T No Web gui and random connection reset by peer [SOLVED] - i40e module for X710 Intel NIC Dutch Proxmox Day 2026 How pools use the space Corosync initiiert Reboot trotz Verfügbarkeit der Systeme Opt-in Linux 7.0 Kernel for Proxmox VE 9 available After PVE 8to9 upgrade, unable to check guest fs freeze status Problem with MegaRAID SAS3508 controller proxmox-kernel-7.0.2-6-pve failing network service Auto sync guest time after rollback of VM snapshot with RAM/state Broadcom BCM57504 (100G) bnxt_en TX timeout and NIC reset on Proxmox 8.1.5 — while BCM57414 (25G) works fine on same host QEMU 11.0 available on pve-test and pve-no-subscription as of now 350 MPM Solventless Lamination Machine for High-Speed Flexible Packaging Making sense of NVMe zfs and SMART errors [SOLVED] - PVE loses network connection after kernel upgrade to proxmox-kernel-7.0.0-3-pve [SOLVED] - Remove or reset cluster configuration. Proxmox 8.4.1 Fresh Install BCM57416 10G Ethernet Adapter Not Recognized PDM 1.1.1 unable to add AD realm with anonymous search [TUTORIAL] - Developer Workstation (Proxmox-VE 9) with cinnamon (LMDE7) SDN zone shows "pending" on peer nodes after node reboot (9.2.x) Cluster not quorate - extending auth key lifetime! Proxmox not rebooting properly (SOLVED) Proxmox 9 Stuck on loading initial ramdisk With new HA-Disarm Feature is there a Documentation for NUT Setup on Clusters? Proxmox 8.3 Installation Issue on ProLiant DL380 Gen9 Cluster networking setup LXC System images unavailable [SOLVED] - Fix: NVIDIA Drivers Failing after upgrade to Proxmox 9.2.2 (Kernel 7.0.2-6-pve) / NovaCore Conflict Install NUT directly on Proxmox VE and control guests from here driver usb for windows 7 System startup error and no network: Failed to start ifupdown2-pre.service - Helper to synchronize boot up for ifupdown. PBS backup space grow up constantly Proxmox Datacenter Manager 1.1 released! IPv4 not available in newly created VM Recommended Setup for Offsite Proxmox Backups? Hetzner Storage Box & Remote PBS Challenges duplicate, please delete this passthrought an USB device "by ID" to CT PDM Installer Freezes at 66% Tried PDM for the first time (version 1.1) - had issues PDM 1.1 automated install Suche Server-Provider für Proxmox connecting sdn to edge firewall SDN, IPAM & DHCP Migrating from read-only file system Ubuntu 26.04 installation fails for unknown reason Status Unbekannt nach Cluster Join Installing Proxmox Backup Server on Mac Mini (Late 2012) kernel 7.0 performance issue with zfs pools PVE becomes unreachable via ethernet but OS is running [SOLVED] - New 9.2 install - can't find 7.0.2-6-pve , not all the time [SOLVED] - Backup and dedupe a VM with LUKS Gibt es mit PVE 2.x ggf. Änderungen bei der RAM-Nutzung, bzw. deren Anzeige bei VMs? I need help for setting up backup solution Way more NAGware, very little functionality, bugs galore Root squashing virtiofsd with --uid-map Intel ixgbe Driver Update Fail Passkey Login (not 2FA) Roblox VM detection - can be overcome? [TUTORIAL] - ZFS-Autosnaptshot inkl. Rollback und Daten direkt recovern (Windows/Linux) How to stop PVE Kernel upgrade [SOLVED] - very long waiting to log in to lxc debian 11 ssh [TUTORIAL] - Configuring Fusion-Io (SanDisk) ioDrive, ioDrive2, ioScale and ioScale2 cards with Proxmox Increase maximum USB devices in vm.conf
Questions about the dynamic CRS
invalid@exam · 2026-04-30 · via Proxmox Support Forum

Hello,

I noticed that a dynamic mode was introduced to the CRS (yay! Been waiting for this for so long and it really comes in handy now with us planning our migration away from VMware, thank you so much Team!!!).
I enabled it on all my testing environments and it seemed to work pretty well.

There are two modes the CRS can run in, TOPSIS and "Brute Force" with the latter one being the default. What are the differences in practice between the two modes? Are there scenarios where you should choose one over the other?

In my small test clusters it distributed the load really well, but they are under almost no load CPU and memory wise so I couldn't really try some scenarios yet where ProxLB from credativ would fail in our production environment.
The issue was VMs with big "imbalances" of a lot of RAM and little CPU and vice versa.
What metrics does the CRS take into account? Both memory and CPU? How does it weigh between those (or does it do any weighting at all)?

Hi!

Thanks for the feedback!

The issue was VMs with big "imbalances" of a lot of RAM and little CPU and vice versa.
What metrics does the CRS take into account? Both memory and CPU? How does it weigh between those (or does it do any weighting at all)?

The load balancer takes both memory and CPU in account. Ad weighing, see the next paragraphs.

There are two modes the CRS can run in, TOPSIS and "Brute Force" with the latter one being the default. What are the differences in practice between the two modes? Are there scenarios where you should choose one over the other?

The load balancer can score the balancing migrations by either one of these methods.

The brute-force method (as in 'greedily find the best balancing migration') does currently weigh average CPU load and memory usage as equal. Though it might be weighed differently in the future as well, it is a well-balanced starting point as both resources (CPU and memory) can cause pressure and therefore degradation in resource utilization over time.

The TOPSIS method does weigh memory as more important than the CPU load: a 5:1 ratio for average CPU/memory usage and a 10:5 ratio for CPU/memory peaks to signify that memory is a truly limited resource while high CPU pressure does 'only' degrade the processing time. This is already the method we used for scoring nodes to start new HA resources (if rebalance-on-start is enabled).

The TOPSIS method might be helpful for more memory-bound applications, though as for many applications an equal balance for both resources is useful as well as cpu pressure often being the more common problem, the brute force method is the current default.

Hope this helps!

PS: There is a patch series in review, which overhauls the CRS section itself and adds documentation for the new load balancing system here [0]. External feedback on these patches are also very welcome if things could be made clearer or certain things should be elaborated on more!

[0] https://lore.proxmox.com/pve-devel/20260415091635.162224-20-d.kral@proxmox.com/

Using the GUI to set the HA scheduling to "dynamic load" and checking the "Automatically rebalanceHA resources" leads to this error:

Code:

crs: invalid format - format error crs.ha: value 'dynamic' does not have a value in the enumeration 'basic, static' crs.ha-auto-rebalance: property is not defined in schema and the schema does not allow additional properties

This is on a PVE 9.1.9 (enterprise repo) server. `pve-ha-manager` is installed as version 5.1.3 though? The patch is for 5.2.0+

Last edited:

Also: the docs seem to be missing the difference between the dynamisch and the static load scheduler. And the differences between the "brute force" and "TOPSIS" method. Google AI gave me an answer, but idk if its correct.

There are more patches in the patch series - that explain these. Sorry!

Last edited:

@EllerholdAG my staging clusters are running no-subscription repos and there the 5.2.0 pve-ha-manager is already available. I have yet to roll it out on the enterprise ones.

Hi!

Thanks for the feedback!

The load balancer takes both memory and CPU in account. Ad weighing, see the next paragraphs.

The load balancer can score the balancing migrations by either one of these methods.

The brute-force method (as in 'greedily find the best balancing migration') does currently weigh average CPU load and memory usage as equal. Though it might be weighed differently in the future as well, it is a well-balanced starting point as both resources (CPU and memory) can cause pressure and therefore degradation in resource utilization over time.

The TOPSIS method does weigh memory as more important than the CPU load: a 5:1 ratio for average CPU/memory usage and a 10:5 ratio for CPU/memory peaks to signify that memory is a truly limited resource while high CPU pressure does 'only' degrade the processing time. This is already the method we used for scoring nodes to start new HA resources (if rebalance-on-start is enabled).

The TOPSIS method might be helpful for more memory-bound applications, though as for many applications an equal balance for both resources is useful as well as cpu pressure often being the more common problem, the brute force method is the current default.

Hope this helps!

PS: There is a patch series in review, which overhauls the CRS section itself and adds documentation for the new load balancing system here [0]. External feedback on these patches are also very welcome if things could be made clearer or certain things should be elaborated on more!

[0] https://lore.proxmox.com/pve-devel/20260415091635.162224-20-d.kral@proxmox.com/

Thanks for the insights! Have you thought about a exlude for containers, as these get automatically moved which causes a downtime?

@dakralex Thank you very much for the answer! That clears things up a lot.

As for the modes, I think we will just need to try the modes and see what happens. TOPSIS sounds best for our production clusters as they are usually memory limited.

One thing I would have as feedback is that it is way more "expensive" to do live migrations of VMs with vGPU resources as a migration halts them for extended periods of time (8gb takes ~6s for us, 24gb ~20s etc.). So ideally we would move those last as long as there are better options for shuffling VMs around.
For now I guess I can create an affinity group to "pin" them to one host with higher priority to not get them to balance except for in the case of host failures.

This is on a PVE 9.1.9 (enterprise repo) server. `pve-ha-manager` is installed as version 5.1.3 though? The patch is for 5.2.0+

Yes, some recent security fixes for the pve-manager package forced us to ship the package, which already includes the load balancer options in the web interface, earlier to all repositories, while we're still waiting to move pve-ha-manager 5.2.0 and pve-cluster 9.1.2 to the enterprise repositories as well.

See this post [0] for a little more information.

[0] https://forum.proxmox.com/threads/183143/#post-850798

Thanks for the insights! Have you thought about a exlude for containers, as these get automatically moved which causes a downtime?

Yes, good idea! We already thought about this during development, though we were focusing on the core feature first. Feel free to create a Bugzilla entry [0] for this in the mean time, though as this is relatively trivial to implement and as you said causes downtime while moving and restarting the containers on the target host, this should be included relatively fast.

[0] https://bugzilla.proxmox.com/enter_bug.cgi?product=pve&component=HA

Last edited:

As for the modes, I think we will just need to try the modes and see what happens. TOPSIS sounds best for our production clusters as they are usually memory limited.

One thing I would have as feedback is that it is way more "expensive" to do live migrations of VMs with vGPU resources as a migration halts them for extended periods of time (8gb takes ~6s for us, 24gb ~20s etc.). So ideally we would move those last as long as there are better options for shuffling VMs around.
For now I guess I can create an affinity group to "pin" them to one host with higher priority to not get them to balance except for in the case of host failures.

Thanks for the feedback!

We also thought about including more terms to the "cost function" of a migration, though we mainly focused on the core feature first.

The current load balancing implementation focuses on reducing the imbalance between the nodes as much as possible. The larger the imbalance, usually the more 'expensive' the balancing migrations will be (in terms of memory, etc. and therefore migration time) to minimize the total amount of migrations that are needed to rebalance the HA resources within the cluster. Without knowing the rest of the cluster, in these situations it might be the best option to move these 'heavy' HA resources first. Though it might be expensive if this becomes a transient state, where these HA resources are moved quite often. Does this occur for you?

Hi Daniel, thanks for the reply!

Though it might be expensive if this becomes a transient state, where these HA resources are moved quite often. Does this occur for you?

not right now, no. I was just thinking ahead to the future :D
Right now it is only active on two small 3-node test clusters, one of which has some Nvidia GPUs with NVAIE (yes, works the same as "normal" vGPUs, didn't experience any issues apart from the usual nvidia licensing hell that you experience everywhere). Those clusters and the load on them is pretty static so it is only migrating if we create some new VMs.
Over the next year we will migrate ~900 VMs and ~50 Hosts from VMware to Proxmox VE, the dynamic CRS will definitely be helpful in the bigger clusters and in clusters where K8s does automatic autoscaling of workers. I hope it is stable enough once we get into the larger migrations, currently we are still just testing, planning, adapting code.

But especially in bigger clusters imbalance might happen more often. There are currently some ways to tune the dynamic CRS with minimum imbalance improvement and threshold so it doesn't go too crazy and I read somewhere on one of the mailings that there are plans to do "better" statistics to filter out short peaks etc. which should also help.
Migrations are always "costly" in terms of performance, for normal VM migrations it isn't too big of a deal as long as it doesn't happen too often, freezes are sub 1s. For vGPUs the freeze when copying the vfio memory is just a lot longer so you might actually notice it.
I think the suggestion @jsterr made would also help for now, we could just not actively migrate the VMs that have GPUs attached.

One more question about the calculations done: I know the dynamic CRS only migrates resources managed by the HA Manager. But how does it calculate the host resource usage? Does it only take the ha managed resources into account or the "general" host CPU/Memory usage which also contains non-ha VMs or other processes like Ceph?

Thank you!

Hi!

Thanks for the feedback!

The load balancer takes both memory and CPU in account. Ad weighing, see the next paragraphs.

The load balancer can score the balancing migrations by either one of these methods.

The brute-force method (as in 'greedily find the best balancing migration') does currently weigh average CPU load and memory usage as equal. Though it might be weighed differently in the future as well, it is a well-balanced starting point as both resources (CPU and memory) can cause pressure and therefore degradation in resource utilization over time.

The TOPSIS method does weigh memory as more important than the CPU load: a 5:1 ratio for average CPU/memory usage and a 10:5 ratio for CPU/memory peaks to signify that memory is a truly limited resource while high CPU pressure does 'only' degrade the processing time. This is already the method we used for scoring nodes to start new HA resources (if rebalance-on-start is enabled).

The TOPSIS method might be helpful for more memory-bound applications, though as for many applications an equal balance for both resources is useful as well as cpu pressure often being the more common problem, the brute force method is the current default.

Hope this helps!

PS: There is a patch series in review, which overhauls the CRS section itself and adds documentation for the new load balancing system here [0]. External feedback on these patches are also very welcome if things could be made clearer or certain things should be elaborated on more!

[0] https://lore.proxmox.com/pve-devel/20260415091635.162224-20-d.kral@proxmox.com/

I might have missed it, but can you explain the difference between static and dynamic load-balancing regarding the new rebalancing feature? I cant find it in the mailing-list or current docs?

One more question about the calculations done: I know the dynamic CRS only migrates resources managed by the HA Manager. But how does it calculate the host resource usage? Does it only take the ha managed resources into account or the "general" host CPU/Memory usage which also contains non-ha VMs or other processes like Ceph?

I might have missed it, but can you explain the difference between static and dynamic load-balancing regarding the new rebalancing feature? I cant find it in the mailing-list or current docs?

I'll answer both questions in one, because they're quite related: The scheduling mode (basic, static-load, dynamic-load) specifies which measure is used to compare nodes and HA resources against each other:

  • For the basic mode, it's simply how many running guests are on the nodes.
  • For the static-load mode, it's how much CPU and memory the running guests have allocated statically (i.e., the quotas set in the guest configs with cores, sockets, memory, etc.).
  • For the dynamic-load mode, it additionally accounts for the actual current CPU and memory usage of each running guest and the node itself.

This scheduling mode is used for the load balancer, as well as other HA-related scheduling points, such as initial placement rebalancing (while starting HA resources), HA resource recovery, maintenance mode, etc.

The automatic rebalancing system can only be used in conjunction with the static-load and dynamic-load mode. So with the static-load mode, the system will actively rebalance according to the quotas set in the config (which might also change while guests are running if CPU/memory hotplugging is enabled). While with the dynamic-load mode, the system actively rebalances according to the current actual usage.

The rebalancing migrations are chosen by picking from the pool of migratable HA resources with their possible targets and predicting which will lower the imbalance the most in the forseeable future. In dynamic-load mode, the node usages currently also include the CPU/memory usages for Ceph, ZFS, etc., to accomodate these usage requirements as well.

Hi Daniel,

please could you explain how dynamic load CRS imbalance is calculated?
Value is displayed in "Datacenter / HA / Status / master" when dynamic CRS is active.

BR
Marcus

please could you explain how dynamic load CRS imbalance is calculated?
Value is displayed in "Datacenter / HA / Status / master" when dynamic CRS is active.

Hi!

The cluster imbalance is derived from the standard deviation and mean of the individual node loads and is normalized to a 0-100% range. [0]

In more detail, each node's current cpu and memory usage is normalized with its own capacity (i.e. cpu_load = current_cpu / max_cpu and memory_load = current_memory / max_memory), where the node's current load is then a equal-weighted average of that (i.e. (cpu_load + memory_load) / 2.

The cluster imbalance is then the normalized coefficient of variation, which is the standard deviation of the current node loads divided by the average mean of the current node loads. To normalize the coefficient of variation, this is divided once more by the square root of the cluster size minus 1 (i.e. (std / mean) / sqrt(n - 1)).

[0] https://pve.proxmox.com/pve-docs/chapter-ha-manager.html#_crs_load_balancer

Hi Daniel,

thanks for the reply. And sorry for not "RTFM" ... but that would not have answered my question 100% anyway. :cool:

BR
Marcus

No worries, and the manual can always be improved though I didn't put in the technical explanation from above as it felt too specific. If it's useful there as well, I can certainly find a way to put it there without being too distracting from the main functionality ;)

Practical problem is finding those thresholds for your specific cluster size and workload.
So I think any information is helpful for an educated guess of needed threshold values.

Maybe "Advanced" checkbox for documentation like we have for configuration :).

If it's useful there as well, I can certainly find a way to put it there without being too distracting from the main functionality

This is absolutely needed and has to be very precise. I.e. which exact metric is used for both CPU and Memory "loads": CPU load vs CPU usage vs CPU pressure, Mem usage vs Mem pressure.

Currently testing CRS in lab and it seems to allow a node to be 100% CPU usage while another is sitting idle with no VMs. Understanding the details will help predict the behavior, figure out corner cases and report improvements.