It is discussed in the following thread, but the thread quickly devolved into a shared storage discussion: https://forum.proxmox.com/threads/live-migration-zfs-discard.143824/
I'd like to keep this thread focused solely on the topic of the thread.
When doing a live migration, with discard enabled, VMs being migrated appear to "pre-allocate" the space on the destination host/storage. After the space is pre-allocated, then the actual migration starts. This only occurs, that I can see, with discard enabled.
This is a problem because when it does the pre-allocation it consumes 100% of the disk IO on the destination machine. Which is obviously a big problem that is compounded with huge disks. For example, if a VM has 2TB of disks configured, the migration will pound the storage at the maximum possible rate until the pre-allocation of 2TB is completed.
A few questions:
1. Why does it do this with discard enabled disks?
2. Is there any way to minimize the load? i.e. set "pre-allocation" rate to some reasonable MBps and not flood the IO by default?
3. Is there any way to disable this pre-allocation without disabling discard?
I'd like to keep this thread focused solely on the topic of the thread.
When doing a live migration, with discard enabled, VMs being migrated appear to "pre-allocate" the space on the destination host/storage. After the space is pre-allocated, then the actual migration starts. This only occurs, that I can see, with discard enabled.
This is a problem because when it does the pre-allocation it consumes 100% of the disk IO on the destination machine. Which is obviously a big problem that is compounded with huge disks. For example, if a VM has 2TB of disks configured, the migration will pound the storage at the maximum possible rate until the pre-allocation of 2TB is completed.
A few questions:
1. Why does it do this with discard enabled disks?
2. Is there any way to minimize the load? i.e. set "pre-allocation" rate to some reasonable MBps and not flood the IO by default?
3. Is there any way to disable this pre-allocation without disabling discard?
Last edited: