欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    OpenStack Neutron中的ML2 Plugin.docx

    • 资源ID:3162563       资源大小:38.69KB        全文页数:4页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    OpenStack Neutron中的ML2 Plugin.docx

    OpenStack Neutron中的ML2 Plugin本文包含两部分内容:ML2Plugin & Port Binding 1、 ML2 Plugin 既实现了核心资源,也包括了port binding等部分扩展资源。它完成了网络拓扑类型与底层虚拟网络实现的解耦,分别通过Type Manager,Mechanism Manager管理Type Driver、Mechanism Driver去实现。 2、ML2 Plugin的源码结构中比较关键的文件为: plugin.py 类ML2Plugin的实现 manager.py,定义了Type Manager,Mechanism Manager类的实现。 drivers.py,定义了Type Driver、Mechanism Driver的实现。 3、类ML2Plugin ML2Plugin继承自众多Mixin,其主要作用是完成一些数据库操作,致力于正确有效地管理三种核心资源极其相互关系,同时正确地和Agent交互,从而完成虚拟网络部署。 ML2除了三种核心资源外,也支持许多扩展资源。类ML2Plugin需要实现这些资源的操作接口,供Controller调用。 3.1、创建一个网络 当需要创建一个网络时,可以执行Neutron的客户端创建命令,该命令经过路由以后,最终由Plugin的create_network函数完成。 该函数取出传递进来的参数,ML2Plugin类完成数据库模型的创建,然后通过Type Manager调用Type Driver的接口;通过Mechanism Manager先后调用调用Mechanism Driver的precommit、postcommit接口; 3.2 关于概念segment的说明 可理解为对物理网络一部分的描述,比如众多VLAN中的一个VLAN可以理解为一个segment。segment有类型、物理网络,segment_ID三个标记。 3.3 关于概念provider的说明 provider用于在创建虚拟网络时指定这个虚拟网络所占用的物理网络资源。其有对应的Provider Extension API。 当一个虚拟网络可以包括多个不同的provider network时,这个虚拟网络就称为Multi-Segment Network。 4 、Type Manager,Mechanism Manager 负责加载对应的Driver,并将具体的操作分发到具体的Driver上,同时也提供一些Driver通用的代码。 Type Manager在初始化时,会加载对应的Type Driver,二者共同提供了对segment的各种操作,包括存储、验证、分配和回收等。 在创建network的时候,会从传递的参数中提取出segment的信息,并将其传向type manager。type manager会从参数中提取出的相关信息建立一个segment结构,然后告诉typer driver保留这个segment。 Mechanism Manager提供两个结构,其中precommit接口在数据库session时调用,而postcommit在数据库提交完成时调用。Mechanism Manager分发操作并具体传递操作到Mechanism Driver的方式与Type Manager相同。由于Mechanism Driver对应的是具体的物理实现方式,故而需要Mechanism Driver处理的操作都会按照配置的顺序依次调用每一个具体的Driver对应的函数来完成。 5、type Driver 其主要功能是管理网络segment,对segment进行验证、分配和释放等。分为Flat type Driver、Tunnel type Driver、VLAN type Driver。 对Flat type Driver来说,segment的分配很简单。只需将Type Manager传递过来的segment保存在数据库即可。 VXLAN、GRE都是使用Tunnel type Driver。其引入了TunnelTypeDriver类,实现了Type Driver要求的接口外,还实现了与Agent的接口。 VLAN Type Driver必须指定PHYSICAL_NETWORK。 6、Mechanism Driver 分为一些针对采用了Agent实现虚拟网络的Driver和其他Driver。前者没有去实现MechanismDriver的类,而是引入了一个新类AgentMechanismDriverBase类,主要做Port Binding相关的处理。 二、port binding 1、Neutron中扩展资源的方法 Extension API有两种方式扩展资源:1) 为核心资源添加属性 2)增加一些新的资源,如VPNaaS; 需要扩展资源时,需要通过neutron/api.extensions.py文件中的基类Extension Descriptor实现方法get_resources或者get_extended_resources; 2、Port Binding 在port创建时,只有MAC地址等少量的信息。虚拟机创建时,会为虚拟机指定一个port,随后虚拟机被调度器分配到一个计算节点上,这时port也来到这个计算节点上。port就又增加了一个属性host-id; Port Binding可理解为对Port属性的扩展。 Neutron通过Port Binding Extension API 对port的信息进行扩展,比如设置VIF_TYPE等。有了这些扩展的信息,nova可以根据这些信息调用libvirt等库来创建VIF(virtual network interface)和相关的Bridge。 前面的Mechanism Driver的主要工作就是进行port binding,它会依次调用所有Driver去进行binding,也即去具体的物理交换机或者虚拟交换机上去设置port binding扩展的那些属性。的Driver,他们会使用binding:host_id这个属性查询保存Agent信息的数据库,来确定节点上是否有对应的Agent运行,如果有,则进一步检查Agent配置,看是否支持其相应的扩展。如果一个binding成功,则不再进行后面的操作。) port binding时,涉及到的主要由类ML2Plugin,Mechanism Manager,Mechanism Driver。 其中ML2Plugin主要负责把握Port Binding的时机,根据时机调用具体的port方法。需要Port Binding 的时机有三个:1)创建port的时候 2)update_port的时候 3)Agent通过RPC从Plugin中获取port信息时。 Mechanism Manager中的处理很简单,即实现了bind_port的方法去尝试调用每个注册的Mechanism Driver,直到成功扩展。 Mechanism Driver的处理:寻找port所在host所有该Driver的Agent,对live的Agent的每个Segment进行检查,如果能够提供符合条件的port,则返回binding信息给类ML2Plugin。

    注意事项

    本文(OpenStack Neutron中的ML2 Plugin.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开