发行注记

Red Hat OpenStack Platform 16.0

Red Hat OpenStack Platform 16.0 发行详细信息

OpenStack Documentation Team

Red Hat Customer Content Services

摘要

本文档概述 Red Hat OpenStack Platform 的主要功能、改进和已知问题。

第 1 章 简介

1.1. 关于本发行版本

本发行版本的 Red Hat OpenStack Platform 基于 OpenStack 的“Train”发行版本。其中包括特定于 Red Hat OpenStack Platform 的附加功能、已知问题和已解决的问题。

本文仅包含与 Red Hat OpenStack Platform 相关的变更。OpenStack“Train”发行版本本身的发行注记请见:https://releases.openstack.org/train/index.html

Red Hat OpenStack Platform 还使用了其他红帽产品的组件。关于这些组件支持的具体信息,请参见以下链接:https://access.redhat.com/site/support/policy/updates/openstack/platform/

如需试用 Red Hat OpenStack Platform,请通过以下网址注册:http://www.redhat.com/openstack/

注意

Red Hat OpenStack Platform 可以使用 Red Hat Enterprise Linux High Availability 附加组件。如需这个附加组件的详细信息,请参见以下链接:http://www.redhat.com/products/enterprise-linux-add-ons/high-availability/。如需了解可与 Red Hat OpenStack Platform 搭配使用的软件包版本的详细信息,请参见以下链接:https://access.redhat.com/site/solutions/509783

1.2. 要求

此版本的 Red Hat OpenStack Platform 可在完全受支持的最新 Red Hat Enterprise Linux 版本(版本 8.1)上运行。

Red Hat OpenStack Platform 控制面板(dashboard)是一个基于网页的界面,用于管理 OpenStack 资源和服务。

此版本的控制面板支持下列网页浏览器的最新稳定版本:

  • Chrome
  • Mozilla Firefox
  • Mozilla Firefox ESR
  • Internet Explorer 11 及更高版本(禁用兼容模式
注意

在部署 Red Hat OpenStack Platform 前,请务必考虑可用部署方法的特性。如需更多信息,请参阅安装和管理 Red Hat OpenStack Platform

1.3. 部署限制

如需 Red Hat OpenStack Platform 的部署限制清单,请参见 Red Hat OpenStack Platform 部署限制

1.4. 数据库容量管理

有关在 Red Hat OpenStack Platform 环境中维护 MariaDB 数据库容量的推荐做法,请参见 Red Hat Enterprise Linux OpenStack Platform 数据库容量管理

1.5. 认证的驱动程序和插件

如需 Red Hat OpenStack Platform 中经认证的驱动程序和插件的列表,请参见 Red Hat OpenStack Platform 组件、插件和驱动程序支持

1.6. 认证的客户机操作系统

如需 Red Hat OpenStack Platform 中经认证的客户机操作系统的列表,请参见 Red Hat OpenStack Platform 和 Red Hat Enterprise Virtualization 中的经认证的客户机操作系统

1.7. 产品认证目录

有关红帽官方产品认证目录的列表,请参见产品认证目录

1.8. 裸机置备操作系统

如需可通过裸机置备 (ironic) 安装到 Red Hat OpenStack Platform 中的客户机操作系统的列表,请参见可通过裸机置备 (ironic) 部署的受支持操作系统

1.9. 虚拟机监控程序支持

此 Red Hat OpenStack Platform 发行版本仅支持与 libvirt 驱动程序搭配(使用 KVM 作为计算节点上的虚拟机监控程序)。

此发行版本的 Red Hat OpenStack Platform 支持与裸机置备搭配运行。

自 Red Hat OpenStack Platform 7 (Kilo) 发行版本起,裸机置备已被完全支持。通过裸机置备,可以使用通用的技术(如 PXE 和 IPMI)来置备多种不同硬件的裸机,同时也可以通过可插入式驱动程序来实现特定厂商所提供的额外功能。

红帽不为其他计算虚拟化驱动程序提供支持,如已淘汰的 VMware "direct-to-ESX” 虚拟机监控程序或非 KVM libvirt 虚拟机监控程序

1.10. 内容交付网络 (CDN) 软件仓库

本节介绍了部署 Red Hat OpenStack Platform 16.0 所需的软件仓库。

您可以使用 subscription-manager 通过内容交付网络(CDN)安装 Red Hat OpenStack Platform 16.0。有关更多信息,请参阅准备 undercloud

警告

Red Hat OpenStack Platform 软件仓库中的一些软件包和 Extra Packages for Enterprise Linux (EPEL) 软件仓库提供的软件包存在冲突。在启用了 EPEL 软件仓库的系统中使用 Red Hat OpenStack Platform 不被支持。

1.10.1. undercloud 软件仓库

启用以下软件仓库用于安装和配置 undercloud。

核心软件仓库

下表列出了用于安装 undercloud 的核心软件仓库。

名称软件仓库描述

Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)

rhel-8-for-x86_64-baseos-rpms

x86_64 系统的基本操作系统仓库。

Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)

rhel-8-for-x86_64-appstream-rpms

包括 Red Hat OpenStack Platform 的依赖软件包。

Red Hat Enterprise Linux 8 for x86_64 - High Availability (RPMs)

rhel-8-for-x86_64-highavailability-rpms

Red Hat Enterprise Linux 的高可用性工具。用于 Controller 节点的高可用性功能。

Red Hat Ansible Engine 2.8 for RHEL 8 x86_64 (RPMs)

ansible-2.8-for-rhel-8-x86_64-rpms

适用于 Red Hat Enterprise Linux 的 Ansible Engine。用于提供最新版本的 Ansible。

Red Hat Satellite Tools for RHEL 8 Server RPMs x86_64

satellite-tools-6.5-for-rhel-8-x86_64-rpms

管理使用 Red Hat Satellite 6 的主机的工具。

Red Hat OpenStack Platform 16.0 for RHEL 8 (RPMs)

openstack-16-for-rhel-8-x86_64-rpms

Red Hat OpenStack Platform 核心软件仓库,包含 Red Hat OpenStack Platform director 的软件包。

Red Hat Fast datapath for RHEL 8 (RPMS)

fast-datapath-for-rhel-8-x86_64-rpms

为 OpenStack Platform 提供 Open vSwitch (OVS) 软件包。

IBM POWER 软件仓库

下表列出了用于 Openstack Platform on POWER PC 架构的软件仓库。使用这些软件仓库来替代核心软件仓库中的同等库。

名称软件仓库描述

Red Hat Enterprise Linux for IBM Power, little endian - BaseOS (RPMs)

rhel-8-for-ppc64le-baseos-rpms

ppc64le 系统的基本操作系统软件仓库。

Red Hat Enterprise Linux 8 for IBM Power, little endian - AppStream (RPMs)

rhel-8-for-ppc64le-appstream-rpms

包括 Red Hat OpenStack Platform 的依赖软件包。

Red Hat Enterprise Linux 8 for IBM Power, little endian - High Availability (RPMs)

rhel-8-for-ppc64le-highavailability-rpms

Red Hat Enterprise Linux 的高可用性工具。用于 Controller 节点的高可用性功能。

Red Hat Ansible Engine 2.8 for RHEL 8 IBM Power, little endian (RPMs)

ansible-2.8-for-rhel-8-ppc64le-rpms

适用于 Red Hat Enterprise Linux 的 Ansible Engine。用于提供最新版本的 Ansible。

Red Hat OpenStack Platform 16.0 for RHEL 8 (RPMs)

openstack-16-for-rhel-8-ppc64le-rpms

用于 ppc64le 系统的 Red Hat OpenStack Platform 核心软件仓库。

1.10.2. overcloud 软件仓库

您必须启用以下软件仓库以安装和配置 overcloud。

核心软件仓库

下表列出了用于安装 overcloud 的核心软件仓库。

名称软件仓库描述

Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)

rhel-8-for-x86_64-baseos-rpms

x86_64 系统的基本操作系统仓库。

Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)

rhel-8-for-x86_64-appstream-rpms

包括 Red Hat OpenStack Platform 的依赖软件包。

Red Hat Enterprise Linux 8 for x86_64 - High Availability (RPMs)

rhel-8-for-x86_64-highavailability-rpms

Red Hat Enterprise Linux 的高可用性工具。用于 Controller 节点的高可用性功能。

Red Hat Ansible Engine 2.8 for RHEL 8 x86_64 (RPMs)

ansible-2.8-for-rhel-8-x86_64-rpms

适用于 Red Hat Enterprise Linux 的 Ansible Engine。用于提供最新版本的 Ansible。

Advanced Virtualization for RHEL 8 x86_64 (RPMs)

advanced-virt-for-rhel-8-x86_64-rpms

为 OpenStack Platform 提供虚拟化软件包。

Red Hat Satellite Tools for RHEL 8 Server RPMs x86_64

satellite-tools-6.5-for-rhel-8-x86_64-rpms

管理使用 Red Hat Satellite 6 的主机的工具。

Red Hat OpenStack Platform 16.0 for RHEL 8 (RPMs)

openstack-16-for-rhel-8-x86_64-rpms

Red Hat OpenStack Platform 核心软件仓库。

Red Hat Fast datapath for RHEL 8 (RPMS)

fast-datapath-for-rhel-8-x86_64-rpms

为 OpenStack Platform 提供 Open vSwitch (OVS) 软件包。

Real Time 软件仓库

下表列出了 Real Time Compute (RTC) 功能的软件仓库。

名称软件仓库描述

Red Hat Enterprise Linux 8 for x86_64 - Real Time (RPMs)

rhel-8-for-x86_64-rt-rpms

Real Time KVM (RT-KVM) 的软件仓库。包含用于启用实时内核的软件包。应该为 RT-KVM 的所有目标 Compute 节点启用这个软件仓库。注意:您需要单独订阅 Red Hat OpenStack Platform for Real Time SKU,才能访问此软件仓库。

Red Hat Enterprise Linux 8 for x86_64 - Real Time for NFV (RPMs)

rhel-8-for-x86_64-nfv-rpms

适用于 NFV 的实时 KVM (RT-KVM) 的软件仓库。包含用于启用实时内核的软件包。应对以 RT-KVM 为目标的所有 NFV Compute 节点启用此软件仓库。注意:您需要单独订阅 Red Hat OpenStack Platform for Real Time SKU,才能访问此软件仓库。

IBM POWER 软件仓库

下表列出了用于 Openstack Platform on POWER PC 架构的软件仓库。使用这些软件仓库来替代核心软件仓库中的同等库。

名称软件仓库描述

Red Hat Enterprise Linux for IBM Power, little endian - BaseOS (RPMs)

rhel-8-for-ppc64le-baseos-rpms

ppc64le 系统的基本操作系统软件仓库。

Red Hat Enterprise Linux 8 for IBM Power, little endian - AppStream (RPMs)

