FloodLight+Mininet安装及简单测试
系统采用vm下ubuntu16.04
一、前置依赖安装
sudo apt-get install build-essential ant maven python-dev
sudo apt-get install git
二、配置orcal jdk
1、官网下载JDK文件,这里用的是如下版本
jdk-8u162-linux-x64.tar.gz
拉到桌面
2、创建一个目录作为JDK的安装目录,这里/usr/local/java/jvm
cd /usr/local
sudo mkdir java
cd java
sudo mkdir jvm
3、将压缩包移动然后解压到/usr/local/java/jvm
cd ~/桌面
sudo mv jdk-8u162-linux-x64.tar.gz /usr/local/java/jvm
cd /usr/local/java/jvm
sudo tar -zxvf jdk-8u162-linux-x64.tar.gz
4、配置所有用户的环境变量
sudo gedit /etc/profile
#末尾加上如下
#set Java environment
export JAVA_HOME=/usr/local/java/jvm/jdk1.8.0_162
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
#同样,需要使用命令使环境变量立即生效
source /etc/profile
5、检验(重启后也要检验一遍)
java –version
6、装ant的时候会去装openjdk,这个时候环境中有2个jdk,需要手动切换到orcal jdk.
#注册
sudo update-alternatives --install /usr/bin/java java /usr/local/java/jvm/jdk1.8.0_162/bin/java 300
#注意,然后java –version 一下,没有的话,
sudo update-alternatives --install /usr/lib/java java /usr/local/java/jvm/jdk1.8.0_162/bin/java 300
#切换
sudo update-alternatives --config java
#选择jdk1.8.0_162,这里是输入序号,我的电脑是输入2.
三、安装floodlight
1、git floodlight
git clone git://github.com/floodlight/floodlight.git
cd floodlight
2、git 子模块,用于网页显示
sudo git submodule init
sudo git submodule update
3、用ant来编译打包
sudo ant
4、让floodlight在eclipse中可以用
ant eclipse
5、运行
5.1、eclipse运行(这里eclipse的安装可以参考我的另外一篇博客)
(1)将eclipse导入项目
import->general->Exiting……
选择floodlight文件
(2)新建运行配置
右键floodlight项目,选择Run As,选择Run Configureations
选择Java Application,New Configureation
Name: FloodlightLaunch
Project: floodlight
Main clss: net.floodlightcontroller.core.Main
要运行的时候,直接点下面的run
5.2、控制台运行
java -jar target/floodlight.jar
默认运行端口6653
6、网页检查
http://localhost:8080/ui/index.html
四、安装Minnet
1、cd /opt 获取源码,cd到其目录下
sudo git clone git://github.com/mininet/mininet
2、安装
cd mininet/util/
sudo ./install.sh -a
3、安装测试
sudo mn --test pingall
4、图形界面设置拓扑
cd /opt
sudo mininet/examples/miniedit.py
5、运行自己的拓扑结构
(1)自己写py脚本,可以参考custom里面自带的写
cd /opt/mininet/custom
sudo mn --controller=remote,ip=127.0.0.1,port=6653 --custom=py脚本名称 --topo=拓扑名称—mac
#custom里面有一个自带的脚本
sudo mn --controller=remote,ip=127.0.0.1,port=6653 --custom=topo-2sw-2host.py --topo=mytopo --mac
#用控制台的话要注意exit
#非法退出,下次启动会出问题,解决,清理缓存
sudo mn -c
(2)利用图形界面来生成拓扑
cd /opt
sudo mininet/examples/miniedit.py
#绘制拓扑,作为2层脚本保存,选第4个属性,save的话是保存成mn文件,下次打开还可以修改拓扑,所以可以分别保存
#修改脚本控制器部分:
sudo gedit 保存的脚本路径/脚本名称
#设置为调用远程控制器,设置端口号,这个端口号是在floodlight的配置文件里面,默认6653
c0=net.addController(name='c0',
controller=RemoteController,
ip='127.0.0.1',
protocol='tcp',
port=6653)
#运行脚本
sudo python 脚本名称
网友评论