os-ken/doc/source/parameters.rst

4.0 KiB

orphan

Getting Started

Overview/What's OS-Ken the Network Operating System

OS-Ken 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 OpenStack-dev ML

Installing OS-Ken Network Operating System

Extract source code and just type:

% python ./setup.py install

Then, run os_ken-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 os_ken-manager.

For OVS case, you can done it by

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

At the moment, os_ken-manager supports only tcp method.

invoking application and Configuration

It can be configured by passing configuration file like:

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

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

  • os_ken.app.simple_isolation.SimpleIsolation
  • os_ken.app.rest.RestAPI
  • os_ken.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/os_ken-manager --wsapi-port 8081 --verbose --app-lists os_ken.app.simple_isolation,os_ken.app.rest
loading app os_ken.app.simple_isolation
loading app os_ken.app.rest
loading app os_ken.controller.ofp_handler
creating context dpset
creating context wsgi
creating context network
instantiating app os_ken.app.simple_isolation
instantiating app os_ken.app.rest
instantiating app os_ken.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