Andreas Buschmann
2015-Apr-29 16:09 UTC
[libvirt-users] Semantics of "virsh migrate --copy-storage-all" vs. --copy-storage-inc
Hello, what is really the difference between virsh migrate --copy-storage-all and virsh migrate --copy-storage-inc ? There are some documents talking about NBD snapshots, but the user visible semantics are incomplete. Where does the incremental stuff happen? Does it require qcow2 files? Does it work with raw files? Does "--copy-storage-inc" require existing snapshots? Does "--copy-storage-inc" require existing snapshots which are in an external file so that there is a visible chain [base] <- [sn1] <- [sn2] Background: I am trying to understand what really happens, so I can use the tools for a reasonable fast failover between two servers with local storage. more Background: I have VMs and bare metal servers which do use expensive shared storages like NetApp, EMC² VNX, HP and others, but the shared storage boxes all require customer visible maintenance downtimes every 12 to 20 month. And these downtimes take a long lead time and are between 01:00 and 05:00. Mit freundlichen Gruessen Andreas Buschmann -- Andreas Buschmann [Senior Systems Engineer] net.DE AG
Eric Blake
2015-Apr-29 16:37 UTC
Re: [libvirt-users] Semantics of "virsh migrate --copy-storage-all" vs. --copy-storage-inc
On 04/29/2015 10:09 AM, Andreas Buschmann wrote:> Hello, > > what is really the difference between > virsh migrate --copy-storage-all > and > virsh migrate --copy-storage-inc > ?If you use qcow2 backing chains for thin provisioning, as in: base.qcow2 <- active.qcow2 then --copy-storage-all copies the entire disk over to the destination (both base.qcow2 and active.qcow2 contents), while --copy-storage-inc copies only active.qcow2 (and assumes you have manually copied base.qcow2 in some other means - since it is read-only, it won't change from the last migration, and there are some storage arrays where you can very efficiently copy files around). Thus, --copy-storage-inc can be MUCH faster if active.qcow2 represents a small delta in relation to base.qcow2.> > There are some documents talking about NBD snapshots, but the user > visible semantics are incomplete.The above conversation is independent of NBD snapshots, which are something else altogether.> > Where does the incremental stuff happen? > Does it require qcow2 files?The active layer has to be able to have backing images (qcow2 is the most common format that has this property, but other formats like qed also work). The backing file can be any format.> Does it work with raw files?Raw files can't have backing images, so there is nothing incremental to be copied.> Does "--copy-storage-inc" require existing snapshots?No. It requires existing backing files. 'virsh snapshot-create' for creating external snapshots is one way to create backing file chains, but you can have backing chains without using libvirt snapshot chains to create them.> Does "--copy-storage-inc" require existing snapshots which are in an > external file so that there is a visible chain [base] <- [sn1] <- [sn2]Yes.> > > Background: > I am trying to understand what really happens, so I can use the tools > for a reasonable fast failover between two servers with local storage. > > more Background: > I have VMs and bare metal servers which do use expensive shared storages > like NetApp, EMC² VNX, HP and others, but the shared storage boxes all > require customer visible maintenance downtimes every 12 to 20 month. > And these downtimes take a long lead time and are between 01:00 and 05:00. > > Mit freundlichen Gruessen > Andreas Buschmann >-- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Seemingly Similar Threads
- unhelpful error message on failed "virsh migrate"
- non failover equivalent to "virsh migrate --copy-storage-all"
- SuSE 10 dom0 network and console problem
- drive-backup command permission denied.. and need some clarification
- Re: drive-backup command permission denied.. and need some clarification