This patch-series adds support for bandwidth limits to: * qemu-server for: * online migration (including local volumes) * offline migration (consisting of only local volumes) * online clone_vm * online move_vm_disk
* pve-container for: * migration (only offline) * clone_vm * move_volume AFAIS the following operations still ignore the bwlimits configured: * Migration with replicated volumes * replication (which has its 'rate' parameter per job, but probably should also honor the 'migrate' bwlimit) * Qemu offline clone and move_vm_disk - this codepath currently uses `qemu-img convert` (which has no rate-limiting parameter (yet)) and swapping this for 'dd', 'pvesm export/import' would lose the ability of `qemu-img` to preserve sparse-files (I quickly tested it with a lvmthin volume where qemu-img kept it sparse) - I'd be grateful for a pointer if/how this could work, or if I missed something! Additionally my (quick and limited) tests showed that qemu's drive-mirror seems to have a discrepancy between the set 'speed' parameter and the actual speed (IIRC setting the speed to 10MB/s, consistently moved the data with 8MB/s), however I stuck to the documentation (speed parameter is in bytes/s). The patch for pve-storage is a small fix for a conditional in get_bandwidth_limits, enabling us to pass 'undef', additionally to '[]', if we don't care about limits set on storages. pve-storage: Stoiko Ivanov (1): Storage::get_bandwidth_limit: fix if condition PVE/Storage.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) qemu-server: Stoiko Ivanov (7): bwlimit: honor bwlimit for migrate qmp call bwlimit: add parameter to qemu_drive_mirror bwlimit: add parameter to QemuMigrate::sync_disks bwlimit: add parameter for QemuMigrate:phase2 add todo comment for bwlimits in clone_disk bwlimit: add parameter to QemuServer:clone_disk bwlimit: add parameter to API2 calls PVE/API2/Qemu.pm | 28 ++++++++++++++++++++++++++-- PVE/QemuMigrate.pm | 22 +++++++++++++++++----- PVE/QemuServer.pm | 15 +++++++++++---- 3 files changed, 54 insertions(+), 11 deletions(-) pve-container: Stoiko Ivanov (3): bwlimit: add parameter to LXC::Migrate bwlimit: add parameter to rsync in copy_volume bwlimit: add parameter to API2 calls src/PVE/API2/LXC.pm | 30 +++++++++++++++++++++++++++--- src/PVE/LXC.pm | 10 ++++++---- src/PVE/LXC/Migrate.pm | 5 ++++- 3 files changed, 37 insertions(+), 8 deletions(-) -- 2.11.0 _______________________________________________ pve-devel mailing list [email protected] https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
