添加 PLUMgrid 插件到 neutron playbook

日期:

2015-06-2 14:30

标签:

neutron, 插件, 网络

本规范旨在通过 os-ansible neutron playbook 引入使用 PLUMgrid OpenStack Neutron 插件的功能。

问题描述

PLUMgrid 是一个核心 neutron 网络插件,自 Grizzly 版本以来一直是 OpenStack neutron 的一部分。它提供了一个网络虚拟化平台,使用与 Hypervisor 层的直接通信来提供通过 Neutron API 请求的所有网络功能。PLUMgrid Neutron 插件实现了 Neutron v2 API,并有助于配置通过 PLUMgrid 平台创建的 L2/L3 虚拟网络。它还实现了外部网络和端口绑定扩展。

PLUMgrid 插件支持的 API
  • 网络

  • 子网

  • 端口

  • 外部网络

  • 路由器

  • 安全组

  • 配额

  • 端口绑定

  • 提供商网络

提议的变更

此更改建议将 PLUMgrid 插件作为核心插件选项添加到 ml2 之外,ml2 将是默认选项。此可配置性应已通过 BP: modularize-neutron-plays 实现。

PLUMgrid 的其余安装,需要 PLUMgrid Controller 和 Compute 组件,这些组件能够管理插件,将通过 Ansible Galaxy roles 外部添加。

以下描述的更改假定之前提到的 BP 模块化更改已到位。

此功能建议同时应用于 kilo 和 juno 分支,juno 的更改将首先进行

  1. 对于 juno,与 PLUMgrid 插件相关的参数,即 plumgrid 核心插件和插件配置文件 plumgrid.ini,将被添加到 inventory/group_vars/neutron_all.yml 中的一个新的字典项中。这将允许设置 ‘neutron_plugin_type = plumgrid’(如果需要)。

  2. 对于 kilo,与 PLUMgrid 插件相关的参数将被添加到 ‘playbooks/roles/os_neutron/defaults/main.yml’ 中的一个新的字典项中。这将允许将 ‘neutron_plugin_type’ 设置为 plumgrid(如果需要)。

剧本影响

  1. 在 juno 中,预计将修改以下文件

  • rpc_deployment/playbooks/openstack/inventory/group_vars/neutron_all.yml

以下模板将在 neutron_common role 中创建

  • rpc_deployment/roles/neutron_common/templates/plugins/plumgrid/plumgrid.ini

  • rpc_deployment/roles/neutron_common/templates/plugins/plumgrid/plumlib.ini

  • rpc_deployment/roles/neutron_common/templates/rootwrap.d/plumlib.filters

  1. 在 kilo 中,预计将修改这些文件

  • playbooks/roles/os_neutron/defaults/main.yml

将在 os_neutron role 中添加新的模板

  • playbooks/roles/os_neutron/templates/plugins/plumgrid/plumgrid.ini

  • playbooks/roles/os_neutron/templates/plugins/plumgrid/plumlib.ini

  • playbooks/roles/os_neutron/files/rootwrap.d/plumlib.filters

升级影响

备选方案

为了继续使用默认的 ml2 和 linuxbridge-agent neutron 部署,且没有其他核心 neutron 插件的可能性。

安全影响

N/A

性能影响

预计此更改不会影响性能。典型的 PLUMgrid 插件安装,将进一步禁用 neutron agent 安装。因此,预计整体性能将保持不变。

最终用户影响

最终用户在选择安装此插件时,能够利用 PLUMgrid 插件提供的增强的可扩展性和操作能力。更多详细信息请参见下面的参考文献部分。

部署者影响

这将为部署者提供使用 PLUMgrid 作为 neutron 插件的选项。升级到先前的版本以使用此新功能也只能通过重新运行 neutron playbook 实现。此更改不会影响云中的运行实例。

开发人员影响

此更改添加了进一步的可安装选项,因此不会影响 playbook 的默认流程。

依赖项

实现

负责人

主要负责人

https://launchpad.net/~javeria-ak

工作项

此更改将使用模块化的 neutron playbook 将 PLUMgrid 作为插件选项提供。将向 neutron playbook 添加一组三个新的模板文件以支持 plumgrid。

依赖项

依赖于

测试

无需进行其他更改即可在当前测试和/或门控框架中测试此功能,该框架也涵盖 neutron 组件。

文档影响

需要文档来描述如何修改配置参数以安装 PLUMgrid。这将是部署者文档。

参考资料