详解 ML2 Core Plugin(II) - 每天5分钟玩转 OpenStack(72)

上一节我们讨论了 ML2 Plugin 解决的问题,本节将继续研究 ML2 的架构。

ML2 对二层网络进行抽象和建模,引入了 type driver 和 mechansim driver。
这两类 driver 解耦了 Neutron 所支持的网络类型(type)与访问这些网络类型的机制(mechanism),其结果就是使得 ML2 具有非常好的弹性,易于扩展,能够灵活支持多种 type 和 mechanism。

Type Driver

Neutron 支持的每一种网络类型都有一个对应的 ML2 type driver。
type driver 负责维护网络类型的状态,执行验证,创建网络等。
ML2 支持的网络类型包括 local, flat, vlan, vxlan 和 gre。
我们将在后面章节详细讨论每种 type。

Mechansim Driver

Neutron 支持的每一种网络机制都有一个对应的 ML2 mechansim driver。
mechanism driver 负责获取由 type driver 维护的网络状态,并确保在相应的网络设备(物理或虚拟)上正确实现这些状态。

type 和 mechanisim 都太抽象,现在我们举一个具体的例子:
type driver 为 vlan,mechansim driver 为 linux bridge,我们要完成的操作是创建 network vlan100,那么:

  1. vlan type driver 会确保将 vlan100 的信息保存到 Neutron 数据库中,包括 network 的名称,vlan ID 等。
  2. linux bridge mechanism driver 会确保各节点上的 linux brige agent 在物理网卡上创建 ID 为 100 的 vlan 设备 和 brige 设备,并将两者进行桥接。

mechanism driver 有三种类型:
Agent-based
包括 linux bridge, open vswitch 等。

Controller-based
包括 OpenDaylight, VMWare NSX 等。

基于物理交换机
包括 Cisco Nexus, Arista, Mellanox 等。
比如前面那个例子如果换成 Cisco 的 mechanism driver,则会在 Cisco 物理交换机的指定 trunk 端口上添加 vlan100。

本教程讨论的 mechanism driver 将涉及 linux bridge, open vswitch 和 L2 population。

linux bridge 和 open vswitch 的 ML2 mechanism driver 其作用是配置各节点上的虚拟交换机。
linux bridge driver 支持的 type 包括 local, flat, vlan, and vxlan。
open vswitch driver 除了这 4 种 type 还支持 gre。

L2 population driver 作用是优化和限制 overlay 网络中的广播流量。
vxlan 和 gre 都属于 overlay 网络。

ML2 core plugin 已经成为 OpenStack Neutron 的首选 plugin,本教程后面会讨论如何在实验环境中配置 ML2 的各种 type 和 mechansim。

学习完 Core Plugin,下一节我们将学习 Service Plugin 和相关的 Agent。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值