OpenStack: Difference between revisions

From Xen
Jump to navigationJump to search
 
(4 intermediate revisions by 3 users not shown)
Line 34: Line 34:
The minimum level of libvirt you should use is 1.2.9; earlier versions will have stability problems.
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 [[OpenStack_CI_Loop_for_Xen-Libvirt|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.
The project also tests the current development trees against OpenStack Nova and runs a [[OpenStack_CI_Loop_for_Xen-Libvirt|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.


== TUNING ==
== TUNING ==
Line 51: Line 51:
=== PV vs HVM guests ===
=== PV vs HVM guests ===
Use the following OpenStack '''nova''' commands to select the virtualization mode:
Use the following OpenStack '''nova''' commands to select the virtualization mode:
nova image-meta set vm_mode=HVM
nova image-meta <image> set vm_mode=HVM
nova image-meta delete vm_mode
nova image-meta <image> set vm_mode=XEN
nova image-meta <image> delete vm_mode


== HOWTOs ==
== HOWTOs ==
Line 59: Line 60:
* Getting Started document for [http://www.oracle.com/technetwork/server-storage/vm/ovm-linux-openstack-2202503.pdf OpenStack using Oracle VM] (which uses the Xen Project Hypervisor)
* Getting Started document for [http://www.oracle.com/technetwork/server-storage/vm/ovm-linux-openstack-2202503.pdf OpenStack using Oracle VM] (which uses the Xen Project Hypervisor)
* Using [https://wiki.linaro.org/OpenStack/DevstackOnXenARM OpenStack with Xen Project on ARM64] on the Linaro Wiki
* Using [https://wiki.linaro.org/OpenStack/DevstackOnXenARM OpenStack with Xen Project on ARM64] on the Linaro Wiki
* [http://empt1e.blogspot.co.uk/2015/06/openstack-on-freebsdxen-proof-of-concept.html OpenStack on FreeBSD/Xen Project Proof of Concept] on Roma's blog


== DOCUMENTATION ==
== DOCUMENTATION ==

Latest revision as of 01:55, 27 August 2015

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."

USING XAPI

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.

USING LIBVIRT

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
[libvirt]
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.

TUNING

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_mem=1024M

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:

 VOLUME_GROUP=volume_group_name

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

HOWTOs

DOCUMENTATION

PRESENTATIONS

PATCHES

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.