Changes between Initial Version and Version 1 of Internal/OpenFlow/Controllers/FlowVisor


Ignore:
Timestamp:
Sep 10, 2010, 3:04:42 PM (14 years ago)
Author:
akoshibe
Comment:

Legend:

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

    v1 v1  
     1= 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.
     3
     4== prereqs ==
     5The latest flowvisor is based on java, requiring the following packages:
     6 * ant
     7 * sun-java6-jdk
     8
     9== installation ==
     10 1. install above-mentioned packages
     11 1. pull from git repository:
     12{{{
     13 git checkout -b flowvisor-0.6 origin/flowvisor-0.6
     14}}}
     15 we need to take this step to make sure we have the right package.
     16 3. choose the proper version of java with `update-alternatives --config java`
     17{{{
     18 root@internal2:/opt/flowvisor# update-alternatives --config java
     19There are 2 choices for the alternative java (providing /usr/bin/java).
     20
     21  Selection    Path                                      Priority   Status
     22------------------------------------------------------------
     23  0            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      auto mode
     24  1            /usr/lib/jvm/java-6-openjdk/jre/bin/java   1061      manual mode
     25* 2            /usr/lib/jvm/java-6-sun/jre/bin/java       63        manual mode
     26}}}
     27 make sure to have java-6-sun version of java chosen as the alternative as shown above.
     28 4. cd to flowvisor directory; if ./configure doesn't exist, run ./boot.sh
     29{{{
     30sh ./boot.sh
     31}}}
     32 5. ''./configure''
     33 6. run make:
     34{{{
     35sudo 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"
     36}}}
     37 The paths for CFLAGS should be based on what you get if you do a `locate jni.h`:
     38{{{
     39$ locate jni.h
     40/usr/lib/jvm/java-6-sun-1.6.0.20/include/jni.h
     41}}}
     42