== Open Daylight Controller == [[TOC(Documentation/fSDN*, depth=2)]] The following instructions are for installing the ODL controller on Ubuntu version 13.04 on ORBIT infrastructure. === Installing the ODL Controller === The SDN controller used in the MF SDN prototype is the Open Daylight Controller. The release version is Hydrogen and we use the Base edition. Required Packages {{{ sudo apt-get update sudo apt-get install git maven openjdk-7-jdk openjdk-7-jre }}} The pre-built version of the controller can be downloaded at the following link [http://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distributions-base/0.1.1/distributions-base-0.1.1-osgipackage.zip Open Dayligth Controller Hydrogen Base Edition] Download and unzip the controller in a Linux machine. The controller was tested to work in Ubuntu 13.04. {{{ unzip distributions-base-0.1.1-osgipackage.zip }}} For more details, visit the controller installation guide at: https://wiki.opendaylight.org/view/Release/Hydrogen/Base/Installation_Guide#Installing === Developing !OpenFlow 1.3 Modules with the Controller === For developing applications and running the controller with OF 1.3, download the openflowplugin from git at the following link: {{{ git clone https://git.opendaylight.org/gerrit/p/openflowplugin.git }}} A sample application for a Learning switch is provided by the plugin. For learning to develop new modules as applications, this is a good starting point. Build the application: {{{ cd openflowplugin/samples/learning-switch/ mvn clean install }}} For running the learning switch application,do the following steps {{{ rm opendaylight/plugins/org.opendaylight.controller.samples.simpleforwarding-0.4.1.jar }}} Copy the 'learning-switch-0.0.3-SNAPSHOT.jar' bundle into the ‘opendaylight/plugins' folder. To run the controller with OF 1.3: {{{ cd opendaylight ./run.sh -of13 }}} To test if the learning switch is working, on the controller console: {{{ osgi > lb learn }}} Now you can see the controller installing flow rules when you test the network by pinging nodes. For more details and information for developing applications you can visit the [https://wiki.opendaylight.org/view/OpenDaylight_Controller:Hydrogen_Developer_Guide:MD-SAL_App_Tutorial Open Daylight wiki] === Running the Controller === The controller can be started directly by running the script in the following directory {{{ cd opendaylight ./run.sh }}} Once the controller is running,to access the GUI, point your browser to the IP address running the controller with port 8080: http://::8080 or http://127.0.0.1:8080 from the same machine running the controller Login with the following details: username: admin password: admin You can set up flow rules or make modifications using the GUI provided.