Glance Spec Lite

如果尝试删除或替换非 active 状态的镜像位置,则返回 409

问题:

show_multiple_locations 设置为 True 时,用户目前可以删除或替换镜像的任何位置,无论镜像状态如何。这可能会给用户带来不好的体验:- 1) 如果用户尝试在镜像处于 saving 状态时更改或删除位置,Glance 将尝试将数据写入先前保存的位置,而用户正在更新自定义位置。这将导致竞争条件。 2) 对于处于 queued 状态且尚未上传任何镜像数据的镜像,无需删除镜像位置,允许用户删除镜像位置可能会导致不好的体验。但是,可以允许用户替换镜像位置以保持向后兼容性,并且替换可能意味着用非空镜像位置替换空位置。 3) 对于处于 deactivated 状态的镜像,必须确保不更新镜像位置,因为这不符合将镜像状态设置为 deactivated 的目的,并且可能引起安全问题。

解决方案:

1) 如果在镜像状态不是 active 时尝试删除镜像位置,则返回冲突错误(409 响应代码)。 2) 如果在镜像状态不是 activequeued 时尝试替换镜像位置,则返回冲突错误(409 响应代码)。

影响:

当镜像状态不是 active 时,将抛出冲突错误,阻止用户删除镜像位置;当镜像状态不是 activequeued 时,将抛出冲突错误,阻止用户替换镜像位置。

时间线:

预计将在 ocata-1 时间范围内合并。

链接:

https://review.openstack.org/#/c/366995/

负责人:

Nikhil Komawar, Dharini Chandrasekar

结束 如果尝试删除或替换非 active 状态的镜像位置,则返回 409

使用 Virtuozzo 虚拟机扩展 hypervisor_type 元数据

问题:

目前,即使 Nova 自 Kilo 版本发布以来就支持 Virtuozzo 虚拟机,也无法通过指定 hypervisor_type 元数据来要求 Virtuozzo 虚拟机。

解决方案:

我们需要扩展 etc/metadefs/compute-hypervisor.json hypervisor_type 属性,添加适当的标识符 ‘vz’,如 http://git.openstack.org/cgit/openstack/nova/tree/nova/compute/hv_type.py 中定义的那样。

影响:

这将对文档产生影响。应添加发布说明,以通知对此添加感兴趣的各方。

时间线:

预计将在 O-2 时间范围内合并。

链接:

https://review.openstack.org/#/c/341623/

负责人:

Maxim Netratov

结束 使用 Virtuozzo 虚拟机扩展 hypervisor_type 元数据

ploop 添加到受支持的磁盘格式列表中

问题:

目前,即使 Nova 自 Kilo 版本发布以来就支持它,但 ‘ploop’ 格式并非默认受支持的磁盘格式之一。

解决方案:

需要更新 disk_formats 配置文件选项,将 ‘ploop’ 添加为受支持的格式之一。

影响:

这将对文档产生影响。应添加发布说明,以通知对此添加感兴趣的各方。

时间线:

预计将在 O-2 时间范围内合并。

链接:

https://review.openstack.org/#/c/341633/

负责人:

Maxim Netratov

结束ploop 添加到受支持的磁盘格式列表

使用 Range HTTP 标头代替 Content-Range 来解析请求

问题:

当发送部分镜像下载的 HTTP 请求时,当前解析 Content-Range 标头以获取请求中的字节范围。根据 RFC 7233 规范,HTTP 请求中所需的字节范围应使用 Range 标头指定,而不是 Content-Range 标头。后者保留用于对这些请求的响应。当前实现要求用户发送与此规范不兼容的请求。例如,用户必须提供“bytes 12-30/32”,而不是“bytes=12-32”。

解决方案:

解析 HTTP 请求中的 Range 标头,并在服务器响应中发送带有 Content-Range 实体标头。为了向后兼容,保留当前对 Content-Range 标头请求的支持并弃用它。

影响:

用户将能够使用请求中的适当值格式发送带有 Range 标头的部分下载请求。对于开发人员,Range webob 解析器没有 length 属性。我们将必须显式传递镜像大小并执行检查以识别从解析的 Range 标头中无法满足的字节范围请求。此更改还需要 API 版本更新。

时间线:

预计将在 Ocata 时间范围内合并。

链接:

https://review.openstack.org/#/c/367528/

负责人:

Dharini Chandrasekar

结束 使用 Range HTTP 标头代替 Content-Range 来解析请求