Egbert Lin's Blog

“Life is not a race, but a journey to be savoured each step of the way” by Brian Dyson

[One-time success] How to install Ryu on Ubuntu - Tutorial

Tutorial - Install Ryu in Ubuntu 16.04 with no failure

Ryu is a component-based software defined networking framework. It's very easy to develop your own SDN controller. And, if you have any questions, there are rich source on the internet.

Start to configure and install

  • Step 1. Download package information from all configured sources. (The sources often defined in /etc/apt/sources)
    1
    $ sudo apt-get update
  • Step 2. Install dependencies for building the required Python packages on your system
    1
    $ sudo apt-get install python-pip python-dev
    1
    $ sudo apt-get install python-eventlet python-routes python-webob python-paramiko python-dev
  • Step 3. We will download Ryu source code from github, so git is necessary.
    1
    $ sudo apt-get install git
  • Step 4. Download Ryu source code from github
    1
    $ git clone git://github.com/osrg/ryu.git
  • Step 5. NetworkX is very important software to support your development of SDN controller.
    1
    $ pip install networkx
  • Step 6. Install Ryu
    1
    $ cd ryu/
    1
    $ sudo python ./setup.py install
  • Step 7. Execution and testing
    1
    $ ryu-manager
    // If your installation is successful, the terminal will show some info. and stop to listening:

    loading app ryu.controller.ofp_handler
    instantiating app ryu.controller.ofp_handler of OFPHandler


    Warning: if you execute “ryu-manager” and get an error!

    Solution:

    1
    $ cd ryu/
    1
    $ sudo pip install -r tools/pip-requires
    1
    $ sudo pip install six --upgrade
    Warning: if you execute “ryu-manager” and get an error as below: class ConfigurationSourceDriver(object, metaclass=abc.ABCMeta):
       SyntaxError: ivalid syntax

    Solution:
    1
    $ cd /usr/local/lib/python2.7/dist-packages/
    1
    $ sudo rm –rf oslo_config/
    1
    $ sudo git clone https://github.com/openstack/oslo.config -b stable/ocata
    From the above, the command is refered to:
    http://gogosatellite.blogspot.com/2016/05/openstack-oslo-config-tutorial.html
    1
    $ cd oslo.config
    1
    $ sudo python setup.py install