IO [iops bw] fair balancing between multiple VM on ZFS ZVOL


New Member
Feb 3, 2022
Good day.
Is there best practice how to configure fair balancing io requests from multiple VM when block device in zpool 100% loaded?
Thank you.
Gather some disk usage statistics and/or benchmark your pool at 4k random and 1M sequential blocks to get an idea of your pool capabilities. Then define IOPS and bandwidth limits for your VMs.

Burst limits can be seen as time (i will use 0.2s as an example). Then use simple math to derive burst limit values from IOPS and BW limits (500 IOPS * 0.2s = 100 ops and 100 MB/s * 0.2s = 20 MB).
@mvs thanks for reply
In your config one VM can't use all IO pool capabilities.
I think group limits can be used, but i can't find how to configure it in Proxmox.
Proxmox VE has no group limits or group quotas.

There is a workaround to enforce group quotas using ZFS capabilities (one ZFS dataset per group + ZFS quotas). Theoretically you could do the same with limits, but it seems that limits are not implemented in ZoL/OpenZFS.
  • Like
Reactions: Dunuin


The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!