[[PageOutline]] = Open vSwitch (OVS) Switch = This page shows how to: 1. Use an OVS Switch from a self-configuring Custom Image available to all experimenters 1. Or, set up and configure OVS on Ubuntu 16 1. Turn an OVS switch set up using one of the above methods into an OpenFlow switch. == 1. Use the self-configuring OVS Switch Custom Image (InstaGENI) == A self-configuring custom image that has OVS installed is available to all GENI experimenters. This image, on startup, automatically: i. Creates a bridge (switch) i. Adds all data plane interface to ports on the bridge i. Puts the bridge in standalone more The following RSpec snippet includes the URL and URN for this custom image: {{{ }}} Your OVS switch is now ready to use and each of your dataplane interfaces will be part of the OVS bridge "br0"! '''Note:''' IP is disabled on all data plane interfaces of the VM containing this OVS switch. A file '''''/local/InterfacesInfo''''' on the OVS switch includes all interface information before IP was shutdown. == 2. Install and create an OVS switch on Ubuntu 16 == If you want to install and configure OVS on Ubuntu 16 instead of using the custom image described above, follow the following steps: 1. Request your topology via omni or GENI Portal. Current default image version is Ubuntu 16, which will change over time. 2. On the node you plan to use as the switch run the following: {{{ sudo apt-get install openvswitch-switch -y }}} 3. Once OVS is installed, a service script is available on your node, {{{/etc/systemd/system/multi-user.target.wants/openvswitch-switch.service}}}. This systemd script allows you to stop and start the openvswitch as a service. Note that the openvswitch service is automatically started for you when installing the software, to check its status: {{{ sudo systemctl status openvswitch-switch }}} 4. A script [https://raw.githubusercontent.com/GENI-NSF/geni-support/master/Utilities/geniovs.sh geniovs.sh] is available to create an OVS bridge and add the dataplane interfaces: {{{ wget https://raw.githubusercontent.com/GENI-NSF/geni-support/master/Utilities/geniovs.sh bash ./geniovs.sh }}} Your OVS switch is now ready to use! == 3. Enable OpenFlow for OVS switch == If you have the Open vSwtich service running and would like to add !OpenFlow to the mix, simply execute the following: {{{ sudo ovs-vsctl set-fail-mode br0 secure sudo ovs-vsctl set-controller br0 tcp::6633 }}}