deb-ryu/doc/source/parameters.rst
YAMAMOTO Takashi 0a8e581628 doc: fix some sphinx warnings and errors
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2013-08-13 10:01:54 +09:00

4.1 KiB

orphan

Getting Started

Overview/What's Ryu the Network Operating System

Ryu is an open-sourced Network Operating System which is licensed under Apache v2.0. It supports openflow protocol.

If you are not familiar with Software Defined Network(SDN) and OpenFlow/openflow controller, please refer to openflow org .

The mailing list is available at ryu-devel ML

Installing Ryu Network Operating System

Extract source code and just type:

% python ./setup.py install

Then, run ryu-manager. It listens to ip address 0.0.0.0 and port 6633 by default. Then have your openflow switch (hardware or openvswitch OVS) to connect to ryu-manager.

For OVS case, you can done it by

% ovs-vsctl set-controller <your bridge> tcp:<ip addr>[:<port: default 6633>]

At the moment, ryu-manager supports only tcp method. If you want to use it with openstack nova and quantum OVS plugin, Please refer to using_with_openstack.

invoking application and Configuration

It can be configured by passing configuration file like:

ryu-manager [generic/application specific options...]

At the moment applications including the following ones are available (And more to come as Ryu evolves.)

  • ryu.app.simple_isolation.SimpleIsolation
  • ryu.app.rest.RestAPI
  • ryu.app.simple_bridge.SimpleSwitch

The generic available is as follows:

--app-lists: application module name to run;
  repeat this option to specify a list of values
--help: show help

The options for REST server:

--wsapi-host: webapp listen host
  (default: '')
--wsapi-port: webapp listen port
  (default: '8080')
  (an integer)

The options for openflow controller:

--ofp-listen-host: openflow listen host
  (default: '')
--ofp-tcp-listen-port: openflow tcp listen port
  (default: '6633')
  (an integer)

The options for log:

--default-log-level: default log level
  (an integer)
--log-dir: log file directory
--log-file: log file name
--log-file-mode: default log file permission
  (default: '0644')
--[no]use-stderr: log to standard error
  (default: 'true')
--use-syslog: output to syslog
  (default: 'False')
--[no]verbose: show debug output
  (default: 'false')

The option for oslo.config.cfg:

--config-file: Path to a config file to use. Multiple config files
  can be specified, with values in later files taking precedence.
  (default: [])
--config-dir: Path to a config directory to pull *.conf files from.
  This file set is sorted, so as to provide a predictable parse order if
  individual options are over-ridden. The set is parsed after the file(s),
  if any, specified via --config-file, hence over-ridden options in the
  directory take precedence.

Invoking Example

The example is as follows:

% PYTHONPATH=. ./bin/ryu-manager --wsapi-port 8081 --verbose --app-lists ryu.app.simple_isolation,ryu.app.rest
loading app ryu.app.simple_isolation
loading app ryu.app.rest
loading app ryu.controller.ofp_handler
creating context dpset
creating context wsgi
creating context network
instantiating app ryu.app.simple_isolation
instantiating app ryu.app.rest
instantiating app ryu.controller.ofp_handler
BRICK dpset
  CONSUMES EventOFPStateChange
  CONSUMES EventOFPPortStatus
  CONSUMES EventOFPSwitchFeatures
BRICK ofp_event
  PROVIDES EventOFPStateChange TO ['dpset']
  PROVIDES EventOFPPortStatus TO ['dpset', 'SimpleIsolation']
  PROVIDES EventOFPPacketIn TO ['SimpleIsolation']
  PROVIDES EventOFPSwitchFeatures TO ['dpset', 'SimpleIsolation']
  CONSUMES EventOFPEchoRequest
  CONSUMES EventOFPErrorMsg
  CONSUMES EventOFPSwitchFeatures
  CONSUMES EventOFPHello
BRICK network
BRICK RestAPI
BRICK SimpleIsolation
  CONSUMES EventOFPPacketIn
  CONSUMES EventOFPPortStatus
  CONSUMES EventOFPSwitchFeatures