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,一经查实,立即删除!

相关文章

15.解释Spring支持的几种bean的作用域

Spring支持的几种bean的作用域 Spring框架支持以下五种bean的作用域: singleton : bean在每个Spring ioc 容器中只有一个实例。prototype:一个bean的定义可以有多个实例。request:每次http请求都会创建一个bean,该作用域仅在基于…

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

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

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

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

14.配置Bean有哪几种方式?

配置Bean有哪几种方式? 基于xml: <bean class=“com.tuling.UserService” id=“”>基于注解: @Component(@Controller 、@Service、@Repostory) 前提:需要配置扫描包<component-scan> 反射调用构造方法基于java类配置: @Bean 可以自己控制实例化过程@Import 3种…

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

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

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

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

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

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

glibc和gcc源码

glibc下载 $ git clone git://sourceware.org/git/glibc.gitgcc编译器&#xff0c;https://gcc.gnu.org/ git clone git://gcc.gnu.org/git/gcc.git

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

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

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

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

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

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

【实战教程】PHP与七牛云的完美对接

前言&#xff1a; 随着互联网的迅速发展&#xff0c;越来越多的网站和应用程序需要处理大量的图片、视频和其他文件。为了有效地存储和管理这些文件&#xff0c;并提供快速的内容分发服务&#xff0c;开发者们常常依赖于云存储和CDN服务提供商。 七牛云是一家领先的云存储和C…

2023华为ICT网络初赛试题回顾

所有题目都只能用来学习交流&#xff0c;禁止用于非法不公平的使用&#xff0c;如有侵权&#xff0c;该文章立刻删除。 1、某机房没有合适长度的网线&#xff0c;现需手工制作一个568B标准的双纹线&#xff0c;那么应按照以下哪一线序进行制作? A.绿白,绿&#xff0c;蓝&#…

想要对网站进行安全监测,安全SCDN效果怎么样?

随着互联网的迅速成长&#xff0c;各种网站出现的越来越多&#xff0c;个人网站、企业网站等&#xff0c;同时网站竞争也越来越强。随着用户对网站需求增多&#xff0c;对网站的安全也愈发受到人们的重视。那么我们日常网站运营中&#xff0c;有需要对网站进行安全监控&#xf…

dbeaver 中如何set define off

窗口-首选项-编辑器-SQL编辑器-SQL处理-参数- 勾选“启用SQL参数”---set define on 取消勾选“启用SQL参数”---set define off

MyBatis Generator使用总结

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

[个人笔记] Linux facl扩展权限的用法

Linux - 运维篇 第五章 Linux facl扩展权限的用法 Linux - 运维篇系列文章回顾Linux facl扩展权限的用法练习 参考来源 系列文章回顾 第一章 Linux扩容LVM分区 第二章 Linux虚拟机安装VMware Tools插件 第三章 ssh-keygen和openssl工具的使用 第四章 Linux配置NTP时间同步 Lin…

【赠书第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 图书捐赠网站系统是一套完善的信息系统&#xff0c;结合springMVC框架完成本系统&#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;&#xff0c;系统具有完整的源代码和数据库 &#xff0c;系统主要采用B/…

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

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