Hey everyone,
I'm currently struggling with an issue and I'm not entirely sure how to best approach it.
My Proxmox host has two separate storage pools: one based on SSDs and the other one on HDDs. Most of my VMs use only the SSD storage, but a few use both SSD and HDD storage.
The problem occurs when a VM that has access to the HDD storage starts using it heavily which is obviously causing the IO delay on the host to increases significantly.
What’s annoying is that this delay also strongly affects VMs that are only using the SSD storage, even though those disks shouldn't be bottlenecked.
I assume this that when a VM using HDD storage is waiting on IO, those delays increase the overall system load, which in turn impacts other VMs, even those running entirely on SSDs.
At the moment I I see two potential workarounds.
Throttle the HDD VMs by limiting IOPS and bandwidth to a level that prevents noticeable IO delay.
Or use CPU affinity to isolate SSD-only and HDD-using VMs, hoping that separating their CPU resources reduces contention.
That said, I’m not happy with either solution. Throttling IOPS limits performance to below what the HDDs can actually handle.
Using the CPU affinity feature would introduce configuration overhead and reduce my ability to effectively balance load across all CPU cores.
Has anyone encountered a similar situation or found a better way to mitigate this kind of interference between different storage pools?
Any insights or suggestions would be greatly appreciated!
I'm currently struggling with an issue and I'm not entirely sure how to best approach it.
My Proxmox host has two separate storage pools: one based on SSDs and the other one on HDDs. Most of my VMs use only the SSD storage, but a few use both SSD and HDD storage.
The problem occurs when a VM that has access to the HDD storage starts using it heavily which is obviously causing the IO delay on the host to increases significantly.
What’s annoying is that this delay also strongly affects VMs that are only using the SSD storage, even though those disks shouldn't be bottlenecked.
I assume this that when a VM using HDD storage is waiting on IO, those delays increase the overall system load, which in turn impacts other VMs, even those running entirely on SSDs.
At the moment I I see two potential workarounds.
Throttle the HDD VMs by limiting IOPS and bandwidth to a level that prevents noticeable IO delay.
Or use CPU affinity to isolate SSD-only and HDD-using VMs, hoping that separating their CPU resources reduces contention.
That said, I’m not happy with either solution. Throttling IOPS limits performance to below what the HDDs can actually handle.
Using the CPU affinity feature would introduce configuration overhead and reduce my ability to effectively balance load across all CPU cores.
Has anyone encountered a similar situation or found a better way to mitigate this kind of interference between different storage pools?
Any insights or suggestions would be greatly appreciated!