rhel-8-for-ppc64le-appstream-rpms

包括 Red Hat OpenStack Platform 的依赖软件包。

Red Hat Enterprise Linux 8 for IBM Power, little endian - High Availability (RPMs)

rhel-8-for-ppc64le-highavailability-rpms

Red Hat Enterprise Linux 的高可用性工具。用于 Controller 节点的高可用性功能。

Red Hat Ansible Engine 2.8 for RHEL 8 IBM Power, little endian (RPMs)

ansible-2.8-for-rhel-8-ppc64le-rpms

适用于 Red Hat Enterprise Linux 的 Ansible Engine。用于提供最新版本的 Ansible。

Red Hat OpenStack Platform 16.0 for RHEL 8 (RPMs)

openstack-16-for-rhel-8-ppc64le-rpms

用于 ppc64le 系统的 Red Hat OpenStack Platform 核心软件仓库。

1.11. 产品支持

可用资源包括:

客户门户网站

红帽客户门户网站(Red Hat Customer Portal)提供了丰富的资源,助您规划、部署和维护 Red Hat OpenStack Platform 部署。这些资源包括:

  • 产品文档
  • 知识库文章和解决方案
  • 技术概要
  • 支持问题单管理

请通过 https://access.redhat.com/ 访问客户门户网站。

邮件列表

红帽提供了以下与 Red Hat OpenStack Platform 用户相关的公共邮件列表:

  • rhsa-announce 邮件列表提供了包括 Red Hat OpenStack Platform 在内的红帽产品的安全补丁程序的发行通知。

请通过 https://www.redhat.com/mailman/listinfo/rhsa-announce 进行订阅。

第 2 章 主要新功能

本节概述此 Red Hat OpenStack Platform 发行版本中包括的主要新功能。

2.1. 计算(Compute)

本节概述计算(Compute)服务的主要新功能。

使用 Cells v2 进行多单元格部署
目前,OpenStack Compute 默认由单元格驱动。您可以将较大的部署配置为使用多个单元格,每个单元格都有特定的计算节点和数据库。全局服务控制布置和故障安全操作,以及划分为单元格,有助于提高安全性和进程隔离。
单一主机上固定实例和浮动实例并置
现在,您可以把使用固定 CPU (hw:cpu_policy=dedicated) 的实例调度到与使用浮动 CPU 的实例 (hw:cpu_policy=shared) 相同的主机上。而不再需要使用主机聚合来确保这些实例类型在独立的主机上运行。
带有 SR-IOV(单根 I/O 虚拟化)的实例的实时迁移
使用 SR-IOV 接口配置的实例现在可以进行实时迁移。对于直接模式 SR-IOV 接口,这个操作会造成一些网络停机,因为该接口被分离,并作为迁移的一部分重新连接。对于间接模式 SR-IOV 接口来说这不是个问题。
固定实例的实时迁移
通过这个 NUMA 感知实时迁移功能,您可以使用 NUMA 拓扑实时迁移实例。
带宽感知调度
现在,您可以使用服务质量 (QoS) 策略,创建请求保证最小带宽的实例。计算调度服务为需要满足保证最小带宽请求的实例选择一个主机。

2.2. 网络

本节概述网络服务的主要新功能。

对负载均衡服务 (Octavia) 的 ACL 支持
Red Hat OpenStack Platform 负载均衡服务 (Octavia) 现在支持 VIP 访问控制列表 (ACL) 将进入监听程序的流量限制到一组允许的源 IP 地址 (CIDR)。
OVN 内部 API TLS/SSL 支持
Red Hat OpenStack Platform 现在支持使用传输层安全 (TLS) 加密 OVN 的内部 API 流量。
IPv6 上的 OVN 部署
Red Hat OpenStack Platform 现在支持在 IPv6 网络上部署 OVN。

2.3. 存储

本节概述了存储服务的主要新功能。

块存储服务在克隆卷时更改密钥
在这个发行版本中,当块存储服务 (cinder) 克隆加密卷时,它会自动更改加密密钥。此功能不会多次使用相同的加密密钥,从而提高了 Red Hat OpenStack Platform 中的安全性。
镜像服务管理对加密密钥的删除
在这个版本中,块存储服务 (cinder) 将加密卷上传到镜像服务 (glance) 中时,会在密钥管理服务 (barbican) 中创建一个加密密钥。这会在加密密钥和存储的镜像间创建一个一对一的关系。加密密钥删除可防止密钥管理服务无限度地消耗资源。
Director 支持后端可用域配置
此发行版本添加了 director 支持来配置块存储后端可用域。可用域是特定于供应商的,对云实例和服务进行分组的方法。
弃用数据处理服务 (sahara)
在 Red Hat OpenStack Platform (RHOSP) 15 中,数据处理服务 (sahara) 已被弃用,并在版本 16.0 中被安全删除。红帽继续对 RHOSP 版本 13 和 15 中的数据处理服务提供支持。

2.4. Ceph 存储

本节概述 Ceph 存储的主要新功能。

Red Hat Ceph 存储升级
为保持与 Red Hat Enterprise Linux 8、Red Hat OpenStack Platform 16.0 的兼容性,director 部署了 Red Hat Ceph Storage 4。您可以使用 RHEL8 中运行的 Red Hat OpenStack Platform 16.0 接到在 RHEL7 中运行的现有外部 Red Hat Ceph Storage 3 集群。

2.5. 技术预览

本节概述了 Red Hat OpenStack Platform 16.0 中技术预览的功能。

注意

有关技术预览功能的支持范围的更多信息,请查看技术预览功能支持范围

2.5.1. 新增技术预览

从一个 undercloud 部署和管理多个 overcloud

此发行版本能够从单个 undercloud 部署多个 overcloud。

  • 与单个 undercloud 交互以管理多个不同的 overcloud。
  • 在 undercloud 上切换上下文以与不同的 overcloud 交互。
  • 减少冗余管理节点。
undercloud minion
此发行版本包含安装 undercloud minion 的功能。undercloud minion 在单独的主机上提供额外的 heat-engineironic-conductor 服务。这些额外的服务支持 undercloud 的编配和置备操作。跨多个主机的 undercloud 操作分布提供了更多资源来运行 overcloud 部署,这可实现更快和更大型的部署。
验证框架
  • Red Hat OpenStack Platform 包含一个验证框架,可以帮助验证 undercloud 和 overcloud 的要求和功能。该框架包括两种验证类型:
  • 基于 Ansible 的手动验证,通过 openstack tripleo validator 命令集执行。
  • 自动动态验证,在部署过程中执行。
  • director 提供了一组新命令用来列出并运行针对 undercloud 和 overcloud 的验证。

    这些命令是:

    • OpenStack tripleo validator list
    • openstack tripleo validator run

      这些命令会与 openstack-tripleo-validations 软件包中的一组基于 Ansible 的测试进行交互。要启用此功能,请在 undercloud.conf 文件中将 enable_validations 参数设置为 true,然后运行 openstack undercloud install

为块存储服务创建主动/主动配置的新的 director 功能

在 Red Hat OpenStack Platform director 中,如果后端驱动程序支持这个配置,您现在可以在 Ceph RADOS Block Device (RBD) 后端中使用 active-active 配置部署块存储服务 (cinder) 。

新的 cinder-volume-active-active.yaml 文件通过为 CinderVolumeCluster 参数指定一个值来定义 active-active 集群名称。CinderVolumeCluster 是一个全局块存储参数,它可防止您在同一部署中包括集群的(active-active)和非集群的后端。

cinder-volume-active-active.yaml 文件让 director 使用非 Pacemaker、cinder-volume 编排服务模板,并在 Red Hat OpenStack Platform 部署中添加 etcd 服务作为分布式锁定管理器 (DLM) 。

用于配置块存储服务可用域的新 director 参数
使用 Red Hat OpenStack Platform director,您可以为块存储服务 (cinder) 卷后端配置不同的可用域。director 有一个新的参数,即 CinderXXXAvailabilityZone,其中 XXX 与特定后端相关联。
用于 Bare Metal 服务的新的 Redfish BIOS 管理界面

Red Hat OpenStack Platform Bare Metal 服务 (ironic) 现在有一个 BIOS 管理界面,您可以用它检查并修改设备的 BIOS 配置。

在 Red Hat OpenStack Platform 16.0 中,Bare Metal 服务支持与 Redfish API 兼容的数据中心设备的 BIOS 管理功能。Bare Metal 服务通过 Python 库 Sushy 实现 Redfish 调用。

部署多个 Ceph 集群
您可以使用 director 部署多个 Ceph 集群(在专用于运行 Ceph 或超线程的节点上),每个集群使用单独的 heat 栈。对于边缘站点,您可以部署一个超线程架构 (HCI) 栈,该栈使用同一节点上的计算和 Ceph 存储。例如:您可以部署两个名为 HCI-01HCI-02 的边缘栈,每个栈都位于它们自己的可用域中。因此,每个边缘栈都有自己的 Ceph 集群和计算服务。
添加了新的计算 (nova) 配置来启用 memoryBacking 源类型文件,并具有共享访问权限

提供新的计算 (nova) 参数 QemuMemoryBackingDir,该参数指定了在 libvirt memoryBacking 元素被配置为使用 source type="file"access mode="shared" 时保存内存备份文件的目录。

注意:只有 libvirt 4.0.0 和 QEMU 2.6.0 提供了 memoryBacking 元素 。

RedFish API 的隔离
现在,RedFish API 可采用 Pacemaker 进行隔离。
使用 director 在 IPv6 上部署裸机
如果您有 IPv6 节点和基础架构,您可以将 undercloud 和置备网络配置为使用 IPv6 而不是 IPv4,以便 director 能够在 IPv6 节点上置备和部署 Red Hat OpenStack Platform。
nova-less provisioning

在 Red Hat OpenStack Platform 16.0 中,您可以将部署的置备和部署阶段划分为不同的步骤:

  1. 置备裸机节点。

    1. 以 yaml 格式创建节点定义文件。
    2. 运行置备命令,包括节点定义文件。
  2. 部署 overcloud。

    1. 运行部署命令,包括置备命令生成的 heat 环境文件。

置备过程可置备节点并生成包含各种节点规格的 heat 环境文件,包括节点数、预测节点放置、自定义镜像和自定义 NIC。当您部署 overcloud 时,请将此文件包括在部署命令中。

networking-ansible 中继端口支持
在 Red Hat OpenStack Platform 16.0 中,您可以使用交换机端口进行中继模式和访问模式,并将多个 VLAN 分配给交换机端口。
networking-ansible Arista 支持
在 Red Hat OpenStack Platform 16.0 中,您可以使用 Arista Extensible Operating System (Arista EOS) 交换机配置 ML2 networking-ansible 功能。
Redfish 虚拟介质引导
您可以使用 Redfish 虚拟介质引导,向节点的 Baseboard Management Controller (BMC) 提供引导镜像,以便 BMC 可将镜像插入到其中一个虚拟驱动器中。然后,节点可以从虚拟驱动器引导到镜像中存在的操作系统。

