SDN之Ubuntn20.04OpenDaylight控制器的安装

目录

    • 1.OpenDaylight简介
    • 2.安装JAVA环境
    • 3.安装OpenDaylight
    • 4.问题总结

1.OpenDaylight简介

  • OpenDaylight(ODL)是一个开源的软件定义网络(SDN)控制器平台,提供了非常美观且功能完善的可视化管理界面,方便用户进行网络拓扑管理与自定义开发。
  • ODL支持多种网络协议,包括OpenFlow、NETCONF、BGP、PCEP等,这使得它能够管理和控制各种网络设备,包括交换机、路由器等。
  • ODL 主要使用 Java 编写,这使得它能够运行在各种平台上,并具有广泛的兼容性。

2.安装JAVA环境

步骤一:安装JDK
JDK(Java Development Kit,Java 开发工具包)是一个软件开发工具包,提供了 Java 编程语言的开发环境。JDK 包含了 Java 运行时环境(JRE)、Java 编译器(javac)、调试器(jdb)以及其他一些工具和实用程序,用于开发、调试和运行 Java 应用程序。
通过sudo apt-get install openjdk-版本号-jdk命令安装JDK。需要注意的是,安装JDK之前需要保证虚拟机能够上外网。这里安装JDK8版本。
在这里插入图片描述
可以看到JDK8已经安装完成。
在这里插入图片描述
安装之后需要查看JDK的安装路径,以便下一步设置JAVA环境变量时使用。这里JDK安装在/usr/lib/jvm目录下。
在这里插入图片描述
步骤二:配置JAVA环境变量
使用sudo vim /ect/environment命令对etc目录下的environment文件进行修改。
在这里插入图片描述
在文件最后添加:JAVA_HOME=“/usr/lib/jvm/java-8-openjdk-amd64”。
在这里插入图片描述
可以运行java -version查看安装的java版本。
在这里插入图片描述
配置完成后,需要重启系统(reboot),环境变量才能生效。

3.安装OpenDaylight

步骤一:下载OpenDaylight
使用wget https://nexus.opendaylight.org/content/groups/public/org/opendaylight/integration/distribution-karaf/0.6.4-Carbon/distribution-karaf-0.6.4-Carbon.tar.gz命令下载OpenDaylight(网速慢的话,可能需要很久很久,耐心等待)。当然也可以先下载到本地主机,然后再将文件上传到虚拟机。
在这里插入图片描述
可以看到,已经下载完成,保存在/home/shy目录下。
在这里插入图片描述
在这里插入图片描述

步骤二:解压文件
使用sudo tar -zxvf distribution-karaf-0.6.4-Carbon.tar.gz命令解压文件。可以看到解压后的文件distribution-karaf-0.6.4-Carbon保存在/home/shy目录下。
在这里插入图片描述
步骤三:修改参数
进入目录/home/shy/distribution-karaf-0.6.4-Carbon/etc下,使用命令sudo vim org.apache.karaf.management.cfg对文件进行修改。
在这里插入图片描述
在这里插入图片描述
修改内容如下:
在这里插入图片描述
步骤四:启动karaf
进入/home/shy/distribution-karaf-0.6.4-Carbon/bin目录,执行命令sudo ./karaf启动karaf。
在这里插入图片描述
可以看到,现在启动成功。
在这里插入图片描述
步骤五:安装feature
注意,以下命令均是在OpenDayLight的命令行下运行的。
①安装支持REST API的组件
feature:install odl-restconf
②安装L2 switch插件
feature:install odl-l2switch-switch-ui
③安装用户界面服务
feature:install odl-openflowplugin-flow-services-ui
④安装API查看器
feature:install odl-mdsal-apidocs
⑤安装dlux展示页面
feature:install odl-dluxapps-applications
⑥添加与函数服务相关的支持和管理功能
feature:install odl-faas-all
在这里插入图片描述
需要注意安装顺序不能乱。安装完成后使用logout命令退出控制器。
步骤六:验证OpenDaylight控制器是否安装成功
首先进入/home/shy/distribution-karaf-0.6.4-Carbon/bin目录下,使用命令sudo ./karaf启动OpenDaylight控制器;启动成功后,打开Ubuntn中的浏览器,输入网址http://192.168.177.131:8181/index.html登录OpenDaylight管理界面,登录的用户名和密码均为admin(192.168.177.131为虚拟机的IP地址,可以通过ip addr命令查看)。
在这里插入图片描述
可以看到,已经登陆成功,但此时是没有任何内容的。
在这里插入图片描述
接着启动mininet创建网络拓扑,为了简单起见,可以使用sudo mn --controller=remote,ip=127.0.0.1 --switch ovsk,protocols=OpenFlow13命令(或sudo mn --controller=remote,ip=虚拟机IP,port=6633(可写可不写) --switch ovsk,protocols=OpenFlow13命令或sudo mn --controller=remote --switch ovsk,protocols=OpenFlow13命令)创建最小化网络拓扑,使用Open vSwitch (ovsk) 作为交换机(也可以使用ovs),并使用 OpenFlow 1.3 协议进行通信;然后在管理界面中查看当前网络拓扑,此时拓扑图只会显示交换机不会显示主机,这是由链路发现协议(LLDP)来决定的,当主机发起流量时,相关主机才会在拓扑图中显示。
在这里插入图片描述
执行pingall命令,管理界面中查看当前网络拓扑,可以看到新建了一台交换机和两台主机,说明OpenDaylight控制器安装成功。
在这里插入图片描述

