Queens 系列发布说明¶
13.0.3-9¶
升级说明¶
publicize_image策略现在在镜像创建和编辑功能中具有相同的名称,并且与 Glance 中的名称相对应。如果您手动更改了策略名称以使功能正常工作,则在 Horizon 更新之前必须回滚您的更改。
安全问题¶
已修复一个开放重定向漏洞,该漏洞可能通过在 URL 中指定“next”参数,将用户重定向到任意地址。现在,重定向仅在目标 URL 与相同域并且使用相同协议时才有效。
错误修复¶
[bug:1859041]
image:publicize_image策略已重命名为publicize_image,以与 Glance 中的名称相同。
13.0.3¶
错误修复¶
修复在 Angularized 面板中更改镜像描述字段时出现的错误 [:bug: 1779879]
[bug:1840465] 修复了一个错误,如果一个或多个安全组没有规则,则列出安全组将无法工作。
13.0.0¶
新特性¶
添加 MKS 控制台支持。蓝图可在 [https://blueprints.launchpad.net/horizon/+spec/support-mks-console-type] 找到
[蓝图:neutron-trunk-ui] 现在支持 Neutron trunk 功能。它在项目和管理仪表板中都受支持。如果 Neutron API 扩展 ‘trunk’ 可用,则会显示该面板。它显示关于 trunk 的信息。每个 trunk 的详细页面还显示该 trunk 的子端口信息。
[蓝图 ng-keypairs] 添加了基于 AngularJS 的密钥对面板。旧面板中的功能已完全实现。密钥对面板现在可以配置为使用旧版或基于 AngularJS 的代码。ANGULAR_FEATURES 设置现在允许使用 key_pairs_panel。如果设置为 True,则将使用基于 AngularJS 的密钥对面板,如果设置为 False,则将使用 Django 版本。key_pairs_panel 的默认值为 True。
添加了一种在将其附加到实例时指定接口的方法。可以通过网络和固定 IP 地址(可选)或端口来指定。
现在默认使用 Cinder API v3。它是在 Mitaka 版本中引入的,并且具有 API v2 的所有功能。
keystone v3 API 现在成为默认的 keystone API 版本。
[蓝图 extensible-header] 添加了一个功能,可以将自定义标头插入到 horizon 的顶部栏中。
浮动 IP 地址具有一个描述字段,现在在仪表板中公开。在分配浮动 IP 时也可以设置描述。
horizon 中的策略框架现在支持每个服务的策略目录。这对应于 “oslo.policy” 库中的
policy_dirs配置选项。引入了新的设置POLICY_DIRS。该设置允许为每个服务定义多个策略目录。例如,对于多个项目提供策略文件(如 neutron stadium 项目)的情况非常有用。有关详细信息,请参阅 horizon 设置参考。
支持运营商和用户针对网络端口关联安全组。请注意,当前实现仅支持从网络详细页面中的端口表中编辑 neutron 端口的安全组(计划进行进一步改进)。
已知问题¶
[bug:1746706] 重新加载或直接打开基于 Angular 的详细页面时,导航菜单和面包屑列表无法正确恢复,并且焦点位于第一个面板上。 [bug:1746709] 当我们尝试打开不存在的基于 Angular 的详细页面时,未显示“未找到” (404) 页面。仅显示带有导航菜单的空白页面。
升级说明¶
如果您的部署没有 Cinder API v3 端点,例如
volumev3,您应该创建新的端点或通过在 OpenStack Dashboard (Horizon) 配置文件中设置 OPENSTACK_API_VERSIONS[‘volume’] = 2 来使用 Cinder API v2。
默认 keystone API 版本切换到
v3。如果您仍然默认使用 keystone v2.0 API,则需要配置OPENSTACK_API_VERSIONS和OPENSTACK_KEYSTONE_URL以指向 keystone v2.0 API。
Heat 仪表板现在被拆分为一个单独的项目
heat-dashboard。从现在开始,所有新功能和维护都由新项目提供。新项目提供了过去版本中 Horizon 中可用的所有功能。要继续使用 heat 仪表板,请安装heat-dashboard并设置 horizon 插件配置文件中的enabled目录。有关更多信息,请参阅heat-dashboard文档 https://docs.openstack.org/heat-dashboard/2025.2/。
[蓝图:merge-openstack-auth]
django_openstack_auth已合并到主 horizon 存储库中。确保在升级到 Queens 之前卸载django-openstack-authpython 包。
弃用说明¶
删除为 Angularized 操作过时弃用的 initScope() 函数。而是使用 initAction() 并从 perform() 函数的第二个参数获取作用域。
错误修复¶
[bug:1337473] 新项目的 neutron 资源默认配额不再从当前项目的配额中获取。Neutron 没有提供一种检索默认配额的方法,horizon 使用当前项目的配额作为新项目的默认配额作为一种解决方法。Neutron 从 newton 开始实现了一个 API 来检索默认配额,horizon 现在使用它。
[bug:1681627] 已经修复了一个基于 Angular 的详细页面(ngdetail 页面)无法重新加载或通过直接 URL 打开的问题。请注意,在 已知问题 部分中描述了一些已知问题。
引入了一个新的设置
OPENSTACK_INSTANCE_RETRIEVE_IP_ADDRESSES来控制是否从 neutron 中检索项目实例表中的服务器 IP 地址。为了减轻大型部署中的性能问题,引入了此设置,并将此设置为False会跳过对 neutron 的查询。对于没有浮动 IP 支持的部署,可以将此设置设置为False以获得更好的性能。有关详细信息,请参阅 [bug:1722417]。
其他说明¶
horizon 的 Queens 版本依赖于 Django 1.8 到 1.11,但 Django 1.8 到 1.10 支持将在下一个版本 (Rocky) 中停止。
(对于 Horizon 插件开发者) transfer 表的 AVAIL_CHANGED 事件已被删除。它已被 TABLES_CHANGED 事件取代。AVAIL_CHANGED 的名称具有误导性,因为它隐式且不受控制地更新了已分配的表。新的事件允许独立更新所有四个表。我们认为删除 AVAIL_CHANGED 是安全的,而无需弃用,因为它的实现包含一个必须在有人使用它之前发现的错误。无论如何,建议所有可能的非树插件维护者使用新的事件,即使您的插件依赖于 AVAIL_CHANGED 的错误行为。