NovaAdminAPI
| |
旧设计页面
此页面曾用于帮助设计 OpenStack 早期版本的一个特性。该特性可能已经或尚未实现。因此,此页面可能不会更新,并且可能包含过时的信息。上次更新时间为 2013-12-19 |
- Launchpad 条目:NovaSpec:admin-account-actions
- 创建时间:2011 年 2 月 25 日
- 更新时间:2011 年 4 月 8 日
- 贡献者: GlenCampbell
目录
总结
本文档提出了一种 Nova 的管理 API。公共 API 面向系统用户(因此专注于服务器和镜像等终端工件),而管理 API(也称为“Admin API”)预计将由系统管理员使用。具体来说,管理 API 提供访问云计算系统的物理部署及其相关功能的机制,这些功能可能由企业 IT 部门或 Rackspace 等云托管提供商使用。正如预期的那样,最初的提案受到 Rackspace 需求的强烈影响,但此 Nova 项目的目标是将具有更广泛受众的功能与 Rackspace 特定的功能分开。
最初,管理 API 的所有功能都使用 API 扩展机制实现;如果 OpenStack 社区同意某些功能的必要性,它们将被迁移到 Nova Core。其他特定于 Rackspace 的功能将保留为自定义扩展,并由 Rackspace 维护。
发布说明
待定
原理
基于 Nova 部署计算云的管理员需要一种超越简单命令行工具的方法来管理大型复杂环境。因此,需要开发工具来支持云管理员,而不仅仅是云用户。通过提供管理 API,Nova 能够开发这些工具。
此外,通过尽可能地抽象化超visor 的功能,管理 API 也允许部署的灵活性。如果未来一种新的超visor 变得流行,管理 API 可以在其功能之上实现,从而允许使用现有工具。
用户故事
作为计算云管理员,我需要采取行动来防止我的用户可能互相伤害——例如,如果用户滥用资源,我需要暂停或删除该用户。
作为工具开发者,我需要一个稳定的 API,以便我可以开发具有尽可能广泛用途的工具(而不是必须为多个不同环境重新实现相同的功能)。
前提条件
多集群“区域” 蓝图已经实现。
设计
/{account_id}/action
此资源提供了一种对与特定帐户关联的资源执行特定操作的机制。与 /servers/ID/action 资源类似,消息通过请求主体传递,指定要执行的操作。
请注意,account_id 假定与 tenant_id 相同。
| 操作 |
|SUSPEND_SERVERS
|
|UNSUSPEND_SERVERS
|
|SUSPEND
|
|UNSUSPEND
|
注释:“RESUME”可能比“UNSUSPEND”更好,但选择“UNSUSPEND”是为了与现有的 Rackspace 功能保持一致。
实现
本节应描述实施所讨论更改的行动计划(“如何”)。可以包括诸如
UI 变更
应涵盖对 UI 的要求更改或实施此功能的特定 UI
代码变更
代码变更应包括需要更改的内容的概述,并且在某些情况下甚至包括具体细节。
迁移
包括
- 数据迁移(如果有)
- 从旧 URL 到新 URL 的重定向(如果有)
- 如何引导用户使用新的操作方式(如果需要)。
测试/演示计划
这不必在规范接近 Beta 之前添加或完成。
未解决的问题
这应该突出显示需要在进一步的规范中解决的任何问题,而不是规范本身的问题;因为任何存在问题的规范都无法获得批准。
BoF 议程和讨论
使用本节记录 BoF 期间的笔记;如果将其保留在批准的规范中,请用于总结讨论内容并记录任何被拒绝的选项。