Stein 系列发布说明

18.0.0

序言

Stein 发布周期没有对 Images API 进行重大更改,此版本不会引入新的 Images API 次要版本。

在 Windows 兼容性方面进行了一些工作,Glance Stein 版本可以在 Windows 平台上运行。未来的开发也将基于第三方 CI 模型,以 Windows 为基础进行限制。

由于在使用多个后端方面存在一些未解决的问题,该功能的稳定化已被推迟到 Train 版本,并且在 Stein 版本中将保持 EXPERIMENTAL 状态。

此版本还包含一些功能性工作、改进和错误修复。请参阅其余的发布说明和文档以获取详细信息。

新特性

  • 重新引入 cache-manage 工具。在 Rocky 版本中,依赖于 Images API v1 的 glance-cache-manage 工具在移除 v1 端点时被移除。Stein 版本引入了经过重构的命令,以利用 Images API 版本 2。

  • 添加了 oslopolicy 强制执行入口点,使其能够使用 oslopolicy-policy-generator 获取有关策略的统一信息。注意:Glance 需要存在 policy.json 文件才能获得有意义的输出。

  • 现在可以列出对您可用的所有镜像。使用“all”可见性选项。

  • 添加了一个新的通用镜像属性“description”(描述)。这允许您为镜像指定简短的人类可读描述,适合在用户界面中显示。之前可以使用自定义镜像属性来完成此操作;此更改只是为了标准化用法,以促进互操作性。此更改不会影响现有镜像上名为“description”的任何属性,并且它不是必需的镜像属性。

  • [社区目标] 添加了对开发人员编写升级前检查的支持。操作员可以使用 glance-status upgrade check 运行这些检查。这使得操作员在升级其部署时更加自信,因为他们拥有一个可以自动执行针对部署配置或数据集的可编程检查的工具。

  • Glance 服务现在可以在 Windows 上运行。

已知问题

  • 多个后端:当通过 locations API 添加位置并且在调用中未定义后端 ID 时,不会分配默认后端。这可能会特别影响使用 rdb 后端的 Nova 快照。

升级说明

  • 在此版本中,show_multiple_locations 配置选项仍然被弃用,但尚未移除。(此前计划在 Pike 版本中移除。)请关注 Glance 发布说明和 glance-specs 仓库,以了解此问题的最新进展。

    计划是移除此选项,并仅使用策略来控制镜像位置的访问。然而,这需要进行大量的重构。请参阅 策略重构规范草案 以获取更多信息。

    目前尚无此更改的预计时间表,因为还没有人能够投入时间进行开发。Glance 团队乐于与任何对此感兴趣并愿意参与开发的人员进行更深入的讨论。

    解决方法是继续在专用的“内部”Glance 节点中使用 show_multiple_locations 选项,该节点不可供最终用户访问。我们仍然建议不要将镜像位置暴露给最终用户。请参阅 OSSN-0065 以获取更多信息。

错误修复

  • 以下是此版本中包含的一些错误修复亮点。

    • Bug 1781617:将 async 包重命名为 async_ (Python 3.7)

    • Bug 1781627:处理 Py3.7 PEP 0479 的 StopIteration

    • Bug 1695299:支持密码中的 RFC1738 引号字符

    • Bug 1750892:替换位置时更新状态为 active

    • Bug 1770410:使用 WebOb 1.8.1

    • Bug 1793057:配置新选项到示例配置文件

    • Bug 1800601:py3:修复 py37 下的递归问题

    • Bug 1805765:镜像转换失败

    • Bug 1803643:修复 FK 约束违规

    • Bug 1808063:保护 QuotaImageTagsProxy 上的 __getattr__

    • Bug 1809462:更正配置选项中的拼写错误(镜像转换)

    • Bug 1803299:web-dowload 中的失败使镜像保持在导入状态

    • Bug 1818919:py3:修复 CooperativeReader.read 上的返回类型

    • Bug 1803498:如果未启用“file”存储,数据将保留在暂存区域

其他说明

  • “Accept-Language”标头的协商现在遵循 RFC 4647 第 3.4 节 中描述的“Lookup”匹配方案。 “Lookup”方案是 RFC 7231 第 5.3.5 节 中建议的算法之一。(这是由于底层库的更改,该库先前使用了不符合 RFC 7231 的匹配方案。)