mininet+odl安装

2024-04-22 21:44
文章标签 安装 mininet odl

本文主要是介绍mininet+odl安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装环境

ubuntu-18.04.2-desktop-amd64

Java version: 1.8.0_362
Apache Maven 3.6.0

opendaylight: distribution-karaf-0.6.0-Carbon(csdn中应该是已有资源,不让上传)

opendaylight的官网下载链接一直打开失败,我使用的是别人的Carbon版本。

在安装mininet时一直没有什么问题,但安装odl时遇到很多问题,特此记录一下。

安装net-tools, vim, unzip, ssh等必要依赖

全新的ubuntu需要安装一些依赖,后面方面开展

sudo apt-get install net-tools
sudo apt-get install vim
sudo apt-get install unzip ssh

net-tools安装后,使用ifconfig查看一下IP地址,方便后续上传文件使用

vim主要用来编辑环境变量时需要

unzip主要用来解压上传的odl安装包

ssh用来从windows上传odl包

mininet安装

mininet安装非常简单,直接在ubuntu中,

sudo apt-get install mininet

安装完成后,执行一下,看是否能运行成功。如果运行成功,使用pingall 测试一下拓扑是否能ping通。

sudo mn

OpenDayLight安装

安装OpenDayLight遇到不少问题,在此记录一下。此odl的依赖有两个jdk和maven都需要安装。

安装jdk

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

第一行安装jdk

第二行习惯性修改文件前先把文件留个备份,万一修改错了再退回来

第三行修改环境变量

在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}

保存退出后,直接测试

如果jdk环境变量不生效,可以使用source /etc/profile 刷新一下(但我的就直接生效了)

安装maven

sudo apt-get install maven

安装成功后,进行测试

说实话,我一开始不知道还要安装maven,直接就运行odl,会出现找不到java环境变量的问题(./karaf: line 221: type: java: not found),我都配置了,为啥还不好使,也是看了别人的帖子,安装了maven之后,就不会出这个问题了。

安装ODL

我是使用xftp传到ubuntu中的,解压,修改参数


//把上传解压后的odl 碳版本的文件复制到自己的目录下
sudo cp -r Downloads/distribution-karaf-0.6.0-Carbon sdn///修改etc下的参数,还是先复制一份备份,再修改
cd sdn/distribution-karaf-0.6.0-Carbon/etc
sudo cp org.apache.karaf.management.cfg org.apache.karaf.management.cfg.bak
sudo vim org.apache.karaf.management.cfg
rmiRegistryHost=127.0.0.1rmiServerHost = 127.0.0.1 

进入karaf,安装组件

cd distribution-karaf-0.6.0-Carbon/binsudo ./karaf

出现此对话框即为安装成功,即可安装组件

feature:install odl-restconf
feature:install odl-l2switch-switch-ui
feature:install odl-openflowplugin-flow-services-ui
feature:install odl-mdsal-apidocs
feature:install odl-dluxapps-applications

使用浏览器访问127.0.0.1:8181/index.html出现下图:

用户名、密码皆为admin

验证mininet+odl联动成功

odl不要关,再开一个terminal,使用命令(连接本机odl,ip用127.0.0.1,连接远程controller,ip使用controller主机的IP),连接odl。

sudo mn --topo=single,4 --controller=remote,ip=127.0.0.1,port=6633 --switch ovsk,protocols=OpenFlow13

进入网页右上角有三个横线,点击找到topology,会看到图中只有一个交换机

执行pingall命令后,4台主机全部出现

遇到的问题,及解决方案

1. 进入karaf的时候java抛异常,我就是强迫症,看见异常,我不解决我就觉得这东西肯定不好使,反复安装了好几遍,后来不抛异常了,我就舒服了。

异常:Apache Karaf starting up. Press Enter to open the shell now...
 52% [=====================================>                                  ][ERROR] Failed to construct terminal; falling back to unsupported
java.lang.NumberFormatException: For input string: "0x100"

解决方案

 /etc/profile文件中,插入环境变量

export TERM=xterm-color

distribution-karaf-0.6.0-Carbon/bin目录下setenv文件与setenv.bat文件都插入环境变量

再启动就不会抛异常了。但我也试了,抛异常odl也能正常工作,就抛呗~

2.启动karaf启动失败,permision问题

解决方案:进入root用户修改文件,并启动karaf。

先这样吧,记录整了这么多天遇到的一点问题

这篇关于mininet+odl安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/926945

相关文章

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

Python中Request的安装以及简单的使用方法图文教程

《Python中Request的安装以及简单的使用方法图文教程》python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,:本文主要介绍P... 目录1.Requests 安装cmd 窗口安装为pycharm安装在pycharm设置中为项目安装req

windows下安装Nginx全过程

《windows下安装Nginx全过程》文章介绍了HTTP和反向代理服务器的概念,包括正向代理和反向代理的区别,并详细描述了如何安装和配置Nginx作为反向代理服务器... 目录概念代理正向代理反向代理安装基本属性nginx.conf查询结构属性使用运行重启停止总结概念是一个高性能的HTTP和反向代理we

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

前端Visual Studio Code安装配置教程之下载、汉化、常用组件及基本操作

《前端VisualStudioCode安装配置教程之下载、汉化、常用组件及基本操作》VisualStudioCode是微软推出的一个强大的代码编辑器,功能强大,操作简单便捷,还有着良好的用户界面,... 目录一、Visual Studio Code下载二、汉化三、常用组件1、Auto Rename Tag2

win10安装及配置Gradle全过程

《win10安装及配置Gradle全过程》本文详细介绍了Gradle的下载、安装、环境变量配置以及如何修改本地仓库位置,通过这些步骤,用户可以成功安装并配置Gradle,以便进行项目构建... 目录一、Gradle下载1.1、Gradle下载地址1.2、Gradle下载步骤二、Gradle安装步骤2.1、安

python依赖管理工具UV的安装和使用教程

《python依赖管理工具UV的安装和使用教程》UV是一个用Rust编写的Python包安装和依赖管理工具,比传统工具(如pip)有着更快、更高效的体验,:本文主要介绍python依赖管理工具UV... 目录前言一、命令安装uv二、手动编译安装2.1在archlinux安装uv的依赖工具2.2从github

JDK8(Java Development kit)的安装与配置全过程

《JDK8(JavaDevelopmentkit)的安装与配置全过程》文章简要介绍了Java的核心特点(如跨平台、JVM机制)及JDK/JRE的区别,重点讲解了如何通过配置环境变量(PATH和JA... 目录Java特点JDKJREJDK的下载,安装配置环境变量总结Java特点说起 Java,大家肯定都

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境