OpenDaylight基础入门【SDN控制器-上】【C4-03】

文章目录

  • 一、ODL初体验实验
    • 实验目的
    • 实验环境
    • 启动:一些基本操作
    • 如果出问题的话
    • 如果改Java启动参数怎么改
  • 二、OSGi及Karaf
    • 背景知识之OSGi
    • OSGi框架
    • Bundle概念
    • Bundle生命周期
    • Bundle间的依赖
    • 背景知识之Karaf
    • Karaf容器的特点
    • Feature概念
    • 安装感兴趣的ODL的feature
  • 三、OFPlugin&Mininet
    • 印象SDN(认识SDN)
    • OpenFlowPlugin相关feature介绍及安装
    • 实验平台
    • ODL的web界面dlux
    • 实验平台
    • Mininet介绍及使用
    • 实验
  • 四、RESTCONF介绍
    • RESTCONF协议

一、ODL初体验实验

实验目的

  • 了解并掌握ODL的启动方式,JVM的参数配置
  • 了解并掌握bundle,feature,log等基本的命令使用
  • 了解并掌握
  • karaf的基本配置

实验环境

说进入OpenDaylight开发基础篇实验环境,没找到,自行搭建


下载:http://docs.opendaylight.org/en/latest/downloads.html
运行:启动配置参数:修改Java虚拟机运行内存,karaf启动方式,启动参数(clean,debug…)

启动:一些基本操作

解压后查看目录

ls
ll

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第1张图片

cd bin
debug(调试)

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第2张图片
退出:CTRL+D或者

louout
deamon

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第3张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第4张图片

list
./karaf clean(清缓存)
bundle:list

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第5张图片

feature
list
feature:install odl-mdsal-all (安装)

敲一部分按tab键会提示

bundle:(tab键)
(列出命令)
bundle:info 208
bundle:headers 208
feature:info odl-mdsal-all(查看信息)

如果出问题的话

log:tail(最近的日志)
log:display(所有的日志)
log:set DEBUG org.opendaylight.openflowplugin(设置某个包)
log:list(查看)

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第6张图片

如果改Java启动参数怎么改

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第7张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第8张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第9张图片
这里没说具体改啥,不想听了跳过。。。
讲了各种配置找什么文件,具体需要可回头复习视频【约22:17-结尾】
日志的配置文件:
在这里插入图片描述
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第10张图片

二、OSGi及Karaf

背景知识之OSGi

重点:设计层面的,是一个规范,是一个框架

OSGi框架

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第11张图片

  • 安全层
  • 模块层
  • 生命周期层:为bundle提供了生命周期管理API
  • 服务层:为bundle开发者提供了一个动态、简明并且统一的编程模型

Bundle概念

  • Bundle 是OSGi中最基本的单位,通俗的讲,如果说OSGi是基于Java平台的“模块化开发体系”,那么Bundle便是其中的“模块”。
  • 一个符合OSGi规范的Bundle首先必须是一个符合JAR文件格式规范的JAR包,JAR文件格式规范定义的/META-INF/MANIFEST.MF文件用于描述JAR包的元数据信息,如JAR包的版本、数字签名信息等,Bundle在MANIFEST.MF文件中添加了大量扩展定义,如描述该Bundle可以提供哪些资源、依赖哪些其他Bundle、启动或卸载时要执行哪些动作等。

Bundle生命周期

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第12张图片

Bundle间的依赖

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第13张图片

引用或者暴露一些包,只有两边同时设置了才可以相互访问。

背景知识之Karaf

是一个基于OSGi的运行环境,提供了一个轻量级的OSGi容器,可以用于部署各种组件和应用程序。

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第14张图片

可认为是OSGi的一个封装好的发行版本。

Karaf容器的特点

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第15张图片

重点是配置和feature

Feature概念

一组bundle,其具备特定的功能,比如odl-mdsal-all就算是一个feature,其由若干个bundle,配置文件或其他feature组成。
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第16张图片
一个feature的配置包括:
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第17张图片

通过feature的配置,帮助我们屏蔽了bundle层面的配置繁琐性,极大的简化了部署和配置

安装感兴趣的ODL的feature

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第18张图片

三、OFPlugin&Mininet

印象SDN(认识SDN)

网络可编程

本节使用ODL北向RESTCONF接口下发OpenFlow流表,打通最简单的网络。

OpenFlowPlugin相关feature介绍及安装

  • odl-openflowplugin-flow-services-rest
  • feature:info odl-openflowplugin-flow-services-rest

实验平台

启动:

./kaaraf(+回车)

在这里插入图片描述
安装:

feature:install odl-openflowplugin-flow-services-rest(+回车)

安装好后查看feature

feature:info odl-openflowplugin-flow-services-rest(+回车)

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第19张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第20张图片

包含一些协议和bundle

ODL的web界面dlux

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第21张图片

实验平台

看提示:

feature:install odl-dlux

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第22张图片
安装:

feature:install odl-dluxapps-yangman

有了这个组件之后就可以通过浏览器来访问控制器了
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第23张图片

用户名和密码默认都是:admin

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第24张图片
左侧选中模型,右侧发送
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第25张图片
若安装拓扑XXX:

feature:install odl-dluxapps-topology

点击这个按钮,可以查看拓扑
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第26张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第27张图片
官方提供的一个apidocs访问的界面

feature:install odl-mdsal-apidocs

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第28张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第29张图片
点击想进行操作的模块:(图中鼠标所指:集群管理)
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第30张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第31张图片

Mininet介绍及使用

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第32张图片

ifconfig(查看本机地址)

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第33张图片
可看到本机的IP地址是30.0.1.3(即控制器的地址)

启动mininet:

在这里插入图片描述
命令:

nodes(看有哪些节点)
net(拓扑)
ports(端口信息)
dpctl dump-flows s1(查看流表)

可从浏览器界面看拓扑是否上线。
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第34张图片

实验

OpenDaylight基础入门【SDN控制器-上】【C4-03】_第35张图片

四、RESTCONF介绍

RESTCONF协议

标准规范:
标准RFC 8040 https://trac.tools.ietf.org/html/rfc8040
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第36张图片
在这里插入图片描述
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第37张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第38张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第39张图片
这就是。/。。的实现
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第40张图片
还有。18。。的实现
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第41张图片
看到18.。。
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第42张图片
OpenDaylight基础入门【SDN控制器-上】【C4-03】_第43张图片
注意post和put的区别,都可以创建
put如果原来有就会replace掉
post如果原来有就会报错
还有patch会修改现在的内容,如果老的没有就会报错

你可能感兴趣的:(C4,网络协议)