Skip to content
This repository has been archived by the owner on Nov 13, 2023. It is now read-only.

Installation from Source

alshabib edited this page Mar 1, 2013 · 7 revisions

FlowVisor is a java-based special purpose controller for OpenFlow networks.

Prerequisites

sudo apt-get install build-essential sun-java6-jdk ant eclipse

FlowVisor has been tested with Java 6. Other versions of Java are, while they may work, are unsupported and untested. FlowVisor runs best on the SUN or Oracle JDK, other JDKs will work but you may be dropping performance.

Download and Build

git clone git://github.com/OPENNETWORKINGLAB/flowvisor.git

The latest stable release can be found in the master branch as well as the maintenance branches (eg. 0.8-MAINT). Unstable releases (ie. nightlies) can be picked up from the the DEV branches (eg. 0.9-DEV). Finally beta-testing release candidates can be picked up from branches which will be marked as such (ie. 0.10rc1).

To build flowvisor, run these commands:

$ cd flowvisor

$ make

Installing FlowVisor

FlowVisor should not be run as root for obvious security issues. Therefore, best practice is to create a FlowVisor user. For the purpose of this document we will use the username flowvisor and group flowvisor and assume the user and group exist.

sudo make fvuser=flowvisor fvgroup=flowvisor install

This will install flowvisor in /usr/local. Use a prefix parameter to make if you would like to install it anywhere else.

Running FlowVisor

FlowVisor can be run either at the command line or with the provided (and installed) init script.

sudo -u flowvisor flowvisor

or

sudo /etc/init.d/flowvisor start

Upgrading FlowVisor

When upgrading, FlowVisor may update the structure of its internal database. Therefore it is important to save the configuration file before an upgrade, by running:

On a pre-1.0 FlowVisor:

fvctl dumpConfig config.json

On a 1.0 or post-1.0 FlowVisor:

fvctl save-config config.json

Note

All configuration changes are done in the db in place during the execution. If you would like to dump the contents of the db, run:

$ fvctl save-config config.json

Good luck!