On Thu, Jul 14, 2016 at 9:03 PM, Richard W.M. Jones <rjones@redhat.com> wrote:
On Thu, Jul 14, 2016 at 06:54:20PM +0300, Yaniv Kaul wrote:
> Any idea what 'virt-customize' script I should use to convert from
> virtio-blk (vda, vdb...) to virtio-scsi (sda, sdb...) ?

You'll find that you have to recreate the initrd, else it won't boot
(I'm assuming this is a Linux guest).

This is somewhat complicated and involves running some commands from
the guest.  Here's what virt-v2v does, although virt-v2v is especially
complicated because it supports doing this for everything back to RHEL 3(!)
You probably only need to run dracut if you only care about modern
Fedora & RHEL.

  https://github.com/libguestfs/libguestfs/blob/master/v2v/convert_linux.ml#L794-L921

> I've tried naively to convince libvirt to use virtio-scsi and still present
> it to the guest as 'vd*' - that didn't work (

Yeah the target dev names in libvirt XML aren't really arbitrary
strings.  Device names are controlled by the *guest* kernel, nothing
to do with the host which just exports one or another PCI device.

Rich.

Does it make more sense to just use virt-builder and build it from scratch?
I did not find where in virt-builder I can actually specify virtio-scsi as the type. 
(BTW, the reason for all this is mainly to get 'discard' support...)
Y.


--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-top is 'top' for virtual machines.  Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top