第 3 章 发行信息

本发行注记重点概述部署此 Red Hat OpenStack Platform 版本时需要考虑的信息,如技术预览项、推荐做法、已知问题和淘汰的功能等。在本 Red Hat OpenStack Platform 发行版本的产品支持周期内,每个更新版本的说明都会包括在相应的公告中。

3.1. Red Hat OpenStack Platform 16.0 GA

本发行注记重点概述部署此 Red Hat OpenStack Platform 版本时需要考虑的信息,如技术预览项、推荐做法、已知问题和淘汰的功能等。

3.1.1. 错误修复

此 Red Hat OpenStack Platform 发行版本中修复了以下错误:

BZ#1716335

在 Red Hat OpenStack Platform 16.0 中,启用 OVN 的实时迁移现已成功,因为标记 live_migration_wait_for_vif_plug 默认启用。

在以前的版本中,实时迁移失败,因为系统一直在等待 OpenStack Networking (neutron) 发送 vif_plugged 通知。

BZ#1758302
在以前的版本中,oslo.util 库的正则表达式没有更新,它无法识别较新版本的仿真器 qemu(版本 4.1.0)的输出格式。Red Hat OpenStack 16.0 中的此次修复更新了正则表达式,oslo.util.imageutils 库现在可以正常工作。
BZ#1769868
在以前的版本中,在消息路由器 QDR 中错误配置了网格网络基础结构,这导致 Service Telemetry Framework (STF) 客户端上的 AMQP-1.0 消息总线无法正常工作。此次修复更正了所有 overcloud 节点上的 qdrouterd 守护进程的配置,STF 客户端现在可以正常工作。
BZ#1775246
现在,当重建实例时,NUMATopologyFilter 被禁用。在以前的版本中,筛选将始终执行,只有在主机的额外容量足够让第二个实例使用新镜像和现有实例类型时,重建才会成功。这是不正确且不必要的行为。

3.1.2. 功能增强

本 Red Hat OpenStack Platform 发行版本包括以下功能增强:

BZ#1222414
在此次功能增强中,增加了对使用 NUMA 拓扑进行实例实时迁移的支持。在以前的版本中,默认禁用此操作。可使用 '[workarounds] enable_numa_live_migration' 配置选项启用该项,但其默认为 False,因为实时迁移这些实例会导致将其移至目的地主机,却不更新任何底层 NUMA 客户机到主机的映射或者资源使用情况。使用新的 NUMA 感知实时迁移特性,如果实例无法安装到目的地,当请求设置为具有备用目的地时,将在备用目的地上尝试实时迁移。如果实例无法安装到目的地,则会重新计算 NUMA 客户机到主机的映射以反应其新主机,并更新其资源用量。
BZ#1328124
Red Hat OpenStack Platform 16.0 director 现在支持多计算机单元格部署。在此次功能增强中,云可以更好地进行扩展,因为每个单元格在单元格控制器上都有自己的数据库和消息队列,并减少了中央 control plane 的负载。有关更多信息,请参阅《实例和镜像》指南中的“使用计算单元格扩展部署”。
BZ#1360970

在此次功能增强中,添加了对使用附加的基于 SR-IOV 的 neutron 接口进行实例实时迁移的支持。Neutron SR-IOV 接口可以分为两个类别:直接模式和间接模式。直接模式 SR-IOV 接口直接附加到客户机,并公开到客户端操作系统。间接模式 SR-IOV 接口在客户机和 SR-IOV 设备间有一个软件接口,例如 macvtap。此功能为具有间接模式 SR-IOV 设备的实例实现透明的实时迁移。因为在实时迁移过程中没有复制硬件状态的通用方法,直接模式迁移对客户机并不透明。对于直接模式接口,模拟挂起和恢复操作已存在的工作流。例如:使用 SR-IOV 设备,在迁移前分离直接模式接口,并在迁移后重新连接它们。因此,具有直接模式 SR-IOV 端口的实例在迁移过程中会丢失网络连接,除非在客户机中创建了与实时可迁移接口的绑定。

在以前的版本中,无法使用基于 SR-IOV 的网络接口进行实时迁移。因为实时迁移经常用于主机维护及类似的操作,所以这会产生问题。在以前的版本中,该实例必须冷迁移,这需要客户机停机。

此功能增强实现使用基于 SR-IOV 的网络接口进行实例实时迁移。

BZ#1463838
在 Red Hat OpenStack Platform 16.0 中,现在可以在创建网络接口时指定 QoS 最小带宽规则。此功能增强可确保实例具有指定的网络可用带宽。目前,仅支持调整大小和冷迁移操作。
BZ#1545700
Red Hat OpenStack Platform 块存储服务 (cinder) 现在会在克隆卷时自动更改加密密钥。请注意,此功能当前不支持将 Red Hat Ceph Storage 用作 cinder 后端。
BZ#1545855

在 Red Hat OpenStack Platform 16.0 中,您现在可以在本地 registry 中推送、列出、删除和显示(显示元数据)镜像。

  • 将镜像从远程存储库推送到主存储库:

    $ sudo openstack tripleo container image push docker.io/library/centos
  • 列出存储库的内容:

    $ openstack tripleo container image list
  • 删除镜像:

    $ sudo openstack tripleo container image delete
  • 显示镜像元数据:

    $ openstack tripleo container image show
BZ#1593057
在此功能增强中,overcloud 节点删除需要在执行操作前进行用户确认,以减少意外执行该操作的可能性。openstack overcloud node delete <node> 命令需要在操作执行前进行 Y/n 确认。您可以通过在命令行中添加 --yes 来绕过此操作。
BZ#1601926
从此次更新开始,OSP 部署在所有 OVN 服务间都有完全加密功能。现在,所有 OVN 客户端(ovn-controller、neutron-server 和 ovn-metadata-agent)都使用相互 TLS 加密连接到 OVSDB 服务器。
BZ#1625244
放置服务已从计算 (nova) 服务中提取。现在,它由 director 部署和管理,并作为额外容器在 undercloud 和 overcloud 控制器节点上运行。
BZ#1628541
在 Red Hat OpenStack Platform 16.0 控制面板 (horizon) 中,现在有更改用户密码的新表单。当用户试图使用过期的密码登录时,这个表单会自动出现。
BZ#1649264
Red Hat OpenStack Platform 编排服务 (heat) 现在包含一个新的资源类型 OS::Glance::WebImage,用于使用 Glance v2 API 从 URL 创建镜像服务 (glance) 镜像。这个新资源类型代替了较早的类型 OS::Glance::Image。
BZ#1653834
此项功能增强添加了布尔参数 NovaComputeEnableKsm。参数在计算节点上启用 ksm 和 ksmtuned 服务。您可以为每个 Compute 角色设置 NovaComputeEnableKsm。默认:False
BZ#1666973
在 Red Hat OpenStack Platform 16.0 中,您可以将自定义 Red Hat Ceph Storage 配置设置添加到 ceph.conf 的任意部分。在以前的版本中,自定义设置只能在 ceph.conf 的 [global] 部分进行。
BZ#1689816

在 Red Hat OpenStack Platform 16.0 中,新的编排服务 (heat) 部署参数可供管理员在单元格控制器上打开 nova 元数据服务:

parameter_defaults:
   NovaLocalMetadataPerCell: True

这个新参数自动将来自该单元格计算上的 OVN 元数据代理的流量定向到该单元格控制器上托管的 nova 元数据 API 服务。

根据 RHOSP 拓扑,在单元格控制器上运行元数据服务的能力可减少中央 control plane 上的网络流量。

BZ#1691025
现在,您可以使用 Octavia API 创建 VIP 访问控制列表 (ACL) ,将传入监听程序的流量限制到一组允许的源 IP 地址 (CIDR) 。任何其它传入的流量都会被拒绝。有关更多信息,请参阅《网络指南》中的“使用访问控制列表保证负载均衡器的安全”。
BZ#1693372

在此功能增强中,您可以使用以下参数将专用(固定)和共享(未固定)实例调度到同一 计算节点上:

  • NovaComputeCpuDedicatedSet- 固定实例 CPU 进程可调度到的物理主机 CPU 数的逗号分隔列表或范围。替换 NovaVcpuPinSet 参数,该参数现已弃用。
  • NovaComputeCpuSharedSet - 用于提供 vCPU 清单的物理主机 CPU 数的逗号分隔列表或范围,可确定未固定实例可以调度到的主机 CPU,并针对配置了共享仿真器线程策略 hw:emulator_threads_policy=share 的实例确定实例仿真器线程应当卸载到的主机 CPU。注意:此选项之前已存在,但其用途已通过该功能得到扩展。

    而不再需要使用主机聚合来确保这些实例类型在独立的主机上运行。另外,[DEFAULT] reserved_host_cpus 配置选项不再需要,且可以取消设置。

    要升级:

    • 对于以前用于固定实例的主机,NovaVcpuPinSet 的值应当迁移到 NovaComputeCpuDedicatedSet
    • 对于以前用于非固定实例的主机, NovaVcpuPinSet 应当迁移到 NovaComputeCpuSharedSet
    • 如果没有为 NovaVcpuPinSet 设置值,则所有主机内核都应当分配到 NovaComputeCpuDedicatedSetNovaComputeCpuSharedSet,这取决于该处运行的实例的类型。

      升级完成后,就可以在同一主机上开始设置这两个选项。然而,要做到这一点,主机应当排空实例,因为当NovaComputeCpuSharedSet 中没有列出未固定实例的内核时 nova 不会启动,反之亦然。

BZ#1696663
此更新支持您可以为大多数 neutron 网络配置 NUMA 关联性。这可帮助您确保将实例放置在与 NIC 为 vSwitch 提供外部连接相同的主机 NUMA 节点上。您可以在使用以下类型的网络上配置 NUMA 关联性:'flat''vlan'--'provider:network_type'和 'provider:physical_network'(L2 网络)或 'vxlan'--'provider:network_type''gre' 或 ’geneve'(L3 网络)。
BZ#1700396
在 Red Hat OpenStack Platform 16.0 中,您可以使用 director 为块存储务 (cinder) 后端类型指定可用域。
BZ#1767481
在以前的版本中,当 Novajoin 丢失与 IPA 服务器的连接时,它会马上尝试重新连接。因此,可能会出现与时间相关的问题,并阻止重新建立连接。在此更新中,您可以在重试 IPA 服务器连接前使用 retry_delay 设置要等待的秒数。因此,这可以帮助减少时间的问题。
BZ#1775575
现在,您可以根据实例级别配置 PCI NUMA 关联性。这需要为使用基于 SR-IOV 的网络接口的实例配置 NUMA 关联性。在以前的版本中,只能在主机级别为 PCI 透传设备配置 NUMA 关联性。
BZ#1784806
在 Red Hat Openstack Platform 16.0 中,部署增强功能自动获得部署 OVS-DPDK 的计算节点所需的编排服务 (heat) 参数,从而方便配置 OVS-DPDK。工作流服务 (mistral) 已改进,可读取 heat 模板和内省数据,以自动获得 heat 参数、NovaComputeCpuDedicatedSet 和 NovaComputeCpuSharedSet 的必要值。

