扩展 L3 计量 API 的管理功能

Launchpad蓝图

https://blueprints.launchpad.net/neutron/+spec/l3-metering-mgnt-ext

此蓝图旨在扩展当前的计量 API,以帮助管理员管理计量标签/规则。

问题描述

目前,管理员必须手动为每个租户关联计量标签,没有办法添加默认的计量标签/规则,这些标签/规则将自动与所有当前租户以及将来创建的租户关联。

用例

  • 管理员希望为计费目的从公共网络获取所有当前租户和未来租户的流量计数器。目前,每次添加租户时,管理员都必须为其创建一个新的标签。

  • 管理员希望为监控目的从服务网络获取流量计数器,例如从暴露物理资源(例如:数据库、存储)的提供商网络。

提议的变更

目标是扩展当前 API,为标签创建添加一个额外的参数,该参数指定标签是否由所有租户共享。这样的标签将由所有当前租户以及将来创建的租户共享。

备选方案

另一种方法是添加一个额外的配置文件,在计量代理启动时设置一些计量标签/规则。

数据模型影响

将在 MeteringLabel 数据模型中添加一个额外的字段,以指定标签是否共享。默认情况下,计量标签将不共享。当前的标签将保持不变。

REST API 影响

将在当前的 MeteringLabel 模型中引入一个新的共享属性

属性名称

类型

访问

默认值

验证/转换

描述

共享

bool

RW,管理员

false

N/A

安全影响

无变更,只有管理员用户允许创建/删除标签/规则。

通知影响

其他最终用户影响

共享参数将通过 neutron 客户端暴露给最终用户,例如

neutron meter-label-create testlabel –shared

性能影响

其他部署者影响

开发人员影响

实现

负责人

Sylvain Afchain <sylvain-afchain>

工作项

工作分为两部分

  1. API、数据模型、计量服务插件。

  2. Neutron 客户端更新。

依赖项

测试

为了 tempest 测试覆盖,将提供针对共享参数的新 API 测试。

文档影响

将提供共享参数的文档和示例。

参考资料