跳转到: 导航, 搜索

Neutron/RestProxyPlugin

Quantum Rest Proxy 插件

范围

此 Quantum 插件将 Quantum 函数调用转换为经过身份验证的 REST 请求,发送到一组冗余的外部网络控制器。

用例

提供隔离的虚拟网络。

实现概述

此插件继承自 db 插件,并依赖于它来持久化核心资源的状态。

然后它将请求代理到控制器,基于控制器暴露的以下 API

GET /quantum/1.0/topology

PUT /quantum/1.0/topology

DELETE /quantum/1.0/topology

GET /quantum/1.0/tenants/:tenant/networks/

GET /quantum/1.0/tenants/:tenant/networks/:network

GET /quantum/1.0/tenants/:tenant/networks/:network/detail

POST /quantum/1.0/tenants/:tenant/networks

PUT /quantum/1.0/tenants/:tenant/networks/:network

DELETE /quantum/1.0/tenants/:tenant/networks/:network

GET /quantum/1.0/tenants/:tenant/networks/:network/ports

GET /quantum/1.0/tenants/:tenant/networks/:network/ports/:port

GET /quantum/1.0/tenants/:tenant/networks/:network/ports/:port/detail

POST /quantum/1.0/tenants/:tenant/networks/:network/ports

PUT /quantum/1.0/tenants/:tenant/networks/:network/ports/:port

DELETE /quantum/1.0/tenants/:tenant/networks/:network/ports/:port

GET /quantum/1.0/tenants/:tenant/networks/:network/ports/:port/attachment

PUT /quantum/1.0/tenants/:tenant/networks/:network/ports/:port/attachment

DELETE /quantum/1.0/tenants/:tenant/networks/:network/ports/:port/attachment

API 详情附加在此规范的末尾。

数据模型变更

无,使用基础 Quantum DB 模型。

配置变量

etc/quantum/plugins/restproxy/restproxy.ini

[DATABASE]






[RESTPROXY]




API

没有新的 API/扩展。

插件接口

实现标准插件接口。

必需的插件支持

这是一个插件实现。

依赖项

没有新的软件包。但会依赖于外部控制器(例如 Floodlight)来实际执行网络配置。

CLI 要求

没有新的 CLI。

Horizon 要求

使用示例

Quantum CLI 用于网络、子网和端口

测试用例

提供了单元测试以及一个虚拟控制器。测试可以从 Quantum 目录的顶层运行: > ./run_tests.sh quantum.tests.unit.restproxy.test_restproxy_plugin

插件到控制器 API 详情

请参阅附加文档 attachment:api-details.txt