diff options
author | Todd Deshane <deshantm@gmail.com> | 2010-05-20 10:03:11 -0700 |
---|---|---|
committer | Ben Pfaff <blp@nicira.com> | 2010-05-20 10:03:40 -0700 |
commit | 6cdd6a87ac43b4d7cc4cfe99f2ae4435afd38951 (patch) | |
tree | 1a470d95aca0a21cf536309efc4da60c1b081850 /INSTALL.KVM | |
parent | 4d10512c91773b817c91a5ee4768f7c9665ec0cb (diff) |
Add instructions for using Open vSwitch with KVM.
Diffstat (limited to 'INSTALL.KVM')
-rw-r--r-- | INSTALL.KVM | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/INSTALL.KVM b/INSTALL.KVM new file mode 100644 index 00000000..8e723b32 --- /dev/null +++ b/INSTALL.KVM @@ -0,0 +1,83 @@ + How to Use Open vSwitch with KVM + ================================= + +This document describes how to use Open vSwitch with the Kernel-based +Virtual Machine (KVM). This document assumes that you have read and +followed INSTALL.Linux to get Open vSwitch setup on your Linux system + +Setup +----- + +First, follow the setup instructions in INSTALL.Linux to get a working +Open vSwitch installation. + +KVM uses tunctl to handle various bridging modes, which you can +install with the Debian/Ubuntu package uml-utilities. + + % apt-get install uml-utilities + +Next, you will need to modify or create custom versions of the qemu-ifup +and qemu-ifdown scripts. In this guide, we'll create custom versions +that make use of example open vSwitch bridges that we'll describe in this +guide. + +Create the following two files and store them in known locations. + +For example /etc/ovs-ifup and /etc/ifdown + +/etc/ovs-ifup +-------------------------------------------------------------------- +#!/bin/sh + +switch='br0' +/sbin/ifconfig $1 0.0.0.0 up +ovs-vsctl add-port ${switch} $1 +-------------------------------------------------------------------- + +/etc/ovs-ifdown +-------------------------------------------------------------------- +#!/bin/sh + +switch='br0' +/sbin/ifconfig $1 0.0.0.0 down +ovs-vsctl del-port ${switch} $1 +-------------------------------------------------------------------- + +At the end of INSTALL.Linux, it describes basic usage of creating +bridges and ports. If you haven't already, create a bridge named +br0 with the following command: + + % ovs-vsctl add-br br0 + +Then, add a port to the bridge for the NIC that you want your guests +to communicate over (e.g. eth0): + + % ovs-vsctl add-port br0 eth0 + +Please refer to ovs-vsctl(8) for more details. + +Next, we'll start a guest that will use our ifup and ifdown scripts. + + % kvm -m 512 -net nic,maddr=00:11:22:EE:EE:EE -net \ +tap,script=/etc/ovs-ifup,downscript=/etc/ovs-ifdown -drive \ +file=/path/to/disk-image,boot=on + +This will start the guest and associate a tap device with it. The +ovs-ifup script will add a port on the br0 bridge so that the +guest will be able to communicate over that bridge. + +To get some more information and for debugging you can use Open +vSwitch utilities such as ovs-dpctl and ovs-ofctl, For example: + + % ovs-dpctl show br0 + % ovs-ofctl show br0 + +You should see tap devices for each KVM guest added as ports to +the bridge (e.g. tap0) + +Please refer to ovs-dpctl(8) and ovs-ofctl(8) for more details. + +Bug Reporting +------------- + +Please report problems to bugs@openvswitch.org. |