浏览了大量的CSDN博客和师兄继承下来的学习笔记,自己想总结一下搭环境的过程,为以后给自己查看时候好整理
全部都在VM虚拟机中ubuntu里完成
在Windows下的虚拟机中做实验,需要先开启本台电脑硬件的虚拟功能(在本机BIOS中设置) 不知道怎么打开BIOS就问度娘。很简单的。一开始我换了一台新拆的电脑就没打开虚拟功能,后来一查才知道要从开机时候的F2中设置。
提示:以下是本篇文章正文内容,下面案例可供参考
在ubuntu中写如下代码:
# apt-get update
# apt-get upgrade
上网搜索对应版本,eclipse和jdk需要与floodlight版本对应。
其他所需的 程序均可使用apt命令获取安装,我使用的是:
eclipse-jee-oxygen-1a-linux-gtk-x86_64.tar
jdk_1.8.tar.gz
将jdk安装完成。网上有参考方法。
将eclipsse也安装完成。就是将软件包解压到想要安装的文件夹下。
在终端用cd命令打开floodlight文件夹,然后在floodlight目录下输入ant命令进行编译,再启动floodlight。
cd floodlight/
ant
java -jar target/floodlight.jar
启动后,通过浏览器访问floodlight的管理界面, http://localhost:8080/ui/pages/index.html ,若不能访问
则在floodlight文件夹下执行命令可解决问题:
cd floodlight/
git pull origin master
git submodule init
git submodule update
ant
java -jar target/floodlight.jar
1.用cd打开eclipse文件夹,在eclipse目录下启动。然后将eclipse图标留在桌面,为方便以后好使用,将不在需要输入命令来启动,跟Windows一样直接在桌面单击启动。
ant eclipse
注:必须编译才能在eclipse导入,否则不能进行导入,出现no projects are found to import!
cd eclipse
./eclipse
2.从菜单选择 File -> Import -> General -> Existing Projects into Workspac。点击下一步。
从 Select root directory 里面,找到 floodlight 所在目录。 导入后勾上 Floodlight,点击Finish。
3.运行floodlight将floodlight导入eclipse后, 会生成 一个eclipse 工程,打开floodlight工程找到 src/java/main-> net.floodlightcontroller.core -> Main.java
文件,右键单击 “Run As” ,选择 “Java Application”,然后 选择“Floodlight-Default-Conf”,点击“OK”,floodlight就开始运行了
4.运行Floodlight后可以通过登录 http://localhost:8080/ui/pages/index.html使用Floodlight提供的web管理界面查看里面的信息.
在ubuntu中写如下代码:
#cd mininet
#mininet/util/install.sh -a
查看mininet版本:
#mn --version
查看ovs版本:
#ovs-vsctl --version
mn [ --custom <自定义拓扑的路径> ] [ --topo mytopo ] --switch ovsk,protocols=OpenFlow13 --controller=remote,ip=<floodlight控制器所在机器的ip>,port=端口号
mn –custom /home/mininet/custom/Fattree.py --switch ovsk,protocols=OpenFlow13 --controller=remote,ip=192.168.175.128,port=6653 --link tc --topo mytopo
Fatter.py是自己用python脚本编写的胖树网络拓扑。我用的是openflow13,端口号是6653。
自定义mininet拓扑可以放在mininet/custom文件夹下面,在此文件夹下有自定义的拓扑文件,可以参考。那里面有一个例子。自定义拓扑还可以限定设备之间的带宽,时延等参数,不过要导入相应的link包,例:
from mininet.link import TCLink
之后在运行mn命令时候要加参数–link tc才可以实现自定义带宽等功能。
在这里我 装了 JAVA 1.8,在ubuntu中写如下代码:
wget http://www.inmon.com/products/sFlow-RT/sflow-rt.tar.gz
tar -xvzf sflow-rt.tar.gz
cd sflow/sflow-rt
./start.sh //启动SFlow controller
浏览器中输入 http://localhost:8008/agents/html
mn --custom /home/mininet/custom/Fattree.py,/home/mininet/custom/sflow.py --switch ovsk,protocols=OpenFlow13 --controller=remote,ip=192.168.235.131,port=6653 --link tc --topo mytopo
这是之前就已经搭建过的SDN环境,一直在脑子里都是一片一片的知识点,这一次自己写一个总结,为了今后自己可以查看,也顺一遍思路。虽然网上已经有无数个类似于我写的这个搭环境的文章,但这是我自己的第一次写,哈哈哈哈,纪念一下!完成!过程还是蛮重要的。收获颇多。