Changes between Version 8 and Version 9 of Internal/OpenFlow/Controllers/FlowVisor


Ignore:
Timestamp:
May 30, 2012, 6:25:49 AM (12 years ago)
Author:
akoshibe
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Internal/OpenFlow/Controllers/FlowVisor

    v8 v9  
    11= !FlowVisor =
    2 !FlowVisor is a specialized !OpenFlow controller that creates slices within an !OpenFlow network, allowing the same physical deployment to support multiple controllers. Here we describe the setup/installation !FlowVisor 6.0 on Ubuntu 9.10.
     2!FlowVisor is a specialized !OpenFlow controller that creates slices within an !OpenFlow network, allowing the same physical deployment to support multiple controllers. Here we describe the setup/installation !FlowVisor 8.3 on Ubuntu 11.04.
    33
    44== references ==
    5  * main docs: http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HOWTO/ProductionSetup/FlowVisorTransition
     5 * main docs: https://openflow.stanford.edu/display/DOCS/Installation+Guide
    66
    77== prereqs ==
    88The latest !FlowVisor (which supports !OpenFlow 1.0 at this time) is based on java, requiring the following packages:
    9  * ant
    10  * sun-java6-jdk
     9{{{
     10apt-get install ant sun-java6-jdk
     11}}}
    1112It is assumed that you have !OpenFlow installed and in working condition.
    1213
    1314== installation ==
     15The installation process has gotten very streamlined compared to the 6.0 days. Refer to older versions of this page to see how it is done for version 6.* of flowvisor. [[BR]]
     16A flowvisor user may be created as the admin user for flowvisor (e.g. running `fvctl`). This will come into play during the install when you are prompted to specify a flowvisor user/group. 
     17
    1418 1. install above-mentioned packages
    1519
    16  2. pull from git repository:
     20 2. pull from mercurial repository:
    1721{{{
    18  git clone git://openflowswitch.org/flowvisor.git
    19  cd flowvisor
    20  git checkout -b flowvisor-0.6 origin/flowvisor-0.6
     22hg clone https://bitbucket.org/onlab/flowvisor
     23hg update -C 0.8-MAINT
    2124}}}
    2225
    23  we need to do a git checkout to make sure we have the right package.
     26 the `update` command is equivalent to a git checkout and puts us on the (most recent stable) flowvisor-8.3 branch.
     27 
     28 3. run `make` and `make install`. The `make install` process will prompt you with several questions:
    2429
    25  3. choose the proper version of java with ''update-alternatives --config java''
    2630{{{
    27  root@internal2:/opt/flowvisor# update-alternatives --config java
    28 There are 2 choices for the alternative java (providing /usr/bin/java).
     31native@ubuntu:~/flowvisor$ make install
     32ant
     33Buildfile: /home/native/flowvisor/build.xml
    2934
    30   Selection    Path                                      Priority   Status
    31 ------------------------------------------------------------
    32   0            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      auto mode
    33   1            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      manual mode
    34 * 2            /usr/lib/jvm/java-6-sun/jre/bin/java       63        manual mode
     35init:
     36
     37compile:
     38    [javac] /home/native/flowvisor/build.xml:34: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
     39
     40....
     41
     42Installation prefix (/usr/local):     
     43FlowVisor User (needs to already exist) (native):
     44FlowVisor Group (needs to already exist) (native):
     45Install to different root directory ()
     46Installing FlowVisor into /usr/local with prefix=/usr/local as user/group native:native
     47
     48....
     49
     50Enter password for account 'fvadmin' on the flowvisor:
     51Generating default config to /usr/local/etc/flowvisor/config.xml
     52--- 'flowvisor!logging' not set in config; defaulting to loglevel 'NOTE'
     53--- Setting logging level to DEBUG
     54}}}
     55
     56 4. Generate a default configuration file:
     57{{{
     58fvconfig generate /usr/local/etc/flowvisor/flowvisor-config.json
    3559}}}
    3660
    37  make sure to have java-6-sun version of java chosen as the alternative as shown above. 
    38 
    39  4. cd to your flowvisor directory; if ''./configure'' doesn't exist, run ''./boot.sh''
    40 {{{
    41 sh ./boot.sh
    42 }}}
    43 
    44  5. run ''./configure''
    45 
    46  6. run make:
    47 {{{
    48 sudo make CFLAGS="-I/usr/lib/jvm/java-6-sun-1.6.0.20/include -I/usr/lib/jvm/java-6-sun-1.6.0.20/include/linux"
    49 }}}
    50  The paths for CFLAGS should be based on what you get if you do a `locate jni.h`:
    51 {{{
    52 $ locate jni.h
    53 /usr/lib/jvm/java-6-sun-1.6.0.20/include/jni.h
    54 }}}
    55 
    56  7. run ''make tests'' and ''make install''
     61Now your install should be ready to run.
    5762
    5863== configuration ==