配额管理¶
一项提案,旨在将现有的 Quota.update API 从管理 API 暴露给用户,通过非管理 API 进行访问。
Launchpad 蓝图:https://blueprints.launchpad.net/trove/+spec/quota-management
问题描述¶
管理 API 中存在一个 Quota.update API,允许操作员更改资源的配额分配。不幸的是,没有 CLI 可以访问该调用。
提议的变更¶
将 v1.Quotas 类添加到 v1.client,以便操作员可以执行命令来更改资源的分配。
配置¶
没有影响。
数据库¶
没有影响。
公共 API¶
无影响(REST API 已经存在)。
公共 API 安全¶
添加的调用将仅限于管理员用户。
Python API¶
在 python 客户端中添加 client.quotas.update
def update(self, id, quotas):
"""Set limits for quotas."""
此调用接收一个字典,指示要进行的更改
trove_client.quotas.update(project.id, {‘instances’: 10})
还在 python 客户端中添加 client.quotas.show
def show(self, id):
"""Shows usage information for quota managed resources."""
此调用接收项目的 ID,并返回所有资源及其使用情况
trove_client.quotas.show(project.id)
CLI (python-troveclient)¶
将添加两个新的 shell 命令
$ trove quota-show <project id>
$ trove quota-update <project id> volumes 50
内部 API¶
没有影响。
Guest Agent¶
无影响。
备选方案¶
Dashboard 影响 (UX)¶
这将仅通过命令行提供。
升级影响¶
无。
依赖项¶
测试¶
已经存在针对此功能的测试。
文档影响¶
参考资料¶
附录¶
任何其他技术信息和数据。