3.1.3. 技术预览

本节中列出的项目作为技术预览提供。有关技术预览状态范围的详情,以及相关的支持影响,请参阅 https://access.redhat.com/support/offerings/techpreview/

BZ#1228474
在 Red Hat OpenStack Platform 16.0 中,身份服务 (keystone) 具有一个新的默认角色 reader(当前为技术预览),该角色在部署 Red Hat OpenStack Platform director 后存在于系统中。使用 reader 角色,用户可以执行一些非只读的额外任务,比如创建卷。在其他服务(如 cinder、neutron 和 nova)中还未实现此角色。作为技术预览,这个功能仍处于开发阶段,不应在产品环境中使用。
BZ#1288155

在 Red Hat OpenStack Platform 16.0 中,定义多个路由表并将路由分配到特定的路由表中(当前为技术预览)。

基于策略的路由使用路由表,在带有多个链接的主机上,您可以根据源地址通过特定接口发送流量。

您还可以根据每个接口定义路由规则,如下例所示:

network_config:
  -
    type: route_table
    name: custom
    table_id: 200
  -
    type: interface
    name: em1
    use_dhcp: false
    addresses:
    -
      ip_netmask: 192.0.2.1/24
    routes:
      -
        ip_netmask: 10.1.3.0/24
        next_hop: 192.0.2.5
        table: 200  # Use table ID or table name
    rules:
      - rule: "iif em1 table 200"
        comment: "Route incoming traffic to em1 with table 200"
      - rule: "from 192.0.2.0/24 table 200"
        comment: "Route all traffic from 192.0.2.0/24 with table 200"
      - rule: "add blackhole from 172.19.40.0/24 table 200"
      - rule: "add unreachable iif em1 from 192.168.1.0/24"
BZ#1375207
在以前的版本中,当使用 Red Hat Ceph Storage 作为块存储服务 (cinder) 卷和备份的后端时,当在第一次完全备份后​再执行一个完全备份时,​实际执行的是一个增量备份,且不发出任何警告信息。在 Red Hat OpenStack Platform 16.0 中,一个技术预览解决了这个问题。
BZ#1459187
在 Red Hat OpenStack Platform 16.0 中,在裸机置备服务 (ironic) 中添加了一个技术预览,用于在 IPv6 置备网络上部署 overcloud。有关更多信息,请参阅《裸机置备》指南中的“配置自定义 IPv6 置备网络”。
BZ#1474394
在 Red Hat OpenStack Platform 16.0 中,为裸机置备服务 (ironic) 添加了一个技术预览,用于在 IPv6 置备网络上为 BMaaS (Bare Metal as-a-Service) 租户部署。
BZ#1575079
在 Red Hat OpenStack Platform 16.0 中,为共享文件系统服务 (manila) 添加了一个技术预览,以便 IPv6 可用于 CephFS NFS 驱动程序。
BZ#1593828

在 Red Hat OpenStack Platform 16.0 中,添加了一个用于使用裸机置备服务 (ironic) 从虚拟介质引导裸机的技术预览。

如果机器的基板管理控制器 (BMC) 支持 Redfish 硬件管理协议和虚拟介质服务,ironic 可以指示 BMC 拉取 (pull) 可引导镜像,并将它“插入 (insert)”到节点上的虚拟驱动器中。然后,节点可以从该虚拟驱动器引导到位于该镜像的操作系统。基于 Redfish API 的 ironic 硬件类型支持通过虚拟介质部署、救援(有限制)和引导(用户)镜像。

虚拟介质引导的主要优点是,PXE 引导协议套件的不安全和不可靠的 TFTP 镜像传输阶段由安全的 HTTP 传输替代。

BZ#1600967

在 Red Hat OpenStack Platform 16.0 中,工作流服务 (mistral) 任务是一个技术预览,它可以使您通过以下操作来实现密码轮转:

执行 rotate-password 工作流,生成新密码并将其存储在计划环境中。

重新部署 overcloud。

您也可以在更改密码后获取密码。

要实现密码轮转,请按照以下步骤操作:

注意

工作流任务修改默认密码。该任务不会修改用户提供的环境文件中指定的密码。

  1. 执行新的工作流任务以重新生成密码:

    $ source ./stackrc
    $ openstack workflow execution create tripleo.plan_management.v1.rotate_passwords '{"container": "overcloud"}'

    该命令为所有密码生成新密码,但 BarbicanSimpleCryptoKek 和 KeystoneFernet* 和 KeystoneCredential* 除外。有特殊的程序可以轮换这些密码。

    也可以指定要轮转的具体密码。以下命令只轮转指定的密码。

    $ openstack workflow execution create tripleo.plan_management.v1.rotate_passwords '{"container": "overcloud", "password_list": ["BarbicanPassword", "SaharaPassword", "ManilaPassword"]}'
  2. 重新部署 overcloud:

    $ ./overcloud-deploy.sh

    要检索密码,包括新生成的密码,请按照以下步骤操作:

  3. 运行以下命令:

    $ openstack workflow execution create tripleo.plan_management.v1.get_passwords '{"container": "overcloud"}'

    您应该可以看到该命令的输出结果,如下所示:

    +--------------------+---------------------------------------------+
    | Field              | Value                                       |
    +--------------------+---------------------------------------------+
    | ID                 | edcf9103-e1a8-42f9-85c1-e505c055e0ed        |
    | Workflow ID        | 8aa2ac9b-22ee-4e7d-8240-877237ef0d0a        |
    | Workflow name      | tripleo.plan_management.v1.rotate_passwords |
    | Workflow namespace |                                             |
    | Description        |                                             |
    | Task Execution ID  | <none>                                      |
    | Root Execution ID  | <none>                                      |
    | State              | RUNNING                                     |
    | State info         | None                                        |
    | Created at         | 2020-01-22 15:47:57                         |
    | Updated at         | 2020-01-22 15:47:57                         |
    +--------------------+---------------------------------------------+

    在以前的示例输出中,State 的值是 RUNNING。State 最终应当为 SUCCESS。

  4. 重新检查 State 值:

    $ openstack workflow execution show edcf9103-e1a8-42f9-85c1-e505c055e0ed
    +--------------------+---------------------------------------------+
    | Field              | Value                                       |
    +--------------------+---------------------------------------------+
    | ID                 | edcf9103-e1a8-42f9-85c1-e505c055e0ed        |
    | Workflow ID        | 8aa2ac9b-22ee-4e7d-8240-877237ef0d0a        |
    | Workflow name      | tripleo.plan_management.v1.rotate_passwords |
    | Workflow namespace |                                             |
    | Description        |                                             |
    | Task Execution ID  | <none>                                      |
    | Root Execution ID  | <none>                                      |
    | State              | SUCCESS                                     |
    | State info         | None                                        |
    | Created at         | 2020-01-22 15:47:57                         |
    | Updated at         | 2020-01-22 15:48:39                         |
    +--------------------+---------------------------------------------+
  5. 当 State 的值为 SUCCESS 时,您可以检索密码:

    $ openstack workflow execution output show edcf9103-e1a8-42f9-85c1-e505c055e0ed

    您应当会看到类似如下的输出:

    {
        "status": "SUCCESS",
        "message": {
            "AdminPassword": "FSn0sS1aAHp8YK2fU5niM3rxu",
            "AdminToken": "dTP0Wdy7DtblG80M54r4a2yoC",
            "AodhPassword": "fB5NQdRe37BaBVEWDHVuj4etk",
            "BarbicanPassword": "rn7yk7KPafKw2PWN71MvXpnBt",
            "BarbicanSimpleCryptoKek": "lrC3sGlV7-D7-V_PI4vbDfF1Ujm5OjnAVFcnihOpbCg=",
            "CeilometerMeteringSecret": "DQ69HdlJobhnGWoBC0jM3drPF",
            "CeilometerPassword": "qI6xOpofuiXZnG95iUe8Oxv5d",
            "CephAdminKey": "AQDGVPpdAAAAABAAZMP56/VY+zCVcDT81+TOjg==",
            "CephClientKey": "AQDGVPpdAAAAABAAanYtA0ggpcoCbS1nLeDN7w==",
            "CephClusterFSID": "141a5ede-21b4-11ea-8132-52540031f76b",
            "CephDashboardAdminPassword": "AQDGVPpdAAAAABAAKhsx630YKDhQrocS4o4KzA==",
            "CephGrafanaAdminPassword": "AQDGVPpdAAAAABAAKBojG+CO72B0TdBRR0paEg==",
            "CephManilaClientKey": "AQDGVPpdAAAAABAAA1TVHrTVCC8xQ4skG4+d5A=="
        }
    }
BZ#1621701
在 Red Hat OpenStack Platform 16.0 中,向 OpenStack 裸机服务 (ironic) 添加了一个技术预览功能,用于通过 Arista Extensible Operating System (Arista EOS) 交换机配置 ML2 networking-ansible 功能。有关更多信息,请参阅《裸机置备》指南中的“启用 networking-ansible ML2 功能”。
BZ#1622233
在 Red Hat OpenStack Platform 16.0 中,添加了一个修改交换机端口的技术预览,以使其进入中继模式,并为它们分配多个 VLAN。
BZ#1623152

在 Red Hat OpenStack Platform 16.0 中,向编排服务 (heat) 中添加了一个技术预览,用于 rsyslog 更改:

  • 将 rsyslog 配置为收集并转发与 fluentd 安装功能相等的容器日志。
  • 管理员可以使用与 fluentd 相同的方法配置 rsyslog 日志转发。
BZ#1628061

在 Red Hat OpenStack Platform 16.0 中,您可以使用 director 在服务模板中包括动态验证。此功能在RHOSP 16.0 中是一个技术预览。可以在要检查的步骤的末尾,或者下一步的开始插入添加内容。

在本例中,执行验证以确保 rabbitmq 服务在部署后运行:

deploy_steps_tasks:
  # rabbitmq container is supposed to be started during step 1
  # so we want to ensure it's running during step 2
  - name: validate rabbitmq state
    when: step|int == 2
    tags:
      - opendev-validation
      - opendev-validation-rabbitmq
    wait_for_connection:
      host: {get_param: [ServiceNetMap, RabbitmqNetwork]}
      port: 5672
      delay: 10

