ryu学习笔记(1) 之 ryu的安装

来源:互联网 发布:php include 手册 编辑:程序博客网 时间:2024/05/01 13:15

参考网页:
http://linton.tw/2014/02/15/note-install-ryu-36-sdn-framework/(Install Ryu 3.6 - SDN Framework,这篇教程非常好,基本上把安装常见的问题都考虑进去了,其中的一些内容我下面可能赘述一下,大家可以直接去看原博客)
https://github.com/osrg/ryu
https://github.com/MeshSr/ofs-hw
https://github.com/CPqD/ofsoftswitch13

1.什么是Ryu
Ryu是基于构件的软件定义网络的框架。
Ryu为软件构件提供了良好定义的API这使得开发者们可以很简单地创建新的网络管理和控制的应用程序。Ryu支持很多种的协议来管理网络设备(即南向接口支持的协议类型丰富),比如OpenFlow, Netconf, OF-config等等。对于OpenFlow协议,Ryu现在可以完全支持1.0到1.4的版本。
所有代码均开源,并且均由Python语言写成。
2.Ryu的安装
Ryu控制器需要在linux操作系统中安装。它有两种安装方式.
ryu的wiki网页给出的安装步骤,但是按照这个教程安装一般会遇到问题的,因为ryu是python语言编写的,所以在进行ryu的安装之前一般需要安装一些python套件
我安装的是ryu3.7的版本所以依次安装了以下的依赖文件

$ sudo apt-get install curl $ sudo su$ curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python

备注:如果不进行以上安装有可能会遇到这样的错误提示:
pkg_resources.DistributionNotFound: six>=1.4.0
ryu3.7的版本还有一个套件需要进行安装

$ sudo apt-get install build-essential

那么接下来依次进行如下安装:

$ sudo apt-get install python-pip python-dev build-essential$ sudo pip install --upgrade pip$ sudo apt-get install python-eventlet$ sudo apt-get install python-routes$ sudo apt-get install python-webob$ sudo apt-get install python-paramiko$ sudo pip install ryu

建议使用pip而非git来进行ryu的安装
完成之后用ryu-manager来进行验证,如果没问题则会显示如下

$ ryu-managerloading app ryu.controller.ofp_handlerinstantiating app ryu.controller.ofp_handler of OFPHandler

3.可选安装
Ryu的一些功能实现需要其他的安装包来支持
要实现OF-Config 功能需要 lxml套件
要实现NETCONF 功能需要 paramiko套件
要实现BGP speaker (net_cntl) 功能需要 paramiko套件
如果想要使用这些功能则需要进行如下安装操作

% pip install lxml% pip install paramiko

2015/9/25更新

最新安装问题
(1)按照以上流程安装到 sudo pip ryu的时候有错误提示,如下:
InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately [duplicate]
解决办法:

$ apt-get install libffi-dev libssl-devpip install pyopenssl ndg-httpsclient pyasn1

参考网页:http://stackoverflow.com/questions/29134512/insecureplatformwarning-a-true-sslcontext-object-is-not-available-this-prevent

2015/7/10更新
由于原来旧的版本没有官方给出的gui,之前参考的都是yamada-h给出的gui组件。参考网页:https://github.com/yamada-h/ryu/wiki/GUI现在新的版本自带gui,于是重新更新了ryu的版本,安装教程详见John lin的博客 http://linton.tw/2015/02/18/An-install-script-and-guide-for-Ryu/或者直接参考https://github.com/sdnds-tw/ryuInstallHelperI

0 0
原创粉丝点击