当前位置: 首页 > news >正文

安装floodlight

 我按照这位大神的方法探索

Ubuntu20.04安装FloodLight最新版本_floodlight安装-CSDN博客

一、运行环境

操作系统:ubuntu 20.04

已安装:mininet+python+ssh等

二、安装依赖

1.安装JDK8

E: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 29720 (unattended-upgr)
 

一开始安装JDK还报错了,我就想我以前也安装也没报错啊,于是我就切换了一下软件源。

再更新一下

sudo apt-get update

重新安装

sudo apt-get install openjdk-8-jdk
sudo cp /etc/profile /etc/profile.bak
sudo vim /etc/profile

配置环境变量

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

测试

2.安装build-essential python-dev maven ant

sudo apt-get install build-essential
sudo apt-get install python-dev
sudo apt-get install maven
sudo apt-get install ant

三、下载Floodlight

1.下载

sudo git clone https://github.com/floodlight/floodlight.git

2.安装子模块

cd floodlight
sudo git submodule init
sudo git submodule update

四、编译Floodlight

可以看到此图中,未编译前,floodlight目录下没有target文件。

1.上传jar包

大神文中提到的两个jar包,原文件分别在下方的链接中,可自行下载:

Maven Repository: org.apache.thrift » libthrift » 0.14.1

Maven Repository: io.netty » netty-all » 4.1.66.Final

将上述两个文件放到floodlight/lib目录下,一开始还不让上传,我修改了文件的权限,才上传成功

sudo chmod 777 floodlight/

2.修改build.xml文件

编辑build.xml文件

sudo gedit build.xml

    修改build.xml中的两行为刚移动过去的文件【72行和76行】,保存并退出

    3.编译

    修改完成后进行ant清除

    sudo ant clean
    

      重新进行ant编译

      sudo ant
      

        编译成功:BUILD SUCCESSFUL

        编辑成功后会在floodlight目录中出现target目录,target目录下产生floodlight.jar这个编译的成果。

        五、运行测试

        java -jar floodlight.jar 
        

        六、创建拓扑并显示

        1.创建之前

        在没有创建拓扑之前,拓扑的页面是没有任何设备的

        2.使用mininet创建拓扑,并使用floodlight作为控制器

        使用如下命令创建拓扑后,拓扑页面就出现了最小拓扑(当然也可以创建其它类型的拓扑)

        正在运行floodlight的终端不要关闭,再打开一个终端

        sudo mn --controller=remote,ip=127.0.0.1,port=6653
        

        在此步骤的运行中,我又出现了如下问题:

        Traceback (most recent call last):
          File "/usr/local/bin/mn", line 28, in <module>
            from mininet.clean import cleanup
        ImportError: No module named mininet.clean
         

        解决方案参考:解决mininet运行报错“ImportError: No module named mininet.log” - 旺得福000 - 博客园

        3.创建拓扑成功

        相关文章:

      • unity学习54:图片+精灵+遮罩mask,旧版文本 text 和新的TMP文本
      • vi编辑器的使用(内附快捷键的使用)(超详细)
      • 图扑数字孪生:解锁压缩空气储能管控新高度
      • elementplus点击按钮直接预览图片
      • GitHub SSH连接问题解决指南
      • Python的那些事第三十一篇:快速数据帧处理与可视化的高效工具Vaex
      • 计算机毕业设计SpringBoot+Vue.js植物健康系统(源码+文档+PPT+讲解)
      • 使用ZFile打造属于自己的私有云系统结合内网穿透实现安全远程访问
      • 对话Stack Overflow,OceanBase CTO 杨传辉谈分布式数据库的“前世今生”
      • Template Method 设计模式
      • 企业数字化过程中数据仓库与商业智能 BI的目标
      • 算法-二叉树篇04-翻转二叉树
      • 开源软件的版权保护措施
      • JavaEE 编写Java程序,实现一个简单的echo程序(网络编程UDP实践练习)
      • 【Linux】learning notes(3)make、copy、move、remove
      • 1472.设计浏览器历史记录
      • 阿里重磅模型深夜开源;DeepSeek宣布开源DeepGEMM;微软开源多模态AI Agent基础模型Magma...|网易数智日报
      • 如何看待 Kaiming He 最新提出的 Fractal Generative Models ?
      • JAVA-如何理解Mysql的索引
      • 004 Kafka异常处理
      • 招行一季度净利372.86亿降2.08%,营收降逾3%
      • 大理杨徐邱再审上诉案宣判:驳回上诉,维持再审一审判决
      • 马上评丨机械停车库成“僵尸库”,设计不能闭门造车
      • 上海市市管干部任职前公示:赵亮拟为地区区长人选
      • 传染病防治法修订草案提请三审,拟加强医疗机构疾控能力建设
      • 人民日报:广东全力推动外贸稳量提质