通过 heat,您可以包括 openstack-tripleo-validations 角色中的现有验证:

deploy_steps_tasks:
  - name: some validation
    when: step|int == 2
    tags:
      - opendev-validation
      - opendev-validation-rabbitmq
    include_role:
      role: rabbitmq-limits
    # We can pass vars to included role, in this example
    # we override the default min_fd_limit value:
    vars:
      min_fd_limit: 32768

您可以在此处找到 rabbitmq-limits 角色的定义 https://opendev.org/openstack/tripleo-validations/src/branch/stable/train/roles/rabbitmq-limits/tasks/main.yml

以下是使用现有服务健康检查的示例:

deploy_steps_tasks:
  # rabbitmq container is supposed to be started during step 1
  # so we want to ensure it's running during step 2
  - name: validate rabbitmq state
    when: step|int == 2
    tags:
      - opendev-validation
      - opendev-validation-rabbitmq
    command: >
      podman exec rabbitmq /openstack/healthcheck
BZ#1699449
Red Hat OpenStack Platform director 现在为 fence_redfish 提供技术预览,这是 Redfish API 的保护代理。
BZ#1700083
在 Red Hat OpenStack Platform 16.0 中,为裸机置备服务 (ironic) 添加了一个技术预览,用于 Intel 速度选择处理器。
BZ#1703956
在 Red Hat OpenStack Platform 16.0 中,负载均衡服务 (octavia) 现在有一个用于 UDP 协议的技术预览。
BZ#1706896
在 Red Hat OpenStack Platform 16.0 中,向镜像服务 (glance) 中添加了一个技术预览,用于预缓存镜像,以便操作器可以在引导实例前预热缓存。
BZ#1710089
director 已添加了 overcloud undercloud minion install 命令,您可以使用该命令配置额外主机来增强 Undercloud 服务。
BZ#1710092
director 现在提供部署额外节点的功能,您可以使用该节点为部署相关的操作添加其他 heat-engine 资源。
BZ#1710093
Red Hat OpenStack Platform director 支持部署额外节点,可用于在部署过程中为系统置备添加其他裸机置备编排器服务资源。
BZ#1710634

在 Red Hat OpenStack Platform 16.0 中,向编排服务 (heat) 中添加了一个技术预览。一个新的参数 NovaSchedulerQueryImageType,被添加用于控制镜像类型(scheduler/query_placement_for_image_type_support)的计算服务 (nova) 放置和调度程序组件查询放置。

当设置为 true(默认)时,NovaSchedulerQueryImageType 会排除不支持引导请求中使用的镜像磁盘格式的计算节点。

例如,libvirt 驱动程序使用 Red Hat Ceph Storage 作为临时后端,且不支持 qcow2 镜像(不需要昂贵的转换步骤)。在本例中,启用 NovaSchedulerQueryImageType 可确保调度程序不会向使用 Red Hat Ceph Storage 的计算节点发送引导 qcow2 镜像的请求。

BZ#1749483

现在,您可以将浮动 IP 地址的 TCP、UDP 或者其它协议端口的流量转发到与 neutron 端口的一个固定 IP 地址关联的 TCP、UDP 或其他协议端口。转发的流量由 neutron API 的扩展程序和 OpenStack Networking 插件来管理。浮动 IP 地址可以配置多个转发定义。但是,您无法转发预先与 OpenStack Networking 端口关联的 IP 地址的流量。为浮动 IP 地址转发流量,这些地址由网络上的集中路由器(legacy、HA 和 DVR+HA)管理。

要转发浮动 IP 地址端口的流量,请使用以下 OpenStack Networking 插件命令:

openstack floating ip port forwarding create
--internal-ip-address <internal-ip-address>
--port <port>
--internal-protocol-port <port-number>
--external-protocol-port <port-number>
--protocol <protocol>
<floating-ip>

--internal-ip-address <internal-ip-address> 接收转发流量的 neutron 端口的固定、IPv4、内部 IP 地址。

--port <port> 接收转发的流量的 neutron 端口的名称或 ID。

--internal-protocol-port <port-number> neutron 的协议端口号,接收转发流量的固定 IP 地址。

--external-protocol-port <port-number> 转发流量的浮动 IP 地址端口的协议端口号。

--protocol <protocol> 浮动 IP 地址端口使用的协议(如 TCP、UDP)。

<floating-ip> 转发流量的端口的浮动 IP(IP 地址或 ID)。

下面是一个示例:

openstack floating ip port forwarding create \
    --internal-ip-address 192.168.1.2 \
    --port f7a08fe4-e79e-4b67-bbb8-a5002455a493 \
    --internal-protocol-port 18343 \
    --external-protocol-port 8343 \
    --protocol tcp \
    10.0.0.100

3.1.4. 发行注记

本节概述了本发行版本的重要信息,包括推荐做法和 Red Hat OpenStack Platform 的显著变化。您必须将此信息纳入考量,才能确保您的部署获得最佳效果。

BZ#1481814
在以前的版本中,当一个加密的块存储服务 (cinder) 卷镜像被删除时,它的对应密钥不会被删除。

在 Red Hat OpenStack Platform 16.0 中,这个问题已解决。当镜像服务删除 cinder 卷镜像时,它还会删除镜像的密钥。

BZ#1783044
通过 Red Hat Ceph Storage 版本 4 的正式发布,您现在可以从 rhceph-4-tools-for-rhel-8-x86_64-rpms 存储库中安装 ceph-ansible

3.1.5. 已知问题

目前,Red Hat OpenStack Platform 存在的已知问题包括:

BZ#1574431
块存储服务 (cinder) 存在一个已知问题:quota 命令无法正常工作。cinder CLI 允许用户在不检查有效项目 ID 的情况下成功创建配额条目。CLI 在没有有效项目 ID 的情况下创建的配额条目是包含无效数据的虚拟记录(dummy record)。直到这个问题被解决为止,CLI 用户应该在创建配额条目时指定有效的项目 ID,并监控 cinder 的虚拟记录。
BZ#1647005

在清理 BM 节点期间,Nova-compute ironic 驱动程序会尝试更新该节点。清理操作大约需要五分钟,但 nova-compute 会尝试在大约两分钟内更新节点。超时后,nova-compute 会停止 nova 实例并将其置于 ERROR 状态。

作为临时解决方案,为 nova-compute 服务设置以下配置选项:

[ironic]
api_max_retries = 180

这样,nova-compute 就会继续更长时间尝试更新 BM 节点,并最终成功。

BZ#1734301
目前,在从成员获取数据时,OVN 负载均衡器不会打开新的连接。负载均衡器修改目的地地址和目的地端口,并将请求数据包发送到成员。因此,在使用 IPv4 负载均衡器地址时无法定义 IPv6 成员,反之亦然。当前没有解决此问题的方法。
BZ#1769880

存在从 ML2/OVS 迁移到 OVN 失败的问题。此故障是由 Red Hat OpenStack Platform director 中的新保护机制导致,以便在更改机制驱动程序时防止升级。

有关临时解决方案,请参阅《使用开源虚拟网络联网》指南中的“准备迁移”。

BZ#1779221

使用 Linux bridge ML2 驱动程序和代理的 Red Hat OpenStack Platform 部署无法防止解析协议 (ARP) 欺骗。属于 Red Hat Enterprise Linux 8 一部分的以太网网桥帧表管理 (ebtables) 的版本与 Linux bridge ML2 驱动程序不兼容。

Red Hat OpenStack Platform 11 中已弃用 Linux Bridge ML2 驱动程序和代理,不应再使用。

红帽建议您改用 ML2 Open Virtual Network (OVN) 驱动程序和服务,即 Red Hat OpenStack Platform director 部署的默认驱动程序和服务。

BZ#1789822

替换 overcloud Controller 可能会在节点间造成 swift 环(ring)不一致的问题。这可能导致对象存储服务可用性下降。如果发生了这种情况,请使用 SSH 登录到之前存在的 Controller 节点,部署更新的环,然后重启 Object Storage 容器:

(undercloud) [stack@undercloud-0 ~]$ source stackrc
(undercloud) [stack@undercloud-0 ~]$ nova list
...
| 3fab687e-99c2-4e66-805f-3106fb41d868 | controller-1 | ACTIVE | -          | Running     | ctlplane=192.168.24.17 |
| a87276ea-8682-4f27-9426-6b272955b486 | controller-2 | ACTIVE | -          | Running     | ctlplane=192.168.24.38 |
| a000b156-9adc-4d37-8169-c1af7800788b | controller-3 | ACTIVE | -          | Running     | ctlplane=192.168.24.35 |
...

(undercloud) [stack@undercloud-0 ~]$ for ip in 192.168.24.17 192.168.24.38 192.168.24.35; do ssh $ip 'sudo podman restart swift_copy_rings ; sudo podman restart $(sudo podman ps -a --format="{{.Names}}" --filter="name=swift_*")'; done
BZ#1790467

在 Red Hat OpenStack Platform 16.0 中,配置 OpenStack 实例所需的元数据信息不可用,且可能在没有连接的情况下启动,这是一个已知的问题。

排序问题导致无法为 ovn_metadata_agent 更新 haproxy 打包程序。

可能的解决方法是让云操作器运行以下 Ansible 命令,以便在更新后重启选定节点上的 ovn_metadata_agent,以确保 ovn_metadata_agent 使用 haproxy 打包程序脚本的更新版本:

`ansible -b <nodes> -i /usr/bin/tripleo-ansible-inventory -m shell -a "status=`sudo systemctl is-active tripleo_ovn_metadata_agent`; if test \"$status\" == \"active\"; then sudo systemctl restart tripleo_ovn_metadata_agent; echo restarted; fi"`

在以前的 Ansible 命令中,nodes 可能是单个节点(如 compute-0)、所有计算(如 compute*)或 "all"

因为 ovn_metadata_agent 最常用于计算节点,所以以下 Ansible 命令会重启云中所有计算节点的代理:

`ansible -b compute* -i /usr/bin/tripleo-ansible-inventory -m shell -a "status=`sudo systemctl is-active tripleo_ovn_metadata_agent`; if test \"$status\" == \"active\"; then sudo systemctl restart tripleo_ovn_metadata_agent; echo restarted; fi"`

重启 ovn_metadata_agent 服务后,它们会使用更新的 haproxy 打包程序脚本,这样可在虚拟机启动时为它们提供元数据。已经运行的受影响虚拟机在应用临时解决方案后重启,应该会正常运行。

BZ#1793166

Red Hat OpenStack 16.0 中存在一个已知问题:除非禁用并发多线程 (SMT) 控制,否则 KVM 客户机不会在 IBM POWER8 系统中启动。SMT 不会被自动禁用 。

解决方案是在部署 overcloud 后在所有 IBM POWER 8 计算节点上执行 sudo ppc64_cpu --smt=off,以及后续的重启。

