[CentOS-virt] Preferred method of provisioning VM images

Tue Jun 10 16:21:03 UTC 2014
Lars Kurth <lars.kurth at xen.org>

Hi all,

following the discussion on about documentation, I was wondering whether 
we need to look at a standard way in which we recommend how to provision 
images for VMs. Am starting this with a Xen hat, but the discussion 
should not be specific to this. There are a number of options, but all 
have some trade-offs

== #1 virt-install ==

Advantages: similar to KVM

Disadvantages: may cause weird issues / confusion with people switching 
back to xl. The core issue is that with the current version of xen and 
libvirt, this only works with xm (when xl is used, this can create some 
undefined behavior). However as we have seen in some recent threads on 
this list, people tend to mix which can cause problems.

== #2 xen-tools ==

Advantages: Very flexible. Many other distros use xen-tools, so we have 
lots of beginners docs that just need to be tweaked

Disadvantages: needs porting/packaging for CentOS. Does not work for 
kvm. Says "xen". (Maybe that's an advantage.)
We know that xen-tools works with Fedora (see 
http://blog.xen.org/index.php/2013/01/24/using-xen-tools-on-fedora/), so 
the porting effort may be small

Unknowns: What would be needed to make it work for CentOS

== #3 virt-builder (http://libguestfs.org/virt-builder.1.html) ==

Advantages: supports KVM, Xen and other VM inages. Seems easy to use.
- if so, it would avoid xm / xl confusion.

Unknowns: Not sure at which level virt-builder integrates with Xen and 
other hypervisors. It seems to operate at disk image format (similar to 
xen-tools) . I don't know whether virt-builder is restricted to some 
hypervisors in RHEL7.

Disadvantages: may need porting/packaging for CentOS. It appears as if 
it will be in RHEL7, so it may just appear with CentOS 7. If not, some 
porting work may need to be done.

== #4 Cloud Image from Cloud Image SIG ==
We could rely on pre-built cloud images from the Cloud Images SIG. 
People could just download the cloud image once it's done and customize 
it, rather than installing / building their own.

Advantages: seems easy

Disadvantages: coordination with Cloud Images SIG. May not be flexible 

I just wanted to start a discussion about this and ask for input. This 
topic which has come up a number of times in SIG meetings as a facgtor 
influencing libvirt and other package versions.