显示服务器位于哪个服务器组 “nova show”¶
bp link
https://blueprints.launchpad.net/nova/+spec/show-server-group
问题描述¶
目前,需要循环遍历所有组才能找到服务器所属的组。此规格试图通过建议在 API GET /servers/{server_id} 中显示服务器组信息来解决这个问题。
用例¶
管理员/最终用户希望以直接的方式了解服务器所属的服务器组。
提议的变更¶
建议将服务器组 UUID 添加到 GET /servers/{id}、PUT /servers/{server_id} 和 REBUILD API POST /servers/{server_id}/action 中。
服务器组信息将不会包含在 GET /servers/detail API 中,因为服务器组信息需要另一个数据库查询。
备选方案¶
一种替代方案是支持通过服务器 UUID 过滤服务器组。例如
GET /os-server-groups?server=<UUID>。另一种支持服务器组查询的替代方案是以下 API:
GET /servers/{server_id}/server_groups。
数据模型影响¶
NO
REST API 影响¶
允许 GET /servers/{server_id} API 显示服务器组的 UUID。PUT /servers/{server_id} 和 REBUILD API POST /servers/{server_id}/action 也返回相同的信息。
服务器组返回的信息
{
"server": {
"server_groups": [ # not cached
"0b5d2c72-12cc-4ba6-a8d7-3ff5cc1d8cb8"
]
}
}
安全影响¶
N/A
通知影响¶
N/A
其他最终用户影响¶
python novaclient 将包含服务器组信息。
性能影响¶
需要另一个数据库查询来检索服务器组 UUID。为了减少批量 API 调用带来的性能影响,
GET /servers/detail不会返回服务器组信息。
其他部署者影响¶
N/A
开发人员影响¶
N/A
升级影响¶
N/A
实现¶
负责人¶
- 主要负责人
Yongli He
工作项¶
为此更改添加新的微版本。
依赖项¶
N/A
测试¶
添加功能 api_sample 测试。
为 tempest 添加与微版本相关的测试。
文档影响¶
API 文档应更改为介绍此新功能。
参考资料¶
Stein PTG 讨论:https://etherpad.openstack.org/p/nova-ptg-stein
历史¶
发布名称 |
版本 |
|---|---|
Stein |
第一个版本 |