BZ#1793440

在 Red Hat OpenStack 16.0 中,存在一个已知问题:“openstack network agent list” 命令会间歇性地表示 OVN 代理处于停机状态,而实际上代理处于活动状态且云可以正常工作。

受影响的代理有:OVN Controller 代理、OVN 元数据代理和 OVN Controller 网关代理。

当前没有解决此问题的方法。您应当忽略“openstack network agent list”命令的输出。

BZ#1794328
存在一个已知问题:当将负载均衡服务 (octavia) 配置为可组合角色时,Red Hat OpenStack Platform 16.0 overcloud 安装会失败。目前,这个问题还没有临时解决方案。有关更多信息,请参阅 BZ# :https://bugzilla.redhat.com/show_bug.cgi?id=1794328
BZ#1795165

OpenStack Networking (neutron) 有一个已知问题:所有创建的实例都会继承与网络关联的 dns_domain 值,而不是为内部 DNS 配置的 dns_domain 值。

造成这个问题的原因是,network dns_domain 属性会覆盖 neutron dns_domain 配置选项。

如果您想要使用内部 DNS 功能,为避免这个问题,请不要为网络设置 dns_domain 属性。

BZ#1795688

要在使用 Novacontrol 角色时,允许 neutron_api 服务访问部署在 Controller 节点上的放置服务,请在 Controller 环境文件中添加以下 hieradata 配置:

service_config_settings:
     placement:
         neutron::server::placement::password: <Nova password>
  neutron::server::placement::www_authenticate_uri: <Keystone Internal API URL>
  neutron::server::placement::project_domain_name: 'Default'
  neutron::server::placement::project_name: 'service'
  neutron::server::placement::user_domain_name: 'Default'
  neutron::server::placement::username: nova
  neutron::server::placement::auth_url: <Keystone Internal API URL>
  neutron::server::placement::auth_type: 'password'
  neutron::server::placement::region_name: <Keystone Region>

有关使用 Puppet 自定义角色的 hieradata 的更多信息,请参阅 https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.0/html-single/advanced_overcloud_customization/index#sect-Customizing_Puppet_Configuration_Data

注意

当使用自定义角色部署 overcloud 时,需要进行此配置,Placement 不是在与 neutron_api 相同的节点上运行。

BZ#1795956

Red Hat OpenStack Platform 负载均衡服务有一个已知问题:重新引导节点时,容器 octavia_api 和 octavia_driver_agent 无法启动。

造成这个问题的原因是在重新引导节点时不存在 /var/run/octavia 目录。

要解决这个问题,请在文件 /etc/tmpfiles.d/var-run-octavia.conf 中添加以下行:

d /var/run/octavia 0755 root root - -
BZ#1796215

在 Red Hat OpenStack Platform 16.0 中,存在一个已知问题:在配置 overcloud 节点过程中 ansible-playbook 有时会失败。失败的原因是 tripleo-admin 用户没有获得 ssh 授权。另外,openstack overcloud deploy 命令参数 --stack-only 不再运行启用 ssh admin 工作流来授权 tripleo-admin 用户。

解决办法是在使用 --stack-only 和手动 config-download 命令时,使用 openstack overcloud admin authorize 自行运行启用 ssh admin 工作流。有关更多信息,请参阅《director 安装和使用》指南中的“分离置备和配置流程”。

BZ#1797047
Red Hat Ceph Storage 4.0 存在一个与打包相关的问题。更多信息请参阅 https://bugzilla.redhat.com/show_bug.cgi?id=1797075。因此,用户无法使用 manila 访问列表。虽然共享创建正常,但因没有 manila 访问列表,共享就无法使用。因此,用户无法通过 NFS 使用带有 CephFS 的共享文件系统服务。
BZ#1797892

Red Hat OpenStack Platform 16.0 中存在一个已知问题:当节点出现硬(不正常)关闭的情况时,在节点重新开机后,此前运行的容器会在 podman 中变为“Created”状态。

造成这个问题的原因是元数据代理无法生成新容器,因为它已经处于 "Created" 状态。haproxy side-car 容器打包程序脚本预期容器只处于"Exited" 状态,且不会清理 "Created" 状态的容器。

可能的解决方法是让云操作器运行以下 Ansible 临时命令来清理处于 "Created" 状态的所有 haproxy 容器。您必须从位于特定节点上、一组节点或整个集群中的 undercloud 中运行此 Ansible ad-hoc 命令:

`ansible -b <nodes> -i /usr/bin/tripleo-ansible-inventory -m shell -a "podman ps -a --format {{'{{'}}.ID{{'}}'}} -f name=haproxy,status=created | xargs podman rm -f || :"`

在以前的 Ansible ad-hoc 命令中,nodes 可以是清单中的单个主机、一组主机或“all”。

以下是在 compute-0 上运行命令的示例:

`ansible -b compute-0 -i /usr/bin/tripleo-ansible-inventory -m shell -a "podman ps -a --format {{'{{'}}.ID{{'}}'}} -f name=haproxy,status=created | xargs podman rm -f || :"`

在运行 Ansible ad-hoc 命令后,metadata-agent 应该会为给定网络生成一个新的容器。

3.1.6. 删除的功能

BZ#1518222
在 Red Hat OpenStack Platform 16.0 中,Telemetry (遥测) 服务的一部分 ceilometer 客户端(较早的 RHOSP 发行版本中已弃用)不再受支持并已被删除。请注意,ceilometer 仍是 RHOSP 的一部分,只作为代理服务(没有客户端和 API)。
BZ#1631508

在 Red Hat OpenStack Platform 16.0 中,删除了 controller-v6.yaml 文件。controller-v6.yaml 中定义的路由现在在 controller.yaml 中定义。(controller.yaml 文件是一个 NIC 配置文件,根据 role_data.yaml 中设置的值产生。)

早期版本的 Red Hat OpenStack Director 包括两个路由:一个用于外部网络上的 IPv6(默认),另一个用于 Control Plane 上的 IPv4。

要使用这两个默认路由,请确保 role_data.yaml 中的控制器定义在 default_route_networks 中包含这两个网络(例如,default_route_networks: ['External', 'ControlPlane'])。

BZ#1712981
在 Red Hat OpenStack Platform (RHOSP) 15 中,数据处理服务 (sahara) 已被弃用,并在版本 16.0 中被安全删除。红帽继续对 RHOSP 版本 13 和 15 中的数据处理服务提供支持。
BZ#1754560
在 Red Hat OpenStack Platform 16.0 中,不再支持 Elastic Compute Cloud (EC2) API。现在,director 中已弃用 EC2 API 支持,并将在以后的 RHOSP 发行版本中删除。
BZ#1764894

在 Red Hat OpenStack Platform 16.0 中,删除了以下环境文件:/usr/share/openstack-tripleo-heat-templates/environments/deployed-server-bootstrap-environment-rhel.yaml

此环境文件之前在使用预置备节点时使用。它在以前的 RHOSP 发行版本里已弃用,现在它已被删除。

第 4 章 技术备注

本章包括了对通过 Content Delivery Network 发布的 Red Hat OpenStack Platform "Train" 勘误公告内容的补充信息。

4.1. RHEA-2020:0283 — RedHat OpenStack Platform 16.0 GA 公告

本节中所包括的错误已在 RHEA-2020:0283 公告中解决。有关此公告的详情请点击以下链接:https://access.redhat.com/errata/RHEA-2020:0283.html

