From Xen

From the OpenStack Documentation:

"The OpenStack Open Source Cloud Mission: to produce the ubiquitous Open Source Cloud Computing platform that will meet the needs of public and private clouds regardless of size, by being simple to implement and massively scalable."


The OpenStack documentation reads:

"The recommended way to use XAPI with OpenStack is through the XenAPI driver. To enable the XenAPI driver, add the following configuration options to /etc/nova/nova.conf and restart OpenStack Compute: "

compute_driver = xenapi.XenAPIDriver
xenapi_connection_url = http://your_xenapi_management_ip_address
xenapi_connection_username = root
xenapi_connection_password = your_password

"These connection details are used by the OpenStack Compute service to contact your hypervisor and are the same details you use to connect XenCenter, the XenServer management console, to your XenServer or XCP box."

While XAPI is the preferred mechanism for supporting XenServer (and its deprecated sibling XCP), most existing Xen Project integration with OpenStack is done through libvirt below.


As late as 2014, The OpenStack documentation used to read:

"It is possible to manage Xen using libvirt, though this is not well-tested or supported. To experiment using Xen through libvirt add the following configuration options /etc/nova/nova.conf:"

compute_driver = libvirt.LibvirtDriver
virt_type = xen

If your documentation says something like that, it is out of date. Currently, the majority of OpenStack integrations in the market use libvirt to employ the Xen Project hypervisor. SUSE, Ubuntu, and Oracle are all using libvirt in their OpenStack implementations.

As of February of 2015, the recommendation is to install software from the latest trees of both OpenStack and libvirt to make sure that your installation has all the patches needed to make Xen Project run correctly. With current levels of software, your Xen Project-based OpenStack cloud will simply work as expected.

The minimum level of libvirt you should use is 1.2.9; earlier versions will have stability problems.

The project also tests the current development trees against OpenStack Nova and runs a CI loop against OpenStack Nova commits. These tests have uncovered some race conditions, which have been fixed in the Xen mainline and libvirt mainlines and have been released in Xen 4.5.1 and libvirt 1.2.15.


Use the following as a guideline for configuring Xen Project software for use in OpenStack:

Dom0 Memory

Set it between 1GB and 4GB by adding the following parameter to the grub command line:


Dom0 vcpus

Set the virtual CPUs to 4 and employ CPU pinning by adding the following parameters to the grub command line:

dom0_max_vcpus=4 dom0_vcpus_pin

Use LVM for local storage

Set the volume group name in the devstack parameters:


PV vs HVM guests

Use the following OpenStack nova commands to select the virtualization mode:

 nova image-meta <image> set vm_mode=HVM
 nova image-meta <image> set vm_mode=XEN
 nova image-meta <image> delete vm_mode





The following patches must be included in OpenStack to ensure that everything works correctly:

These patches were accepted into Nova in February 2015, so later versions of Nova should be fine.

And, as noted earlier, libvirt should have a minimum version of 1.2.9.