OpenDaylight初步学习过程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
OpenDaylight初步学习过程
———————Lithium OpenDaylight搭建环境的要求
1.虚拟机Ubuntu 14.04,内存建议4G及以上,以免在启动ODL时太卡
2.Java7-及以上版本
3.Maven3.1.1及以上版本
注意:
先用java –version查看jdk版本。如果版本低于jdk1.7,则从jdk官网下载,下载地址:/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u79-oth-JPR一定要根据自己系统下载相应的jdk。
安装及配置:/s/blog_93dc666c0101b1bj.html
查看maven版本,maven –v,如果未安装,则从其官网下载3.1.1版本及以上版本。
Tar文件,可以先去官网查下maven最新版本多少。
下载网址:/dyn/closer.cgi/maven/binaries/apache-maven-
3.3.3-bin.tar.gz
安装配置:/caojianhua/archive/2011/04/02/347559.html
建议不要从shell通过apt-get来安装maven,版本不是最新的。
安装pre-build的controller
由于新手初期对于ODL的了解还不多,建议先安装pre-built的distribution熟悉一下opendaylight的基本功能。
1)下载地址如下,下载zip格式
https:///downloads
2)解压文件,进入到bin文件夹,运行./karaf
3)安装相关依赖,以下是满足一些基本功能的依赖(顺序有时候会有要求):
安装支持REST API的组件:feature:install odl-restconf
安装L2 swtich 和Openflow插件:
feature:install odl-l2switch-switch
feature:install odl-openflowplugin-all
安装DULX功能:feature:install odl-dlux-all
安装基于karaf控制台的md-sal控制器功能:feature:install odl-mdsal-all
安装基于karaf控制台的ad-sal功能:feature:install odl-adsal-northbound
安装完成后,可以通过访问http://
以上如果一切顺利则表明ODL初步搭建完成,接下来需要通过mininet来验证ODL连接以及用restclient或者postman来验证下发流表正常
使用mininet连接controller
1)在另外一台虚拟机安装mininet,具体安装步骤请看压缩包里的《如何升级Mininet的
OpenvSwitch的版本》文档。
2)启动ODL
3)启动Mininet连接controller,本例命令如下:
sudo mn –controller=remote,ip=
Mininet命令详见/walkthrough/
4)Mininet连上controller后,可以在ODL那个网页上刷新一下,就可以看到创建的拓扑
图,但有一点需要注意的是图上只显示了交换机不会显示主机,这是由链路发现协议LLDP来决定的,当主机发起流量时,相关主机才会在拓扑图中显示。
5)在mininet中输入pingall,将所有交换机和主机之间连接起来这时候再刷新拓扑图,就
能看到主机了,这时说明controller与mininet连接没有问题。
OpenFlow Configuration
1.在以上的基础上,在controller虚拟机浏览器里访问:
http://localhost:8181/restconf/operational/opendaylight-inventory:nodes
2.接下来就用id为openflow:5的交换机来测试下发流表,如果你虚拟机里是FireFox浏
览器,则添加Restclient组件,若是Chrom浏览器则添加Postman组件。一般ubuntu 系统都是火狐浏览器,本文档就以火狐浏览器为例。如下图添加Restclient:
添加好后再从下图打开restclient
3.通过restclient下发流表
Method为put
openflow:1/table/0/flow/1则是你下发流表指定的交换机,通常table/0/flow/1不用变,openflow:1则根据你从上一步查看nodes时能够获取到的几个node来找,如上图的openflow:5)
设置Headers:
Content-Type: application/xml
Accept: application/xml
Authentication(这个就是你访问这个网址时需要的账号密码,这儿就是admin/admin)
Use Body