对分发组件的更改:

  • 在 Red Hat OpenStack Platform 16.0 中,Telemetry (遥测) 服务的一部分 ceilometer 客户端(较早的 RHOSP 发行版本中已弃用)不再受支持并已被删除。请注意,ceilometer 仍是 RHOSP 的一部分,只作为代理服务(没有客户端和 API)。(BZ#1518222)

对 openstack-cinder 组件的更改:

  • 在以前的版本中,当使用 Red Hat Ceph Storage 作为块存储服务 (cinder) 卷和备份的后端时,当在第一次完全备份后​再执行一个完全备份时,​实际执行的是一个增量备份,且不发出任何警告信息。在 Red Hat OpenStack Platform 16.0 中,一个技术预览解决了这个问题。(BZ#1375207)
  • Red Hat OpenStack Platform 块存储服务 (cinder) 现在会在克隆卷时自动更改加密密钥。请注意,此功能当前不支持将 Red Hat Ceph Storage 用作 cinder 后端。(BZ#1545700)

对 openstack-glance 组件的更改:

  • 在以前的版本中,当一个加密的块存储服务 (cinder) 卷镜像被删除时,它的对应密钥不会被删除。

    在 Red Hat OpenStack Platform 16.0 中,这个问题已解决。当镜像服务删除 cinder 卷镜像时,它还会删除镜像的密钥。(BZ#1481814)

  • 在 Red Hat OpenStack Platform 16.0 中,向镜像服务 (glance) 中添加了一个技术预览,用于预缓存镜像,以便操作器可以在引导实例前预热缓存。(BZ#1706896)

对 openstack-heat 组件的更改:

  • Red Hat OpenStack Platform 编排服务 (heat) 现在包含一个新的资源类型 OS::Glance::WebImage,用于使用 Glance v2 API 从 URL 创建镜像服务 (glance) 镜像。这个新资源类型代替了较早的类型 OS::Glance::Image。(BZ#1649264)

对 openstack-keystone 组件的更改:

  • Keystone 现在支持一组基本的默认角色(如 admin、member 和 reader),这些角色在 Red Hat OpenStack Platform director 部署后存在于系统中。这些默认角色会整合到所有授权目标(如系统、域和项目)的默认 director 策略中。(BZ#1228474)

对 openstack-manila 组件的更改:

  • 在 Red Hat OpenStack Platform 16.0 中,为共享文件系统服务 (manila) 添加了一个技术预览,以便 IPv6 可用于 CephFS NFS 驱动程序。(BZ#1575079)

对 openstack-neutron 组件的更改:

  • 使用 Linux bridge ML2 驱动程序和代理的 Red Hat OpenStack Platform 部署无法防止解析协议 (ARP) 欺骗。属于 Red Hat Enterprise Linux 8 一部分的以太网网桥帧表管理 (ebtables) 的版本与 Linux bridge ML2 驱动程序不兼容。

    Red Hat OpenStack Platform 11 中已弃用 Linux Bridge ML2 驱动程序和代理,不应再使用。

    红帽建议您改用 ML2 Open Virtual Network (OVN) 驱动程序和服务,即 Red Hat OpenStack Platform director 部署的默认驱动程序和服务。(BZ#1779221)

  • 现在,您可以将浮动 IP 地址的 TCP、UDP 或者其它协议端口的流量转发到与 neutron 端口的一个固定 IP 地址关联的 TCP、UDP 或其他协议端口。转发的流量由 neutron API 的扩展程序和 OpenStack Networking 插件来管理。浮动 IP 地址可以配置多个转发定义。但是,您无法转发预先与 OpenStack Networking 端口关联的 IP 地址的流量。为浮动 IP 地址转发流量,这些地址由网络上的集中路由器(legacy、HA 和 DVR+HA)管理。

    要转发浮动 IP 地址端口的流量,请使用以下 OpenStack Networking 插件命令:

    openstack floating ip port forwarding create
    --internal-ip-address <internal-ip-address>
    --port <port>
    --internal-protocol-port <port-number>
    --external-protocol-port <port-number>
    --protocol <protocol>
    <floating-ip>

    --internal-ip-address <internal-ip-address> 接收转发流量的 neutron 端口的固定、IPv4、内部 IP 地址。

    --port <port> 接收转发的流量的 neutron 端口的名称或 ID。

    --internal-protocol-port <port-number> neutron 的协议端口号,接收转发流量的固定 IP 地址。

    --external-protocol-port <port-number> 转发流量的浮动 IP 地址端口的协议端口号。

    --protocol <protocol> 浮动 IP 地址端口使用的协议(如 TCP、UDP)。

    <floating-ip> 转发流量的端口的浮动 IP(IP 地址或 ID)。

    下面是一个示例:

    openstack floating ip port forwarding create \ --internal-ip-address 192.168.1.2 \ --port f7a08fe4-e79e-4b67-bbb8-a5002455a493 \ --internal-protocol-port 18343 \ --external-protocol-port 8343 \ --protocol tcp \ 10.0.0.100 (BZ#1749483)

对 openstack-nova 组件的更改:

  • 在此次功能增强中,增加了对使用 NUMA 拓扑进行实例实时迁移的支持。在以前的版本中,默认禁用此操作。可使用 '[workarounds] enable_numa_live_migration' 配置选项启用该项,但其默认为 False,因为实时迁移这些实例会导致将其移至目的地主机,却不更新任何底层 NUMA 客户机到主机的映射或者资源使用情况。使用新的 NUMA 感知实时迁移特性,如果实例无法安装到目的地,当请求设置为具有备用目的地时,将在备用目的地上尝试实时迁移。如果实例无法安装到目的地,则会重新计算 NUMA 客户机到主机的映射以反应其新主机,并更新其资源用量。(BZ#1222414)
  • 在此次功能增强中,添加了对使用附加的基于 SR-IOV 的 neutron 接口进行实例实时迁移的支持。Neutron SR-IOV 接口可以分为两个类别:直接模式和间接模式。直接模式 SR-IOV 接口直接附加到客户机,并公开到客户端操作系统。间接模式 SR-IOV 接口在客户机和 SR-IOV 设备间有一个软件接口,例如 macvtap。此功能为具有间接模式 SR-IOV 设备的实例实现透明的实时迁移。因为在实时迁移过程中没有复制硬件状态的通用方法,直接模式迁移对客户机并不透明。对于直接模式接口,模拟挂起和恢复操作已存在的工作流。例如:使用 SR-IOV 设备,在迁移前分离直接模式接口,并在迁移后重新连接它们。因此,具有直接模式 SR-IOV 端口的实例在迁移过程中会丢失网络连接,除非在客户机中创建了与实时可迁移接口的绑定。

    在以前的版本中,无法使用基于 SR-IOV 的网络接口进行实时迁移。因为实时迁移经常用于主机维护及类似的操作,所以这会产生问题。在以前的版本中,该实例必须冷迁移,这需要客户机停机。

    此功能增强实现使用基于 SR-IOV 的网络接口进行实例实时迁移。(BZ#1360970)

  • 在 Red Hat OpenStack Platform 16.0 中,现在可以在创建网络接口时指定 QoS 最小带宽规则。此功能增强可确保实例具有指定的网络可用带宽。目前,仅支持调整大小和冷迁移操作。(BZ#1463838)
  • 现在,当重建实例时,NUMATopologyFilter 被禁用。在以前的版本中,筛选将始终执行,只有在主机的额外容量足够让第二个实例使用新镜像和现有实例类型时,重建才会成功。这是不正确且不必要的行为。(BZ#1775246)
  • 现在,您可以根据实例级别配置 PCI NUMA 关联性。这需要为使用基于 SR-IOV 的网络接口的实例配置 NUMA 关联性。在以前的版本中,只能在主机级别为 PCI 透传设备配置 NUMA 关联性。(BZ#1775575)
  • 在此功能增强中,您可以使用以下参数将专用(固定)和共享(未固定)实例调度到同一 计算节点上:

    • NovaComputeCpuDedicatedSet- 固定实例 CPU 进程可调度到的物理主机 CPU 数的逗号分隔列表或范围。替换 NovaVcpuPinSet 参数,该参数现已弃用。
    • NovaComputeCpuSharedSet - 用于提供 vCPU 清单的物理主机 CPU 数的逗号分隔列表或范围,可确定未固定实例可以调度到的主机 CPU,并针对配置了共享仿真器线程策略 hw:emulator_threads_policy=share 的实例确定实例仿真器线程应当卸载到的主机 CPU。注意:此选项之前已存在,但其用途已通过该功能得到扩展。

      而不再需要使用主机聚合来确保这些实例类型在独立的主机上运行。另外,[DEFAULT] reserved_host_cpus 配置选项不再需要,且可以取消设置。

      要升级:

    • 对于以前用于固定实例的主机,NovaVcpuPinSet 的值应当迁移到 NovaComputeCpuDedicatedSet
    • 对于以前用于非固定实例的主机, NovaVcpuPinSet 应当迁移到 NovaComputeCpuSharedSet
    • 如果没有为 NovaVcpuPinSet 设置值,则所有主机内核都应当分配到 NovaComputeCpuDedicatedSetNovaComputeCpuSharedSet,这取决于该处运行的实例的类型。

      升级完成后,就可以在同一主机上开始设置这两个选项。然而,要做到这一点,主机应当排空实例,因为当NovaComputeCpuSharedSet 中没有列出未固定实例的内核时 nova 不会启动,反之亦然。(BZ#1693372)

对 openstack-octavia 组件的更改:

  • 现在,您可以使用 Octavia API 创建 VIP 访问控制列表 (ACL) ,将传入监听程序的流量限制到一组允许的源 IP 地址 (CIDR) 。任何其它传入的流量都会被拒绝。有关更多信息,请参阅《网络指南》中的“使用访问控制列表保护负载均衡器的安全”。(BZ#1691025)
  • 在 Red Hat OpenStack Platform 16.0 中,负载均衡服务 (octavia) 现在有一个用于 UDP 协议的技术预览。(BZ#1703956)

对 openstack-placement 组件的更改:

  • 放置服务已从计算 (nova) 服务中提取。现在,它由 director 部署和管理,并作为额外容器在 undercloud 和 overcloud 控制器节点上运行。(BZ#1625244)

对 openstack-tripleo-common 组件的更改:

  • 在 Red Hat OpenStack Platform 16.0 中,工作流服务 (mistral) 任务是一个技术预览,它可以使您通过以下操作来实现密码轮转:

    • 执行 rotate-password 工作流,生成新密码并将其存储在计划环境中。
    • 重新部署 overcloud。

      您也可以在更改密码后获取密码。

      要实现密码轮转,请按照以下步骤操作:

      注意

      工作流任务修改默认密码。该任务不会修改用户提供的环境文件中指定的密码。

      1. 执行新的工作流任务以重新生成密码:

        $ source ./stackrc
        $ openstack workflow execution create tripleo.plan_management.v1.rotate_passwords '{"container": "overcloud"}'
        This command generates new passwords for all passwords except for BarbicanSimpleCryptoKek and KeystoneFernet* and KeystoneCredential*. There are special procedures to rotate these passwords.
        It is also possible to specify specific passwords to be rotated. The following command rotates only the specified passwords.
        $ openstack workflow execution create tripleo.plan_management.v1.rotate_passwords '{"container": "overcloud", "password_list": ["BarbicanPassword", "SaharaPassword", "ManilaPassword"]}'
      2. 重新部署 overcloud:

        $ ./overcloud-deploy.sh

        要检索密码,包括新生成的密码,请按照以下步骤操作:

      3. 运行以下命令:

        $ openstack workflow execution create tripleo.plan_management.v1.get_passwords '{"container": "overcloud"}'
        You should see output from the command, similar to the following:
        +--------------------+---------------------------------------------+
        | Field              | Value                                       |
        +--------------------+---------------------------------------------+
        | ID                 | edcf9103-e1a8-42f9-85c1-e505c055e0ed        |
        | Workflow ID        | 8aa2ac9b-22ee-4e7d-8240-877237ef0d0a        |
        | Workflow name      | tripleo.plan_management.v1.rotate_passwords |
        | Workflow namespace |                                             |
        | Description        |                                             |
        | Task Execution ID  | <none>                                      |
        | Root Execution ID  | <none>                                      |
        | State              | RUNNING                                     |
        | State info         | None                                        |
        | Created at         | 2020-01-22 15:47:57                         |
        | Updated at         | 2020-01-22 15:47:57                         |
        +--------------------+---------------------------------------------+
        In the earlier example output, the value of State is RUNNING. State should eventually read SUCCESS.
      4. 重新检查 State 值:

        $ openstack workflow execution show edcf9103-e1a8-42f9-85c1-e505c055e0ed
        +--------------------+---------------------------------------------+
        | Field              | Value                                       |
        +--------------------+---------------------------------------------+
        | ID                 | edcf9103-e1a8-42f9-85c1-e505c055e0ed        |
        | Workflow ID        | 8aa2ac9b-22ee-4e7d-8240-877237ef0d0a        |
        | Workflow name      | tripleo.plan_management.v1.rotate_passwords |
        | Workflow namespace |                                             |
        | Description        |                                             |
        | Task Execution ID  | <none>                                      |
        | Root Execution ID  | <none>                                      |
        | State              | SUCCESS                                     |
        | State info         | None                                        |
        | Created at         | 2020-01-22 15:47:57                         |
        | Updated at         | 2020-01-22 15:48:39                         |
        +--------------------+---------------------------------------------+
      5. 当 State 的值为 SUCCESS 时,您可以检索密码:

        $ openstack workflow execution output show edcf9103-e1a8-42f9-85c1-e505c055e0ed
        You should see output similar to the following:
           {
               "status": "SUCCESS",
               "message": {
                   "AdminPassword": "FSn0sS1aAHp8YK2fU5niM3rxu",
                   "AdminToken": "dTP0Wdy7DtblG80M54r4a2yoC",
                   "AodhPassword": "fB5NQdRe37BaBVEWDHVuj4etk",
                   "BarbicanPassword": "rn7yk7KPafKw2PWN71MvXpnBt",
                   "BarbicanSimpleCryptoKek": "lrC3sGlV7-D7-V_PI4vbDfF1Ujm5OjnAVFcnihOpbCg=",
                   "CeilometerMeteringSecret": "DQ69HdlJobhnGWoBC0jM3drPF",
                   "CeilometerPassword": "qI6xOpofuiXZnG95iUe8Oxv5d",
                   "CephAdminKey": "AQDGVPpdAAAAABAAZMP56/VY+zCVcDT81+TOjg==",
                   "CephClientKey": "AQDGVPpdAAAAABAAanYtA0ggpcoCbS1nLeDN7w==",
                   "CephClusterFSID": "141a5ede-21b4-11ea-8132-52540031f76b",
                   "CephDashboardAdminPassword": "AQDGVPpdAAAAABAAKhsx630YKDhQrocS4o4KzA==",
                   "CephGrafanaAdminPassword": "AQDGVPpdAAAAABAAKBojG+CO72B0TdBRR0paEg==",
                   "CephManilaClientKey": "AQDGVPpdAAAAABAAA1TVHrTVCC8xQ4skG4+d5A=="
               }
           }
        (BZ#1600967)

对 openstack-tripleo-heat-templates 组件的更改:

  • 在清理 BM 节点期间,Nova-compute ironic 驱动程序会尝试更新该节点。清理操作大约需要五分钟,但 nova-compute 会尝试在大约两分钟内更新节点。超时后,nova-compute 会停止 nova 实例并将其置于 ERROR 状态。

    作为临时解决方案,为 nova-compute 服务设置以下配置选项:

    [ironic]
    api_max_retries = 180

    这样,nova-compute 就会继续更长时间尝试更新 BM 节点,并最终成功。(BZ#1647005)

  • 在 Red Hat OpenStack Platform 16.0 中,配置 OpenStack 实例所需的元数据信息不可用,且可能在没有连接的情况下启动,这是一个已知的问题。

    排序问题导致无法为 ovn_metadata_agent 更新 haproxy 打包程序。

    可能的解决方法是让云操作器运行以下 Ansible 命令,以便在更新后重启选定节点上的 ovn_metadata_agent,以确保 ovn_metadata_agent 使用 haproxy 打包程序脚本的更新版本:

    ansible -b <nodes> -i /usr/bin/tripleo-ansible-inventory -m shell -a "status=`sudo systemctl is-active tripleo_ovn_metadata_agent; if test \"$status\" == \"active\"; then sudo systemctl restart tripleo_ovn_metadata_agent; echo restarted; fi"`

    在以前的 Ansible 命令中,nodes 可能是单个节点(如 compute-0)、所有计算(如 compute*)或 "all"

    因为 ovn_metadata_agent 最常用于计算节点,所以以下 Ansible 命令会重启云中所有计算节点的代理:

    ansible -b compute* -i /usr/bin/tripleo-ansible-inventory -m shell -a "status=`sudo systemctl is-active tripleo_ovn_metadata_agent; if test \"$status\" == \"active\"; then sudo systemctl restart tripleo_ovn_metadata_agent; echo restarted; fi"`

    重启 ovn_metadata_agent 服务后,它们会使用更新的 haproxy 打包程序脚本,这样可在虚拟机启动时为它们提供元数据。已经运行的受影响虚拟机在应用临时解决方案后重启,应该会正常运行。(BZ#1790467)

  • Red Hat OpenStack Platform 16.0 director 现在支持多计算机单元格部署。在此次功能增强中,云可以更好地进行扩展,因为每个单元格在单元格控制器上都有自己的数据库和消息队列,并减少了中央 control plane 的负载。有关更多信息,请参阅《实例和镜像》指南中的“使用计算单元格扩展部署”。(BZ#1328124)
  • 从此次更新开始,OSP 部署在所有 OVN 服务间都有完全加密功能。现在,所有 OVN 客户端(ovn-controller、neutron-server 和 ovn-metadata-agent)都使用相互 TLS 加密连接到 OVSDB 服务器。(BZ#1601926)
  • 在 Red Hat OpenStack Platform 16.0 中,向编排服务 (heat) 中添加了一个技术预览,用于 rsyslog 更改:

    • 将 rsyslog 配置为收集并转发与 fluentd 安装功能相等的容器日志。
    • 管理员可以使用与 fluentd 相同的方法配置 rsyslog 日志转发。(BZ#1623152)
  • 在 Red Hat OpenStack Platform 16.0 中,您可以使用 director 为块存储务 (cinder) 后端类型指定可用域。(BZ#1700396)
  • Red Hat OpenStack Platform director 支持部署额外节点,可用于在部署过程中为系统置备添加其他裸机置备编排器服务资源。(BZ#1710093)
  • 在 Red Hat OpenStack Platform 16.0 中,不再支持 Elastic Compute Cloud (EC2) API。现在,director 中已弃用 EC2 API 支持,并将在以后的 RHOSP 发行版本中删除。(BZ#1754560)
  • 在 Red Hat OpenStack Platform 16.0 中,删除了 controller-v6.yaml 文件。controller-v6.yaml 中定义的路由现在在 controller.yaml 中定义。(controller.yaml 文件是一个 NIC 配置文件,根据 role_data.yaml 中设置的值产生。)

    早期版本的 Red Hat OpenStack Director 包括两个路由:一个用于外部网络上的 IPv6(默认),另一个用于 Control Plane 上的 IPv4。

    要使用这两个默认路由,请确保 role_data.yaml 中的控制器定义在 default_route_networks 中包含这两个网络(例如,default_route_networks: ['External', 'ControlPlane'])。(BZ#1631508)

  • 在 Red Hat OpenStack Platform 16.0 中,您可以将自定义 Red Hat Ceph Storage 配置设置添加到 ceph.conf 的任意部分。在以前的版本中,自定义设置只能在 ceph.conf 的 [global] 部分进行。(BZ#1666973)
  • 在 Red Hat OpenStack Platform 16.0 中,新的编排服务 (heat) 部署参数可供管理员在单元格控制器上打开 nova 元数据服务:

    parameter_defaults:
       NovaLocalMetadataPerCell: True

    这个新参数自动将来自该单元格计算上的 OVN 元数据代理的流量定向到该单元格控制器上托管的 nova 元数据 API 服务。

    根据 RHOSP 拓扑,在单元格控制器上运行元数据服务的能力可减少中央 control plane 上的网络流量。(BZ#1689816)

  • 在 Red Hat OpenStack Platform 16.0 中,向编排服务 (heat) 中添加了一个技术预览。一个新的参数 NovaSchedulerQueryImageType,被添加用于控制镜像类型(scheduler/query_placement_for_image_type_support)的计算服务 (nova) 放置和调度程序组件查询放置。

    当设置为 true(默认)时,NovaSchedulerQueryImageType 会排除不支持引导请求中使用的镜像磁盘格式的计算节点。

    例如,libvirt 驱动程序使用 Red Hat Ceph Storage 作为临时后端,且不支持 qcow2 镜像(不需要昂贵的转换步骤)。在本例中,启用 NovaSchedulerQueryImageType 可确保调度程序不会向使用 Red Hat Ceph Storage 的计算节点发送引导 qcow2 镜像的请求。(BZ#1710634)

对 puppet-tripleo 组件的更改:

  • Red Hat OpenStack Platform director 现在为 fence_redfish 提供技术预览,这是 Redfish API 的保护代理。(BZ#1699449)

对 python-django-horizon 组件的更改:

  • 在 Red Hat OpenStack Platform 16.0 控制面板 (horizon) 中,现在有更改用户密码的新表单。当用户试图使用过期的密码登录时,这个表单会自动出现。(BZ#1628541)

对 python-networking-ansible 组件的更改:

  • 在 Red Hat OpenStack Platform 16.0 中,向 OpenStack 裸机服务 (ironic) 添加了一个技术预览功能,用于通过 Arista Extensible Operating System (Arista EOS) 交换机配置 ML2 networking-ansible 功能。有关更多信息,请参阅《裸机置备》指南中的“启用 networking-ansible ML2 功能”。(BZ#1621701)
  • 在 Red Hat OpenStack Platform 16.0 中,添加了一个修改交换机端口的技术预览,以使其进入中继模式,并为它们分配多个 VLAN。(BZ#1622233)

对 python-networking-ovn 组件的更改:

  • 在 Red Hat OpenStack Platform 16.0 中,启用 OVN 的实时迁移现已成功,因为标记 live_migration_wait_for_vif_plug 默认启用。

    在以前的版本中,实时迁移失败,因为系统一直在等待 OpenStack Networking (neutron) 发送 vif_plugged 通知。(BZ#1716335)

  • 目前,在从成员获取数据时,OVN 负载均衡器不会打开新的连接。负载均衡器修改目的地地址和目的地端口,并将请求数据包发送到成员。因此,在使用 IPv4 负载均衡器地址时无法定义 IPv6 成员,反之亦然。当前没有解决此问题的方法。(BZ#1734301)

对 python-novajoin 组件的更改:

  • 在以前的版本中,当 Novajoin 丢失与 IPA 服务器的连接时,它会马上尝试重新连接。因此,可能会出现与时间相关的问题,并阻止重新建立连接。在此更新中,您可以在重试 IPA 服务器连接前使用 retry_delay 设置要等待的秒数。因此,这可以帮助减少时间的问题。(BZ#1767481)

对 python-oslo-utils 组件的更改:

  • 在以前的版本中,oslo.util 库的正则表达式没有更新,它无法识别较新版本的仿真器 qemu(版本 4.1.0)的输出格式。Red Hat OpenStack 16.0 中的此次修复更新了正则表达式,oslo.util.imageutils 库现在可以正常工作。(BZ#1758302)

对 python-tripleoclient 组件的更改:

  • director 已添加了 overcloud undercloud minion install 命令,您可以使用该命令配置额外主机来增强 Undercloud 服务。(BZ#1710089)
  • director 现在提供部署额外节点的功能,您可以使用该节点为部署相关的操作添加其他 heat-engine 资源。(BZ#1710092)
  • 在 Red Hat OpenStack Platform 16.0 中,您现在可以在本地 registry 中推送、列出、删除和显示(显示元数据)镜像。

    • 将镜像从远程存储库推送到主存储库:

      $ sudo openstack tripleo container image push docker.io/library/centos
    • 列出存储库的内容:

      $ openstack tripleo container image list
    • 删除镜像:

      $ sudo openstack tripleo container image delete
    • 显示镜像元数据:

      $ openstack tripleo container image show (BZ#1545855)
  • 在此功能增强中,overcloud 节点删除需要在执行操作前进行用户确认,以减少意外执行该操作的可能性。openstack overcloud node delete <node> 命令需要在操作执行前进行 Y/n 确认。您可以通过在命令行中添加 --yes 来绕过此操作。(BZ#1593057)