On a Friday in 2021, Peter Krempa wrote:
Non-shared storage migration of guests which are disk I/O intensive and
have fast local storage may actually never converge if the guest happens
to dirty the disk faster than it can be copied.

This patch introduces a new flag
'VIR_MIGRATE_NON_SHARED_SYNCHRONOUS_WRITES' which will instruct
hypervisors to synchronize local I/O writes with the writes to remote
storage used for migration so that the guest can't overwhelm the
migration. This comes at a cost of decreased local I/O performance for
guests which behave well on average.

Signed-off-by: Peter Krempa <pkre...@redhat.com>
---
docs/manpages/virsh.rst          |  6 +++++-
include/libvirt/libvirt-domain.h | 10 ++++++++++
src/libvirt-domain.c             | 20 ++++++++++++++++++++
tools/virsh-domain.c             | 13 +++++++++++++
4 files changed, 48 insertions(+), 1 deletion(-)

diff --git a/docs/manpages/virsh.rst b/docs/manpages/virsh.rst
index 7c50388216..1ce3e77c9f 100644
--- a/docs/manpages/virsh.rst
+++ b/docs/manpages/virsh.rst
@@ -3180,7 +3180,7 @@ migrate
      [--postcopy-bandwidth bandwidth]
      [--parallel [--parallel-connections connections]]
      [--bandwidth bandwidth] [--tls-destination hostname]
-      [--disks-uri URI]
+      [--disks-uri URI] [--copy-storage-synchronous-writes]

Migrate domain to another host.  Add *--live* for live migration; <--p2p>
for peer-2-peer migration; *--direct* for direct migration; or *--tunnelled*
@@ -3202,6 +3202,10 @@ images on source host to the images found at the same 
place on the destination
host. By default only non-shared non-readonly images are transferred. Use
*--migrate-disks* to explicitly specify a list of disk targets to
transfer via the comma separated ``disk-list`` argument.
+With *--copy-storage-synchronous-writes* flag used the disk data migration will
+synchronous handle guest disk writes to both the original soure and the

synchronously

+destination to ensure that the disk migration coverges at the price of possibly

converges

+decreased burst performance.

*--change-protection* enforces that no incompatible configuration changes will
be made to the domain while the migration is underway; this flag is implicitly

Jano

Attachment: signature.asc
Description: PGP signature

Reply via email to