How to Install Open vSwitch on Citrix XenServer =============================================== This document describes how to build and install Open vSwitch on a Citrix XenServer host. If you want to install Open vSwitch on a generic Linux host, see INSTALL.Linux instead. These instructions have been tested with XenServer 5.6 FP1. Building Open vSwitch for XenServer ----------------------------------- The recommended build environment to build RPMs for Citrix XenServer is the DDK VM available from Citrix. If you are building from an Open vSwitch distribution tarball, this VM has all the tools that you will need. If you are building from an Open vSwitch Git tree, then you will need to first create a distribution tarball elsewhere, by running "./boot.sh; ./configure; make dist" in the Git tree, because the DDK VM does not include Autoconf or Automake that are required to bootstrap the Open vSwitch distribution. Once you have a distribution tarball, copy it into /usr/src/redhat/SOURCES inside the VM. Then execute the following: VERSION= KERNEL_NAME= KERNEL_VERSION= KERNEL_FLAVOR= cd /tmp tar xfz /usr/src/redhat/SOURCES/openvswitch-$VERSION.tar.gz rpmbuild \ -D "openvswitch_version $VERSION" \ -D "kernel_name $KERNEL_NAME" \ -D "kernel_version $KERNEL_VERSION" \ -D "kernel_flavor $KERNEL_FLAVOR" \ -bb openvswitch-$VERSION/xenserver/openvswitch-xen.spec where: is the version number that appears in the name of the Open vSwitch tarball, e.g. 0.90.0. is the name of the Xen Kernel, e.g. kernel-xen or kernel-NAME-xen. By convention, the name starts with "kernel-" and ends with "-xen". This can be obtained by executing 'rpm -q --queryformat "%{Name}" kernel.*xen' with the "kernel-" stripped out using sed 's/kernel-//' e.g. kernel-NAME-xen => NAME-xen is the output of: rpm -q --queryformat "%{Version}-%{Release}" kernel.*xen-devel e.g. 2.6.32.12-0.7.1.xs5.6.100.323.170596 is either "xen" or "kdump". The "xen" flavor is the main running kernel flavor and the "kdump" flavor is the crashdump kernel flavor. Commonly, one would specify "xen" here. Three RPMs will be output into /usr/src/redhat/RPMS/i386, whose names begin with "openvswitch", "openvswitch-modules-xen" (if building for kernel_flavor=xen), and "openvswitch-debuginfo". Installing Open vSwitch for XenServer ------------------------------------- To install Open vSwitch on a XenServer host, or to upgrade to a newer version, copy the "openvswitch" and "openvswitch-modules-xen" RPMs to that host with "scp", then install them with "rpm -U", e.g.: scp openvswitch-$VERSION-1.i386.rpm \ openvswitch-modules-xen-$XEN_KERNEL_VERSION-$VERSION-1.i386.rpm \ root@: (At this point you will have to enter 's root password.) ssh root@ (At this point you will have to enter 's root password again.) rpm -U openvswitch-$VERSION-1.i386.rpm \ openvswitch-modules-xen-$XEN_KERNEL_VERSION-$VERSION-1.i386.rpm To uninstall Open vSwitch from a XenServer host, remove the packages: ssh root@ (At this point you will have to enter 's root password again.) rpm -e openvswitch openvswitch-modules-xen-$XEN_KERNEL_VERSION After installing or uninstalling Open vSwitch, the XenServer should be rebooted as soon as possible. Reporting Bugs -------------- Please report problems to bugs@openvswitch.org.