Hi Dave,

Your suggestion ties in nicely which a proposal that I have been mulling over; 
and that is further abstraction of the hypervisor, by CloudStack becoming more 
‘toolset agonistic’ to use Xen parlance, rather than hypervisor agnostic?

It seems quite an elegant solution to expanding hypervisor support (which easy 
for me to say as I don't know how to do it)…

The current toolsets / interfaces become something like:

OVM Manager (OVM)
vCenter (ESXi)
XAPI (XenServer, XCP, Xen+XAPI)
Libvirt (KVM, Xen+Libvirt, QEMU)
WMI/PowerShell (Hyper-V)

+ a bit of logic when copying scripts across to put them in the correct 
location for any given hypervisor/distribution.



Regards,

Paul Angus
S: +44 20 3603 0540 | M: +447711418784
paul.an...@shapeblue.com

-----Original Message-----
From: dcah...@midokura.jp [mailto:dcah...@midokura.jp] On Behalf Of Dave Cahill
Sent: 08 February 2013 09:34
To: cloudstack-dev@incubator.apache.org
Subject: QEMU support in CloudStack

Hi,

Recently I encountered two "nested virtualization" use cases which made me want 
QEMU hypervisor support in CloudStack. I'm interested to hear if anyone else is 
interested in this feature, and any notes on how it should be implemented.

Here is a good explanation from OpenStack docs [2] on why they support QEMU:
"From the perspective of the Compute service, the QEMU hypervisor is very 
similar to the KVM hypervisor. Both are controlled through libvirt, both 
support the same feature set, and all virtual machine images that are 
compatible with KVM are also compatible with QEMU. The main difference is that 
QEMU does not support native virtualization. Consequently, QEMU has worse 
performance than KVM and is a poor choice for a production deployment."

Here are the use cases I encountered:

[Use case: Dev environment]
    Wanted to use Vagrant [1] to create a portable multi-node dev environment; 
however Vagrant uses VirtualBox, which doesn't support KVM.
    Also, devcloud uses VirtualBox and devcloud-kvm uses kvm-within-kvm. I 
imagine maintenance of devcloud and devcloud-kvm would be easier if 
devcloud-kvm could use VirtualBox too.
    Note: Of course, I'm aware of devcloud-kvm as an alternative for this use 
case, and I'll be looking into that next.

[Use case: Demo environment]
    We may want to spin up a multi-node CloudStack install in Amazon AWS for 
demo purposes.
    Again, AWS instances don't support KVM, so this is not possible without 
QEMU support.

[Implementation ideas]
    The management server currently does a check for KVM support ("kvm-ok") on 
the host, and refuses to add the host if that fails. I think this check could 
be removed, as the agent setup scripts will fail anyway if the user is trying 
to setup a certain hypervisor on a machine which doesn't support it.
    Create a new setting in agent.properties like "use_qemu", with a default of 
"false". If the person deploying CloudStack agent sets this to "true", 
cloud-setup-agent and other setup scripts would ignore lack of KVM support as 
long as QEMU support was available.
    Lastly, when creating the libvirt XML file for a VM, set hypervisor to QEMU 
rather than KVM in the XML file depending on the config setting.

Thanks for reading,
Dave.

[1] http://www.vagrantup.com/
[2]
http://docs.openstack.org/trunk/openstack-compute/install/yum/content/qemu.html
ShapeBlue provides a range of strategic and technical consulting and 
implementation services to help IT Service Providers and Enterprises to build a 
true IaaS compute cloud. ShapeBlue’s expertise, combined with CloudStack 
technology, allows IT Service Providers and Enterprises to deliver true, 
utility based, IaaS to the customer or end-user.

________________________________

This email and any attachments to it may be confidential and are intended 
solely for the use of the individual to whom it is addressed. Any views or 
opinions expressed are solely those of the author and do not necessarily 
represent those of Shape Blue Ltd. If you are not the intended recipient of 
this email, you must neither take any action based upon its contents, nor copy 
or show it to anyone. Please contact the sender if you believe you have 
received this email in error. Shape Blue Ltd is a company incorporated in 
England & Wales.

Reply via email to