-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: Balance based on assigned resources instead of current usage #16
Comments
Hey @daanbosch, thanks for this feature request. I will check how much changes are required to implement this and check if this is doable for release 1.0.0 or 1.1.0. Will update this request soon with more information. Thanks, |
Hey @daanbosch VM Rebalancing by Total ValueWith the new param This is currently available in PR #19 and should be merged soon. It will take place with release 1.0.0. @daanbosch Can you please give it a try and let me know if I fully understood your request for this feature? Thanks! Cheers, |
Oh amazing! Going to test this right away! |
Hmm the number I'm getting are pretty odd:
Settings:
Also tried it with CPU:
VM's:
|
Thanks, I just pushed a fix. Can you give it a try, please? It does not make any sense to validate the current resources for balanciness when using total values: However, this should work but still requires additional changes. Current disadvantage of this one is, that it will rebalance almost always the VMs. I need to adjust the test cluster and integrate further changes. |
Hmm now it wants to move every vm to node2 based on cpu (testproxlb2 is already on node 2) in this scenario.
For the memory run:
This would be correct, however it does not really make sense to swap testproxlb2 and testproxlb3. However it seems to be going in the right direction! Thanks! |
Yeah, that was what I meant with:
I'll probably have a look at this on Monday. |
Just had a look at it this morning and decided to integrate this in a proper way which requires more restructuring in the code than previously assumed with more validations because it also already killed a node in my cluster in my test ;) I'm already working on that and will push it when it is ready in a usable way. |
Hey @daanbosch, maybe you can give #23 a try by time. Currently, there's still a small issue included, where it might need to do an initial rebalance and works right away in the second run. This is something I'm still looking into... Thanks, |
Hey @daanbosch,
Happy to hear! I'll add some more improvements asap so that this should also immediately work in the first run. I encountered additional issues with the API and I can only rely on the (updated) information in the API to recalculate the best placement for VMs. You might also see a race condition, when retriggering that command too fast that you get inconsistent/outdated data from the API. While ProxLB is working stateless, this is an issue (maybe solvable by writing some state files in the filesystem, because I really like to avoid using any databases for this small service). Cheers, |
…resources feature: Add option to rebalance VMs by their assigned resources. [#16]
Overview
For my use case, virtual machines (VMs) often exhibit bursty behavior, and moving them is not always feasible due to business constraints. Therefore, I request the ability to balance load based on the assigned CPU and memory resources instead of the current usage metrics.
Task
Implement functionality in Proxmox that allows load balancing to consider the assigned CPU and memory resources for VMs, rather than relying solely on current usage values.
Modify the load balancing algorithm to incorporate the assigned CPU and memory resources of VMs.
Ensure the algorithm can dynamically allocate VMs to hosts based on these assigned resource values.
Configuration Options:
Provide configuration settings to toggle between using current usage and assigned resource values for load balancing.
The text was updated successfully, but these errors were encountered: