Thanks for the suggestions Eric, great stuff and most
appreciated.
I will have a play in my sandbox...
On 2018-05-01 02:31 PM, Eric Blake
wrote:
On
05/01/2018 04:17 PM, Paul O'Rorke wrote:
I have been using internal snapshots on
production qcow2 images for a couple of years, admittedly as
infrequently as possible with one exception and that exception
has had multiple snapshots taken and removed using
virt-manager's GUI.
I was unaware of this:
There are some technical downsides to
internal snapshots IIUC, such as inability to free the space
used by the
internal snapshot when it is deleted,
This is not an insurmountable difficulty, just one that no one has
spent time coding up.
This might explain why this VM recently kept going into a paused
state and I had to extend the volume to get it to stay up. This
VM is used for testing our software in SharePoint and we make
heavy use of snapshots. Is there nothing I can to do recover
that space?
If you have no internal snapshots, you can do a 'qemu-img convert'
to copy just the portion of the image that is actively in use; the
copy will use less disk space than the original because it got rid
of the now-unused space. 'virt-sparsify' from libguestfs takes
this one step further, by also removing unused space within the
guest filesystem itself.
In fact, even if you do have internal snapshots, there is probably
a sequence of 'qemu-img convert' invocations that can ultimately
convert all of your internal snapshots into an external chain of
snapshots; but I don't have a ready formula off-hand to point to
(experiment on an image you don't care about, before doing it on
your production image).
What would be the best practice then for a
VM that needs to be able to create and remove snapshots on a
regular basis?
In a managed environment, external snapshots probably have the
most support for creating and later merging portions of a chain of
snapshots, although we could still improve libvirt to make this
feel like more of a first class citizen.
|
_______________________________________________
libvirt-users mailing list
libvirt-users@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvirt-users