Changes between Version 20 and Version 21 of FlowVisor


Ignore:
Timestamp:
06/06/13 23:11:21 (6 years ago)
Author:
Josh Smift
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FlowVisor

    v20 v21  
    3333== System requirements ==
    3434
    35 Existing sites are running their FlowVisor on a variety of hardware (including in VMs); ONL currently recommends that a FlowVisor system should have at least 3 GB of RAM and at least two CPUs. These requirements may increase for larger scale deployments.
    36 
    37 It's also advantageous to have a robust control network interface to FlowVisor. ONL currently recommends two gigabit interfaces, one to communicate with switches ("downstream") and one to communicate with controllers ("upstream"), if your network design permits. If your upstream and downstream traffic need to share an interface, it might be prudent to have a 10 GB NIC if possible.
     35Existing sites are running their !FlowVisor on a variety of hardware (including in VMs); ONL currently recommends that a !FlowVisor system should have at least 3 GB of RAM and at least two CPUs. These requirements may increase for larger scale deployments.
     36
     37It's also advantageous to have a robust control network interface to !FlowVisor. ONL currently recommends two gigabit interfaces, one to communicate with switches ("downstream") and one to communicate with controllers ("upstream"), if your network design permits. If your upstream and downstream traffic need to share an interface, it might be prudent to have a 10 GB NIC if possible.
    3838
    3939== Version ==
     
    4141The GPO currently recommends version 1.0.8 for GENI sites.
    4242
    43 We're currently (May 2013) in the proess of working with sites to upgrade to that version. Sites that haven't yet upgraded are mostly running 0.8.17; existing GENI racks may be running even older versions of 0.8.
     43As of June 2013, we're in the proess of working with sites to upgrade to that version. Sites that haven't yet upgraded are mostly running 0.8.17; existing GENI racks may be running even older versions of 0.8.
    4444
    4545== !FlowVisor APIs ==
     
    6161== Initial configuration ==
    6262
    63 The default configuration of !FlowVisor is general suitable for GENI sites, except that we recommend the XMLRPC API for now. (See above for more info, including commands to make `/usr/bin/fvctl` point to the XML version.)
     63The default configuration of !FlowVisor is generally suitable for GENI sites, except that we recommend the XMLRPC API for now. (See above for more info, including commands to make `/usr/bin/fvctl` point to the XML version.)
     64
     65=== Admin password ===
    6466
    6567We typically put the !FlowVisor fvadmin password into /etc/flowvisor.passwd, so you don't have to type it every time you run an fvctl command. Make sure that it's only readable by people who should have full admin access to !FlowVisor on your system! (World-readable might be fine if only FV admins have accounts on your FV server; or you might want to make it only group-readable by a group that includes the FV admins.) The examples on the rest of this page assume that you've done that.
     
    7779The rest of this page assumes that you've done that.
    7880
     81=== Version holding ===
     82
     83We also recommend telling your package management system to hold !FlowVisor at its current version, so that if you do a general upgrade of all of the packages on your system, it won't get updated along with that, but will only update when you explicitly say so.
     84
     85To do that on systems that use dpkg type packages:
     86
     87{{{
     88echo "flowvisor hold" | sudo dpkg --set-selections
     89}}}
     90
     91To do that on systems that use RPM type packages:
     92
     93{{{
     94sudo sed -i -e 's/enabled=1/enabled=0/' /etc/yum.repos.d/onlab.repo
     95}}}
     96
     97(To re-enable the repo when you really do want to upgrade, just change back to `enabled=1`.)
     98
     99We also recommend [wiki:OpenFlow/FOAM#Versionholding doing this for FOAM].
     100
    79101== Backups ==
    80102
     
    93115=== Restore ===
    94116
    95 NOTE that fvconfig can only be run when FlowVisor is '''not running'''.
    96 
    97 NOTE that this completely and irrevocably overwrites your existing FlowVisor database! Use with caution.
     117NOTE that fvconfig can only be run when !FlowVisor is '''not running'''.
     118
     119NOTE that this completely and irrevocably overwrites your existing !FlowVisor database! Use with caution.
    98120
    99121You need to run the restore as the 'flowvisor' user, since that user has the right permissions to create the DB files:
     
    117139== Upgrading ==
    118140
    119 Here are some before-and-after tests you can do when you upgrade FlowVisor, to confirm that your state hasn't changed unexpectedly.
     141Here are some before-and-after tests you can do when you upgrade !FlowVisor, to confirm that your state hasn't changed unexpectedly.
    120142
    121143First, get a "before" dump of the flowspace and slice info:
     
    132154}}}
    133155
    134 Next do the upgrade, as usual. Then make sure `/usr/bin/fvctl` points to `fvctl-xml`:
    135 
    136 {{{
    137 sudo rm /usr/bin/fvctl
    138 sudo ln -s fvctl-xml /usr/bin/fvctl
     156Next do the upgrade, as usual. For simple upgrades, on systems that use dpkg type packages:
     157
     158{{{
     159sudo apt-get update
     160sudo service flowvisor stop
     161sudo apt-get -y install flowvisor=1.0.8-1
     162sudo service flowvisor start
     163}}}
     164
     165On systems that use RPM type packages:
     166
     167{{{
     168sudo service flowvisor stop
     169sudo yum -y install flowvisor-1.0.8-1
     170sudo service flowvisor start
     171}}}
     172
     173More complex upgrades might have additional steps, which will generally be described on a separate page, in the announcement of the upgrade, and/or in the release notes.
     174
     175Then make sure `/usr/bin/fvctl` points to `fvctl-xml`:
     176
     177{{{
     178sudo ln -f -s fvctl-xml /usr/bin/fvctl
    139179sudo sed -i -e 's/echo "Warning: The XMLRPC interface is deprecated/#echo "Warning: The XMLRPC interface is deprecated/' /usr/bin/fvctl-xml
    140180}}}