Xen Cloud Platform Drivers for OpenNebula 3.0
The Xen Cloud Platform Drivers enable the management of an OpenNebula cloud based on the XCP.
The Xen Cloud Platform (XCP) is an open source enterprise-ready server virtualization and cloud computing platform, delivering the Xen Hypervisor with support for a range of guest operating systems including Windows® and Linux® network and storage support, management tools in a single, tested installable image, which is also called XCP appliance. XCP addresses the needs of cloud providers, hosting services and data centers by combining the isolation and multi-tenancy capabilities of the Xen hypervisor with enhanced security, storage and network virtualization technologies to offer a rich set of virtual infrastructure cloud services. The platform also address user requirements for security, availability, performance and isolation across both private and public clouds.
The XCP Drivers enables the management of an OpenNebula cloud based on XCP. It uses the “xe” command line tool to invoke the XAPI interface exposed by the XCP hypervisors, and features a simple installation process that will leverage the stability, performance and feature set of any existing VMware based OpenNebula cloud.
Acknowledgments: These new components have been developed with the support of Xen.org.
In order to install the XCP Drivers, some software dependencies have to be met in the front-end:
Installation of the drivers is done from the source code tarball. Afterwards, with a user with sudo permissions, type the following to install the software:
tar xzf <filename-of-the-downloaded-tarball> sudo <created-directory>/install.sh
OpenNebula main configuration file needs to be edit to include the XCP Drivers. The following must be added to /etc/one/oned.conf:
#------------------------------------------------------------------------------- # XCP Driver Addon Virtualization Driver Manager Configuration #------------------------------------------------------------------------------- VM_MAD = [ name = "vmm_xenserver", executable = "one_vmm_sh", arguments = "xenserver", default = "vmm_sh/vmm_sh_xenserver.conf", type = "xml" ] #------------------------------------------------------------------------------- # XCP Driver Addon Information Driver Manager Configuration #------------------------------------------------------------------------------- IM_MAD = [ name = "im_xenserver", executable = "one_im_sh", arguments = "xenserver" ] #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- # XCP Driver Addon Transfer Manager Driver Configuration #------------------------------------------------------------------------------- TM_MAD = [ name = "tm_xenserver", executable = "one_tm", arguments = "tm_xenserver/tm_xenserver.conf" ] #-------------------------------------------------------------------------------
The VMM and IM driver needs to know the credentials of the XCP user (this user needs to be replicated in all the hypervisors) in order to access the hypervisor. Please input this information in:
$ONE_LOCATION/etc/xenserverrc
Please be aware that the above rc file, in stark contrast with other rc files in OpenNebula, uses ruby syntax, therefore please input the values as ruby strings, i.e., between quotes.
The above file also needs the following values:
The /var/lib/one directory must be moved to PATH_TO_SR after the installation completes. A symbolic link from /var/lib/one to PATH_TO_SR/var needs to be created
This section aims to instruct the user on how to manage each of the XCP resources known by OpenNebula
Hosts
Physical hosts featuring a XCP hypervisor must be added with the XCP Drivers, like
$ onehost add xenserver01 im_xenserver vmm_xenserver tm_xenserver
Images
Images must be used through the Image Catalog, that is, registered using the oneimage command. The images for XCP are the ”.vhd” files, that can be swapped between VMs.
Once the image is uploaded in the Image Catalog, it can be used in a VM referencing it from the VM template using the ID or the NAME of the image:
DISK=[IMAGE="MyFirstXenServerImage"] Virtual Networks
Virtual Networks
In a XCP, virtual network setup works as in a traditional OpenNebula deployment. The BRIDGE field of the network template should reference the label of the network created in the XCP hypervisor (see the System Configuration in the Requirements section).
Virtual Machines
Virtual Machine templates can be used as with traditional OpenNebula deployments. All the usual operations are available, except for livemigration, support for which will be added in future releases.