- 一、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的启动方式,JVM的参数配置
- 了解并掌握bundle,feature,log等基本的命令使用
- 了解并掌握
- karaf的基本配置
说进入OpenDaylight开发基础篇实验环境,没找到,自行搭建
下载:http://docs.opendaylight.org/en/latest/downloads.html
运行:启动配置参数:修改Java虚拟机运行内存,karaf启动方式,启动参数(clean,debug…)
解压后查看目录
ls
ll
cd bin
debug(调试)
退出:CTRL+D或者
louout
deamon
list
./karaf clean(清缓存)
bundle:list
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(查看)如果改Java启动参数怎么改
这里没说具体改啥,不想听了跳过。。。
讲了各种配置找什么文件,具体需要可回头复习视频【约22:17-结尾】
日志的配置文件:
OSGi框架重点:设计层面的,是一个规范,是一个框架
- 安全层
- 模块层
- 生命周期层:为bundle提供了生命周期管理API
- 服务层:为bundle开发者提供了一个动态、简明并且统一的编程模型
- Bundle 是OSGi中最基本的单位,通俗的讲,如果说OSGi是基于Java平台的“模块化开发体系”,那么Bundle便是其中的“模块”。
- 一个符合OSGi规范的Bundle首先必须是一个符合JAR文件格式规范的JAR包,JAR文件格式规范定义的/META-INF/MANIFEST.MF文件用于描述JAR包的元数据信息,如JAR包的版本、数字签名信息等,Bundle在MANIFEST.MF文件中添加了大量扩展定义,如描述该Bundle可以提供哪些资源、依赖哪些其他Bundle、启动或卸载时要执行哪些动作等。
背景知识之Karaf引用或者暴露一些包,只有两边同时设置了才可以相互访问。
是一个基于OSGi的运行环境,提供了一个轻量级的OSGi容器,可以用于部署各种组件和应用程序。
Karaf容器的特点可认为是OSGi的一个封装好的发行版本。
Feature概念重点是配置和feature
一组bundle,其具备特定的功能,比如odl-mdsal-all就算是一个feature,其由若干个bundle,配置文件或其他feature组成。
一个feature的配置包括:
安装感兴趣的ODL的feature 三、OFPlugin&Mininet 印象SDN(认识SDN)通过feature的配置,帮助我们屏蔽了bundle层面的配置繁琐性,极大的简化了部署和配置
网络可编程
本节使用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(+回车)
ODL的web界面dlux 实验平台包含一些协议和bundle
看提示:
feature:install odl-dlux
安装:
feature:install odl-dluxapps-yangman
有了这个组件之后就可以通过浏览器来访问控制器了
用户名和密码默认都是:admin
左侧选中模型,右侧发送
若安装拓扑XXX:
feature:install odl-dluxapps-topology
点击这个按钮,可以查看拓扑
官方提供的一个apidocs访问的界面
feature:install odl-mdsal-apidocs
点击想进行操作的模块:(图中鼠标所指:集群管理)
ifconfig(查看本机地址)
可看到本机的IP地址是30.0.1.3(即控制器的地址)
启动mininet:
命令:
nodes(看有哪些节点) net(拓扑) ports(端口信息) dpctl dump-flows s1(查看流表)
可从浏览器界面看拓扑是否上线。
标准规范:
标准RFC 8040 https://trac.tools.ietf.org/html/rfc8040
这就是。/。。的实现
还有。18。。的实现
看到18.。。
注意post和put的区别,都可以创建
put如果原来有就会replace掉
post如果原来有就会报错
还有patch会修改现在的内容,如果老的没有就会报错



