已弃用的镜像元数据代理 API¶
https://blueprints.launchpad.net/nova/+spec/deprecate-image-meta-proxy-api
在 弃用 API 代理 的提议中,代理 API 已经被弃用。但 image-metadata API 在该提议中被遗漏。本规范旨在描述 image-metadata API 的弃用。
问题描述¶
代理 API 应该从 Nova API 中移除。image-metadata API 就是其中之一。它只是 Glance API 操作镜像元数据的代理 API。
在 create_image/backup API 中,对于额外的元数据存在配额检查,它使用 Nova metadata 配额进行强制执行。在 Glance 中,配置选项 image_property_quota 用于控制镜像元数据的配额。因此,此配额检查应该由 Glance API 直接强制执行。Nova 不应该为自身未管理资源强制执行配额。
用例¶
用户应该直接从 Glance API 更新镜像元数据,而不是使用 Nova 中的代理 API。
管理员只需要在一个单一的点控制镜像元数据的配额,而这个点就是 Glance。
提议的变更¶
提议在新的 Microversion 中弃用 image-metadata API,并移除使用 Nova metadata 配额进行的额外配额强制执行。
备选方案¶
永久保留这些代理。这将增加 Nova 的维护成本,并降低我们适应新功能和要求的速度。
数据模型影响¶
无
REST API 影响¶
使用新的 Microversion,对 image-metadata API 的请求将获得 HTTPNotFound 404 响应。使用 Nova metadata 的镜像配额强制执行将被移除,并且 maxImageMeta 字段将从 os-limits API 中移除。
安全影响¶
无
通知影响¶
无
其他最终用户影响¶
CLI nova image-meta 已经弃用。python-novaclient 中的 python API 绑定也将限制到新的 Microversion。用户只能在旧的 Microversion 中使用此命令,我们计划在 Nova 15.0.0 发布后,在第一个主要的 python-novaclient 版本中移除它。
性能影响¶
无
其他部署者影响¶
部署者应该更新 Glance 侧的镜像元数据配额,以匹配 nova create image/backup API 中的限制。
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
Alex Xu <hejie.xu@intel.com>
工作项¶
以下所有操作都在单个新的 Microversion 下完成
弃用 image-metadata API。
移除 create image/backup 操作的配额检查。
从 os-limits API 中移除 maxImageMeta 字段。
限制 python-novaclient 中镜像元数据的 python API 绑定。
依赖项¶
无
测试¶
将进行树内功能测试,以确保这些 API 在此 Microversion 之后能够正常工作并返回 404 错误。
对于 Tempest,ImagesMetadataTestJSON 需要限制到该 Microversion。在 openstack-dev 邮件列表中,关于如何处理此问题的讨论正在进行中:正在进行的讨论。
文档影响¶
更新 api-ref,说明 image-metadata 在新的 Microversion 中已被弃用。还需要为部署者提供升级说明,说明镜像元数据的配额检查不再在 Nova 侧强制执行。
参考资料¶
历史¶
发布名称 |
描述 |
|---|---|
Ocata |
引入 |