connections from an Open vSwitch to an OpenFlow controller. To
enable, configure with --enable-ssl=yes.
-To compile the kernel module (which is required for operation), you
-must also install the following:
+To compile the kernel module, you must also install the following. If
+you cannot build or install the kernel module, you may use the
+userspace-only implementation, at a cost in performance. The
+userspace implementation may also lack some features. Refer to
+INSTALL.userspace for more information.
- A supported Linux kernel version. Please refer to README for a
list of supported versions.
distribution tarball), or if you modify the Open vSwitch build system,
you will also need the following software:
- - Autoconf version 2.60 or later.
+ - Autoconf version 2.64 or later.
- Automake version 1.10 or later.
- pkg-config. We test with version 0.22.
+ - Python 2.x, for x >= 4.
+
+If you modify the ovsdbmonitor tool, then you will also need the
+following:
+
+ - pyuic4 from PyQt4 (http://www.riverbankcomputing.co.uk).
+
Installation Requirements
-------------------------
if it is installed in a different location, then some Open
vSwitch log messages will not be as detailed.
+To run the ovsdmonitor tool, the machine must also have the following
+software:
+
+ - Python 2.x, for x >= 4.
+
+ - Python Twisted Conch.
+
+ - Python JSON.
+
+ - PySide or PyQt4.
+
+ - Python Zope interface module.
+
+(On Debian "lenny" the above can be installed with "apt-get install
+python-json python-qt4 python-zopeinterface python-twisted-conch".)
+
Building and Installing Open vSwitch for Linux
==============================================
Once you have installed all the prerequisites listed above in the Base
Prerequisites section, follow the procedure below to build.
-1. In the top source directory, configure the package by running the
+1. If you pulled the sources directly from an Open vSwitch Git tree,
+ run boot.sh in the top source directory:
+
+ % ./boot.sh
+
+2. In the top source directory, configure the package by running the
configure script. You can usually invoke configure without any
arguments:
additional environment variables. For a full list, invoke
configure with the --help option.
-2. Run make in the top source directory:
+3. Run make in the top source directory:
% make
-3. Become root by running "su" or another program.
+4. Become root by running "su" or another program.
-4. Run "make install" to install the executables and manpages into the
+5. Run "make install" to install the executables and manpages into the
running system, by default under /usr/local.
-5. If you built kernel modules, you may load them with "insmod", e.g.:
+6. If you built kernel modules, you may load them with "insmod", e.g.:
% insmod datapath/linux-2.6/openvswitch_mod.ko
To verify that the modules have been loaded, run "/sbin/lsmod" and
check that openvswitch_mod is listed.
-Configuration
-=============
+7. Initialize the configuration database using ovsdb-tool, e.g.:
+
+ % ovsdb-tool create /usr/local/etc/ovs-vswitchd.conf.db vswitchd/vswitch.ovsschema
+
+Startup
+=======
+
+Before starting ovs-vswitchd itself, you need to start its
+configuration database, ovsdb-server. Configure it to use the
+database you created during step 7 of installation, above, and to
+listen on a Unix domain socket, e.g.:
+
+ % ovsdb-server /usr/local/etc/ovs-vswitchd.conf.db --remote=punix:/usr/local/var/run/openvswitch/db.sock
+
+Then initialize the database with "ovs-vsctl init". This is only
+necessary the first time after you create the database with
+ovsdb-tool (but running it at any time is harmless):
+
+ % ovs-vsctl init
+
+Then start the main Open vSwitch daemon, telling it to connect to the
+same Unix domain socket:
-Open vSwitch is configured primarily through a configuration file,
-whose name is specified on the ovs-vswitchd command line. Please
-refer to ovs-vswitchd(8) and ovs-vswitchd.conf(5) for information on
-how to start ovs-vswitchd and the syntax of its configuration file,
-respectively.
+ % ovs-vswitchd unix:/usr/local/var/run/openvswitch/db.sock
-At runtime, you may make ovs-vswitchd reload its configuration file
-and update its configuration accordingly by sending it a SIGHUP
-signal. The ovs-appctl utility can also be used to do this with a
-command such as:
+Now you may use ovs-vsctl to set up bridges and other Open vSwitch
+features. For example, to create a bridge named br0 and add ports
+eth0 and vif1.0 to it:
- % ovs-appctl -t <pid> -e vswitchd/reload
+ % ovs-vsctl add-br br0
+ % ovs-vsctl add-port br0 eth0
+ % ovs-vsctl add-port br0 vif1.0
-where <pid> is ovs-vswitchd's process ID. In the latter case,
-ovs-appctl will not exit until the reload and reconfiguration is
-complete.
+Please refer to ovs-vsctl(8) for more details.
Bug Reporting
-------------