Neutron 的架构是非常开放的,可以支持多种 network provider,只要遵循一定的设计原则和规范。本节我们将开始讨论这个主题。

先讨论一个简单的场景:在 Neutorn 中使用 linux bridge 这一种 network provider。

根据我们上一节讨论的 Neutron Server 的分层模型,我们需要实现两个东西:linux bridge core plugin 和 linux bridge agent。

linux bridge core plugin

  1. 与 neutron server 一起运行。

  2. 实现了 core plugin API。

  3. 负责维护数据库信息。

  4. 通知 linux bridge agent 实现具体的网络功能。

linux bridge agent

  1. 在计算节点和网络节点(或控制节点)上运行。

  2. 接收来自 plugin 的请求。

  3. 通过配置本节点上的 linux bridge 实现 neutron 网络功能。

同样的道理,如果要支持 open vswitch,只需要实现 open vswitch plugin 和 open vswitch agent。

由此可见:Neutron 可以通过开发不同的 plugin 和 agent 支持不同的网络技术。这是一种相当开放的架构。

不过随着支持的 network provider 数量的增加,开发人员发现了两个突出的问题:

  1. 只能在 OpenStack 中使用一种 core plugin,多种 network provider 无法共存。

  2. 不同 plugin 之间存在大量重复代码,开发新的 plugin 工作量大。

下一节将深入讨论这两个问题的成因以及解决方案。

Neutron 如何支持多种 network provider - 每天5分钟玩转 OpenStack(70)相关推荐

  1. 准备 LVM Volume Provider - 每天5分钟玩转 OpenStack(49)

    Cinder 真正负责 Volume 管理的组件是 volume provider. Cinder 支持多种 volume provider,LVM 是默认的 volume provider. Dev ...

  2. 实践 Neutron 前的两个准备工作 - 每天5分钟玩转 OpenStack(78)

    上一节配置了 linux-bridge mechanism driver,本节再做两个准备工作: 1. 检视初始的网络状态. 2. 了解 linux bridge 环境中的各种网络设备. 初始网络状态 ...

  3. NFS Volume Provider(Part I) - 每天5分钟玩转 OpenStack(62

    2019独角兽企业重金招聘Python工程师标准>>> cinder-volume 支持多种 volume provider,前面我们一直使用的是默认的 LVM,本节我们将增加 NF ...

  4. 实践 Network Policy - 每天5分钟玩转 Docker 容器技术(172)

    为了演示 Network Policy,我们先部署一个 httpd 应用,其配置文件 httpd.yaml 为: httpd 有三个副本,通过 NodePort 类型的 Service 对外提供服务. ...

  5. Neutron 架构 - 每天5分钟玩转 OpenStack(67)

    前面我们讨论了 Neutron 的基本概念,今天我们开始分析 Neutron 的架构. Neutron 架构 与 OpenStack 的其他服务的设计思路一样,Neutron 也是采用分布式架构,由多 ...

  6. 在 ML2 中 enable local network - 每天5分钟玩转 OpenStack(79)

    前面完成了一系列准备工作,本节开始将创建各种 Neutorn 网络,我们首先讨论 local network. local network 的特点是不会与宿主机的任何物理网卡相连,也不关联任何的 VL ...

  7. 创建第一个 local network(I) - 每天5分钟玩转 OpenStack(80)

    在 ML2 配置文件中 enable local network 后,本节将开始创建第一个 local network. 我们将通过 Web GUI 创建第一个 local network. 首先确保 ...

  8. 为 Neutron 准备物理基础设施(II) - 每天5分钟玩转 OpenStack(76)

    本节将按照上一节的规划安装配置控制节点和计算节点. 控制节点 devstack-controller 步骤如下 安装 Ubuntu 14.04 此处省略 256 个字 配置网卡 编辑 /etc/net ...

  9. 理解 Neutron FWaaS - 每天5分钟玩转 OpenStack(117)

    前面我们学习了安全组,今天学习另一个与安全相关的服务 -- FWaaS. 理解概念 Firewall as a Service(FWaaS)是 Neutron 的一个高级服务. 用户可以用它来创建和管 ...

最新文章

  1. python计算直角三角形顶点坐标
  2. 开启及关闭go mod
  3. Google Guava v07范例
  4. 不需要训练数据的图像恢复
  5. Application Constants
  6. 技巧 | 在R语言中使用高德地图的API进行地理/逆地理编码(地址与经纬度的相互转换)...
  7. SignalR---DOTNET客户端
  8. sklearn 中的 Iris 数据集
  9. 分区软件工具哪个好用
  10. convert 8bit/10bit RGB444,YUV444,NV12,NV21 to PNG
  11. java xml pull解析_Android App中使用Pull解析XML格式数据的使用示例
  12. 【独行秀才】macOS Monterey 12.1正式版(21C52)原版镜像
  13. V2X方案之RSU介绍
  14. 云服务器win系统入站规则,云服务器win系统入站规则
  15. Java面试中HR面试的100个问题,你有被问到几个?正解如下
  16. Win10 + GTX1650显卡 安装 Cuda-10.1 + CuDNN-7.6 + Tensorflow-gpu-1.15.0 一步到位
  17. 搭建自己的在线IDE
  18. C语言:A+B的几种实现方式
  19. python编程控制机器人_python程序控制NAO机器人行走
  20. 现货黄金每天的开盘和收盘时间是几点

热门文章

  1. “美登杯”上海市高校大学生程序设计赛B. 小花梨的三角形(模拟,实现)
  2. #189 stat(动态规划)
  3. [Luogu1891]疯狂LCM[辗转相减法]
  4. 列表和字典循环遍历时的删除问题,集合
  5. 使用python+ffmpeg批量转换格式
  6. js数组操作各种方法
  7. 利用C#实现标准的 Dispose模式
  8. esp8266环境搭建
  9. Windows消息循环理解及窗体创建步骤
  10. 获取某一扩展名的文件集合