4.问题总结

1.通过sudo vim /etc/environment命令配置JAVA环境变量时出现vim:command not found。
原因:Linux默认的文本编辑器是vi。
在这里插入图片描述
解决办法:通过sudo apt-get install vim -y命令安装vim。
在这里插入图片描述
2.使用apt-get install命令安装软件时,出现
E: Could not getlock /var/lib/dpkg/lock-frontend.It is heldby process 31295unattended-upgr)
N: Be aware that removing the lock file is not a solution and may break your sysem.
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is an other process using it?
在这里插入图片描述
原因:用apt-get install安装软件的时候,如果在未完成下载的情况下将terminal关闭,此时 apt-get进程可能没有结束,即有另一个程序正在占用apt-get install进程。由于它在运行时,会占用软件源更新时的系统锁(简称‘系统更新锁’),此时资源被锁。
解决办法:依次输入以下命令强制解锁后重启系统。

sudo rm /var/cache/apt/archives/lock  
sudo rm /var/lib/dpkg/lock
sudo systemctl --force --force reboot

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/173272.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis Redis::geoAdd 无效,phpstudy 如何升级redis版本

redis 查看当前版本命令 INFO SERVERwindows 版redis 进入下载 geoadd 功能在3.2之后才有的,但是phpstudy提供的最新的版本也是在3.0,所以需要升级下 所以想出一个 挂狗头,卖羊肉的方法,下载windows 的程序,直接替…

桥梁道路结冰传感器守护出行安全的重要工具

随着冬季的到来,气温逐渐降低,路面和桥梁容易结冰,给人们的出行带来安全隐患。为了解决这一问题, WX-JB2H 桥梁道路结冰传感器应运而生。本文将详细介绍桥梁道路结冰传感器的作用、原理及在冬季出行中的重要性。 一、桥梁道路结冰…

flink源码分析之功能组件(三)-rpc组件

简介 本系列是flink源码分析的第二个系列,上一个《flink源码分析之集群与资源》分析集群与资源,本系列分析功能组件,kubeclient,rpc,心跳,高可用,slotpool,rest,metrics,future。 本文解释rpc组件,rpc组件用于个核心组件,包括作业管理器,资源管理器和任务管理器之…

什么是高防IP?如何进行防护?怎样隐藏源站?

高防IP是针对互联网服务器遭受大流量的DDoS攻击后导致服务不可用的情况下,推出的付费增值服务,是目前最常用的一种防御DDoS攻击的手段。用户在数据不转移的情况下,就可以通过配置高防IP,将攻击流量引流到高防IP,防护系…

iOS移动应用程序的备案与SHA-1值查看

​ 目录 📝iOS移动应用程序的备案与SHA-1值查看 引言 第一部分:App备案 第二部分:查看SHA-1值 引言 在开发和发布移动应用程序时,进行App备案是非常重要的一步,它是确保您的应用在合规性方面符合相关法规的过程。…

2023-11-27 LeetCode每日一题(子数组的最小值之和)

2023-11-27每日一题 一、题目编号 907. 子数组的最小值之和二、题目链接 点击跳转到题目位置 三、题目描述 给定一个整数数组 arr,找到 min(b) 的总和,其中 b 的范围为 arr 的每个(连续)子数组。 由于答案可能很大&#xff…

记一次处理大数据而导致的内存溢出问题

问题 订单服务通过MQ进行订单同步时,刚启动可以正常消费,但是跑一会就会卡住,每次都是第8个kafka分区不行再进行消费,其他分区消费的很慢。 现象 首先,CPU超高,达到百分之300多;其次&#xf…

2023年双十二超声波清洗机如何选?有哪些值得购买的超声波清洗机?

