实验4:开源控制器实践——OpenDaylight
实验4:开源控制器实践——OpenDaylight
一、实验目的
- 能够独立完成OpenDaylight控制器的安装配置;
- 能够使用Postman工具调用OpenDaylight API接口下发流表。
二、实验环境
- 下载虚拟机软件Oracle VisualBox或VMware;
- 在虚拟机中安装Ubuntu 20.04 Desktop amd64,并完整安装Mininet;
三、实验要求
(一)基本要求
-
配置JAVA环境,下载并解压安装OpenDaylight,版本选择Carbon 或 Beryllium;
-
下载并解压安装Postman;
-
利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器;
-
在命令行中输入相应命令构建拓扑,进行pingall,可在ODL中查看拓扑
-
通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s。
(二)进阶要求
查找资料,整理和记录ODL控制器主要的REST API文档,包括但不限于ODL提供的文档链接,获取拓扑的交换机、获取流表状态数量、获取特定交换机端口的状态、新增修改和删除流表等。
- 获取拓扑的交换机
url: http://127.0.0.1:8181/apidoc/explorer/index.html#!/network-topology(2013-07-12)/GET_network_topology_get_171
- 流表增删改查
url: http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_flow_get_198
- 获取特定交换机端口的状态
url:http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-port-statistics(2013-12-14)/get_node_connector_statistics_post_0
- 获取指定交换机信息
url:http://127.0.0.1:8181/apidoc/explorer/index.html#!/opendaylight-inventory(2013-08-19)/GET_node_get_5
四、实验报告
遇到问题及解决方法
- 在配置JAVA环境时,安装包下载后找不到移动的选项,用
sudo mv 文件名 所需到移动的地址
解决。 - 在安装opendaylight时,复制文档中给的命令程序出错,仔细对比后发现是复制过来的命令比文档中的少了一个'-',手打加上后解决。(之后的ryu --version也是'-'出了问题)
- 在安装ryu的拓展包时一直超时,知道换成了清华的镜像源才成功下载,但是下载完成后,在安装ryu时出现拓展包版本不一致、过低等情况,于是只好在命令行一个一个下载更新。
个人感想
- 我认为这次实验难度中等。最耗费时间的地方是环境软件的安装上,经常每一步都有红色error,令人难受。我知道了要仔细看报错信息,其中蕴含着很多针对性的信息。下载国外资源的连接十分不稳定且慢,不过自己也因此对使用国内的镜像下载更加熟练了。在使用ODL和postman时很顺利,这也让我对postman下发流表的工作更熟悉了,对postman的运用也更熟练了。