Plugin 专题 - OpenStack Neutron 源码分析

返回介绍

Plugin 专题

发布于 2019-11-12 字数2841 浏览 807 评论 0

Plugin专题

plugin实现对REST API请求的后端支持。前端的rest框架会调用plugin的相应方法来实现rest api规定的语义。

plugin包括两种类型:核心plugin和服务plugin。

核心Plugin实现了对标准API的支持(对网络、端口和子网资源的相应操作),此外还可以选择性的支持一些扩展的API(_supported_extension_aliases属性中会指出)。
以neutron的openvswitch plugin为例,支持的扩展API包括

_supported_extension_aliases = ["provider", "external-net", "router",
                                    "ext-gw-mode", "binding", "quotas",
                                    "security-group", "agent", "extraroute",
                                    "l3_agent_scheduler",
                                    "dhcp_agent_scheduler",
                                    "extra_dhcp_opt",
                                    "allowed-address-pairs"]

服务plugin则专门用于实现扩展API。目前,路由器、防火墙、vpn等都有相应的service plugin来专门实现。

neturon server启动时候,根据配置文件动态加载相应的核心plugin及服务plugins。
目前,neutron-server只能配置一个核心Plugin,但可以配置多个服务plugin(但每个extension的实现plugin不能超过一个)。

ML2 core plugin允许同时加载多个mechanism driver,可以达到同时使用不同的L2实现技术的效果。

上一篇:neutron-server RPC

下一篇:Extension 专题

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!