On Tue, May 17, 2016 at 09:50:07PM +0300, Nir Soffer wrote:
On Tue, May 17, 2016 at 7:14 PM, Shmuel Melamud
<smelamud(a)redhat.com> wrote:
> Hi!
>
> There is an RFE being implemented currently (
>
https://bugzilla.redhat.com/show_bug.cgi?id=734120) to use --inplace
> option in virt-sparsify to sparsify a disk image in-place, without copying
> it.
>
> The problem is that in-place sparsify works on NFS only starting from NFS
> 4.2, while the copying implementation supposedly works with any storage.
>
> From my point of view, it is better to remove the old code and start with
> the new code that uses --inplace and just add to document that one will
> need NFS >= 4.2 for sparsify feature to work. Although the old
> implementation exists, it is not used currently so there are no actual
> users that may be affected by the change. If it will be a crying need to
> use sparsify on older NFS or some other incompatible storage, we can add it
> later on the base of the new code. The old code is far from ideal and we
> will need to rewrite it in any case, and there is not sense to do this
> without real need.
>
Richard,
Currently vdsm is using:
virt-sparsify --tmp prebuilt:tmp_vol --format src_format --convert
dst_format src_vol dst_vol
(--format and --dst_format are optional)
tmp_vol, src_vol, and dst_vol can be either file on nfs/glusterfs/other
posix shared filesystem,
or an lv created on top of lun (iscsi/fc).
can you confirm this method works on all the storage types I mentioned? or
this depends
on the underlying storage server?
Copying mode requires that the dst_vol supports sparseness. The most
common case where this would *not* be true is partitions on local hard
disks. You can't make a partition and/or local hard disk sparse.
However all of the ones you've mentioned above support sparseness, so
you should be good.
*If* you were using --inplace only, you could nuke the --tmp option,
and indeed all the code associated with "prebuilt" qcow2 files for
scratch space.
That's because --inplace mode uses hardly any temporary storage, so
you can just have it use regular /var/tmp or $TMPDIR.
However ...
The new inplace method is much nicer, but something that works only
on
latest NFS version
is not useful for our most important users, using block storage.
... it's a shame, but yes.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-p2v converts physical machines to virtual machines. Boot with a
live CD or over the network (PXE) and turn machines into KVM guests.
http://libguestfs.org/virt-v2v