通过眼科医院对近视眼统计报告说明,截止2023年3月27日,全国近视眼人数为3亿人,其中青少年近视约为2亿人,现在大部分人都离不开眼镜,也有很多人忽视了清洗眼镜的重要性,眼镜长时间的不清洗的话会很容易导致脸…

MyBatis Generator使用总结

MyBatis Generator使用总结 介绍具体使用数据准备插件引入配置条件构建讲解demo地址 介绍 MyBatis Generator (MBG) 是 MyBatis 的代码生成器。它能够根据数据库表,自动生成 java 实体类、dao 层接口(mapper 接口)及m…

【赠书第8期】工程效能十日谈

文章目录 前言 1 工程效能十日谈 1.1 制定清晰的目标和计划 1.2 引入先进的技术和工具 1.3 建立有效的沟通机制 1.4 灵活应对变化 1.5 确保资源充足 1.6 进行有效的风险管理 1.7 进行持续的监控和评估 1.8 优化团队合作 1.9 注重质量管理 1.10 进行项目总结和反思 …

SSM图书捐赠网站系统开发mysql数据库web结构java编程计算机网页源码eclipse项目

一、源码特点 SSM 图书捐赠网站系统是一套完善的信息系统,结合springMVC框架完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码和数据库 ,系统主要采用B/…

openpnp - 自动换刀设置 - 使用克隆功能有风险

文章目录 openpnp - 自动换刀设置 - 使用克隆功能有风险概述笔记需要注意的地方将一个做好的吸嘴作为这排其他吸嘴的模板bug - 这个克隆功能慎用备注END openpnp - 自动换刀设置 - 使用克隆功能有风险 概述 自动换刀设置时, 很危险, 动不动就撞刀. 如履薄冰啊:( 看到openpnp在…

【社会网络分析第6期】Ucient实操

一、导入数据处理二、核心——边缘分析三、聚类分析四、网络密度 一、导入数据处理 将数据导入Ucinet首先需要对数据进行处理。 承接上一期的数据格式:【社会网络分析第5期】gephi使用指南 原先得到的数据格式如下: 接下来打开ucinet: 之后…

王者荣耀小游戏

第一步是创建项目 项目名自拟 第二部创建个包名 来规范class 然后是创建类 GameFrame 运行类 package com.sxt; package com.sxt;import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.…

Echarts+Vue+dataV 首页大屏静态示例Demo

效果图: <template><div class="content bg"><!-- 全屏容器 --><!-- 第一行 --><div class="module-box"><div style="flex: 0 1 30%"><dv-decoration-10 style="height: 5px" />&…

【运营思维】美团面试题:如何把梳子卖给寺庙和尚?

Hello 小米的小伙伴们~ 欢迎来到小米的微信公众号&#xff01;今天小米要和大家分享一道美团运营面试题&#xff0c;题目可真是独特——“如何把梳子卖给寺庙和尚&#xff1f;”想必大家一定兴奋不已吧&#xff01; 首先&#xff0c;让我们理清思路&#xff0c;挑战这个看似不…

ubuntu20.04安装tensorRT流程梳理

目标&#xff1a;先跑demo&#xff0c;再学习源码 step1, 提前准备好CUDA环境 安装CUDA&#xff0c;cuDNN 注意&#xff0c;CUDA&#xff0c;cuDNN需要去官网下载.run和tar文件安装&#xff0c;否则在下面step4 make命令会报找不到cuda等的错误&#xff0c;具体安装教程网上…

有趣!谷歌AI认定阿波罗登月“造假“

大家好&#xff0c;我是极智视界&#xff0c;欢迎关注我的公众号&#xff0c;获取我的更多前沿科技分享 邀您加入我的知识星球「极智视界」&#xff0c;星球内有超多好玩的项目实战源码和资源下载&#xff0c;链接&#xff1a;https://t.zsxq.com/0aiNxERDq 事情是这样的&#…

vue.js如何根据后台返回来的图片url进行图片下载

原创/朱季谦 最近在做一个前端vue.js对接的功能模块时&#xff0c;需要实现一个下载图片的功能&#xff0c;后台返回来的是一串图片url&#xff0c;试了很多种方法&#xff0c;发现点击下载时出来的效果&#xff0c;都是跳到一个新的图片网页&#xff0c;后来经过一番琢磨&…

23款奔驰E300L升级23P驾驶辅助 智驾出行 缓解开车疲劳

辅助驾驶越来越多的被大家所青睐&#xff01;为了提升驾驶安全性和舒适便捷性奔驰改装原厂半自动驾驶23P辅助系统 23P智能辅助驾驶系统还是很有必要的&#xff0c;因为在跑高速的时候可以使用23P智能驾驶的自动保持车速&#xff0c;保持车距&#xff0c;车道自动居中行驶以及自…