QuantumDevstackOvsXcp

Install XCP
Installation has been tested with XCP 1.6, which can be downloaded here (http://www.xen.org/download/xcp/index_1.6.0.html).

Presuming installation in a virtual machine:


 * ensure that nested virtualization is configured
 * ensure that 2 hard disks of type scsi are available
 * 1 for xcp installation (10gb dynamic allocation suggested)
 * 1 for vm storage (40gb dynamic allocation suggested)

NOTE - OpenStack requires that virtual machine storage be ext. To specify this, select "Enable thin provisioning (Optimised storage for XenDesktop)".

NOTE - The following setup assumes that the XCP machine is connected to a network with a DHCP server, on its eth0. This network will be used as a Management network for the OpenStack installation. Also that network will be used for netinstalling the ubuntu VM. Please note, that if you ran previously a devstack, you might run into issues, as some of your network configuration is hard-coded to saved templates. To avoid using your old templates, make sure, that CLEAN_TEMPLATES is set to True. This will make the installation longer, because a brand new Ubuntu installation will take place. This is an issue, that will be addressed, as part of xenapi devstack cleanup

Your public and your VM networks will not be connected to any interfaces of your XCP box.

Configure a Storage Repository
To configure a storage repository, login as root to the dom0 host and execute the following:

$ xe host-list
 * 1) List the machine’s UUID

$ xe sr-create host-uuid= content-type=user name-label=”Local EXT3 SR” shared=false device-config:device=/dev/sdb type=ext
 * 1) Create an EXT storage repository (SR) with thin provisioning support and direct access to the VHD files.
 * 2) This example uses /dev/sdb, but this may differ for your host.

$ xe sr-list $ xe sr-param-set uuid= other-config:i18n-key=local-storage
 * 1) Set the SR to use thin provisioning. Otherwise, nova won’t be able to find the SR when it needs to write to disk.
 * 2) Look for 'Local EXT3 SR', making note of the associated UUID.

$ xe pool-list $ xe pool-param-set uuid= default-SR=
 * 1) Set the configured SR as the default.

Install OpenStack
Execute the following script on your workstation. Please note, that the script below is a hardcopy of this one: CI test script (automated test runs removed). This picture might help to understand what components are installed.

The initial run of devstack may take a long time (depending on the available internet connection), since devstack has to create a new VM (domU) and install ubuntu on it before installing OpenStack. Devstack saves the domU VM as a template after the first install, so subsequent runs will be much faster. If issues occur during installation (an unfortunately common occurrence when XCP is running in a VM), the XenCenter tool (unfortunately Windows-only) will aid in troubleshooting the problem.

Devstack should provide instructions once installation has completed as to how to log in to the domU instance, which will be the equivalent of a regular devstack'd host.

Verify with tempest
After a successful devstack run using the provided localrc, tempest can be used to verify that Quantum+OVS+XCP can correctly provision networking to OpenStack VM's. To run the quantum smoke tests, execute the following in domU:

$ cd /opt/stack/tempest $ nosetests tempest/scenario/test_network_basic_ops.py

Verify with exercise
To verify that the setup is working, you can run quantum-adv-test. I choose to move away all the other files, so that quantum is the only one that runs:

Please note, that I had to increase the BOOT_TIMEOUT to get these tests passing. At the moment, it is set to an extreme high value, 500 (see the script above)