Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

第 3 章 发行信息

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

在本 Red Hat OpenStack Platform 发行版本的产品支持周期内,每个更新版本的说明都会包括在相应的公告中。

3.1. Red Hat OpenStack Platform 13 GA

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

3.1.1. 功能增强

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

BZ#1419556

Object Store 服务(swift)现在可以与 Barbican 集成,以透明地加密和解密您的存储(at-rest)对象。at-rest 加密与 in-transit 加密不同,它引用了在存储于磁盘上的对象。

Swift 对象以明文形式存储在磁盘上。如果问题早已达到生命期,这些磁盘可能会造成安全风险。加密对象可以缓解这些风险。

Swift 以透明方式执行这些加密任务,在上传到 swift 时自动加密对象,然后在提供给用户时自动解密。这个加密和解密使用相同的(ymmetric)密钥进行,密钥保存在 Barbican 中。

BZ#1540239

此功能增强添加了对将指标数据发送到 Gnocchi DB 实例的支持。

为 collectd 可组合服务添加了以下新参数。如果 CollectdGnocchiAuthMode 设置为 'simple',则 CollectdGnocchiProtocol, CollectdGnocchiServer, CollectdGnocchiPort 和 CollectdGnocchiUser 被考虑进行配置。

如果 CollectdGnocchiAuthMode 设置为 'keystone',则将 CollectdGnocchiKeystone* 参数考虑进行配置。

下面是添加的参数的详细描述:

CollectdGnocchiAuthMode

类型:字符串

描述:身份验证 Gnocchi 服务器的类型使用。支持的值有'simple' 和 'keystone'。

默认:'simple'

CollectdGnocchiProtocol

类型:字符串

描述:API 协议 Gnocchi 服务器使用.

默认: 'http'

CollectdGnocchiServer

类型:字符串

Description:我们应该发送指标的 gnocchi 端点的名称或地址。

默认: nil

CollectdGnocchiPort

类型:数字

描述:我们将在 Gnocchi 服务器上连接的端口。

默认: 8041

CollectdGnocchiUser

类型:字符串

Description:使用简单身份验证向远程 Gnocchi 服务器进行身份验证的用户名。

默认: nil

CollectdGnocchiKeystoneAuthUrl

类型:字符串

描述:用于身份验证的 Keystone 端点 URL。

默认: nil

CollectdGnocchiKeystoneUserName

类型:字符串

Description:用于向 Keystone 进行身份验证的用户名。

默认: nil

CollectdGnocchiKeystoneUserId

类型:字符串

描述:用于向 Keystone 进行身份验证的用户 ID。

默认: nil

CollectdGnocchiKeystonePassword

类型:字符串

描述:用于向 Keystone 进行身份验证的密码

默认: nil

CollectdGnocchiKeystoneProjectId

类型:字符串

描述:用于向 Keystone 进行身份验证的项目 ID。

默认: nil

CollectdGnocchiKeystoneProjectName

类型:字符串

描述:用于向 Keystone 进行身份验证的项目名称。

默认: nil

CollectdGnocchiKeystoneUserDomainId

类型:字符串

描述:用于向 Keystone 进行身份验证的用户域 ID。

默认: nil

CollectdGnocchiKeystoneUserDomainName

类型:字符串

描述:用于向 Keystone 进行身份验证的用户域名。

默认: nil

CollectdGnocchiKeystoneProjectDomainId

类型:字符串

描述:用于向 Keystone 进行身份验证的项目域 ID。

默认: nil

CollectdGnocchiKeystoneProjectDomainName

类型:字符串

描述:用于向 Keystone 进行身份验证的项目域名。

默认: nil

CollectdGnocchiKeystoneRegionName

类型:字符串

描述:用于向 Keystone 进行身份验证的区域名称。

默认: nil

CollectdGnocchiKeystoneInterface

类型:字符串

描述:要进行身份验证的 Keystone 端点的类型。

默认: nil

CollectdGnocchiKeystoneEndpoint

类型:字符串

描述:如果要覆盖 Keystone 值,请 Explicitly state Gnocchi 服务器 URL

默认: nil

CollectdGnocchiResourceType

类型:字符串

Description:由 collectd-gnocchi 插件在 Gnocchi 中创建的默认资源类型来存储主机。

默认:'collectd'

CollectdGnocchiBatchSize

类型:数字

Description:最小值 Gnocchi 应该批处理。

默认:10

BZ#1592823

Ansible playbook 的日志现在包括提供部署、更新和升级期间操作时间的信息。

3.1.2. 技术预览

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

BZ#1446311

此发行版本添加了对 PCI 设备 NUMA 关联性策略的支持,这些策略被配置为 "[pci]alias" 配置选项的一部分。支持三个策略:

"必需" (必需)"legacy" (默认; 必须有;如果可用)"首选" (nice 才需要具有)

在所有情况下,如果可能,都提供严格的 NUMA 关联性。这些策略允许您配置每个 PCI 别名应严格的 NUMA 关联性,以最大化资源利用率。策略之间的主要区别在于,在调度失败前,您将要考虑到的 NUMA 关联性量。

当为 PCI 设备配置"首选"策略时,nova 会在与 PCI 设备的 NUMA 节点不同的 NUMA 节点上使用 CPU (如果可用)。这会增加资源利用率,但会降低这些实例的性能。

BZ#1488095

从 RHOS-12 开始,OpenStack 服务正在变为容器化状态。在本发行版本中,我们还对 OpenStack Tempest 进行容器化。容器化 OpenStack Tempest 作为技术预览提供。

3.1.3. 发行注记

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

BZ#1468020

共享文件系统服务(manila)现在为 NetApp ONTAP cDOT 驱动程序提供 IPv6 访问规则支持,它可让您将 manila 与 IPv6 环境搭配使用。

因此,共享文件系统服务现在支持通过 IPv6 网络导出由 NetApp ONTAP 后端支持的共享。对导出的共享的访问由 IPv6 客户端地址控制。

BZ#1469208

共享文件系统服务(manila)支持通过 NFSv4 协议挂载 Ceph 文件系统(CephFS)支持的共享文件系统。在 Controller 节点上运行的 NFS-Ganesha 服务器用于将 CephFS 导出到具有高可用性(HA)的租户。租户彼此隔离,只能通过提供的 NFS 网关接口访问 CephFS。此新功能完全集成到 director 中,为共享文件系统服务启用 CephFS 后端部署和配置。

BZ#1496584

当 neutron 服务容器化时,尝试在网络命名空间中运行命令可能会失败,并显示以下错误:

# ip netns exec qrouter...
RTNETLINK answers: Invalid argument

要在网络命名空间中运行命令,您必须从创建命名空间的 neutron 容器执行它。例如,l3-agent 为路由器创建网络命名空间,因此命令需要更改为:

# docker exec neutron_l3_agent ip netns exec qrouter...

与使用 'qdhcp' 开头的网络命名空间类似,您需要从 'neutron_dhcp' 容器中执行。

BZ#1503521

此发行版本引进了对 networking-ovn 中的内部 DNS 解析的支持。虽然存在两个已知的限制,但有一个 .BZ#1581332,它可防止通过内部 DNS 正确解析内部 fqdn 请求。

请注意,在 GA 版本中 tripleo 默认不配置扩展。如需临时解决方案,请参阅 .BZ#1577592。

BZ#1533206

openstack-gnocchi 软件包已重命名为 gnocchi。由于上游项目范围的变化,openstack- 前缀已被删除。Gnocchi 已从 OpenStack umbrella 中移出,并作为独立项目维护。

BZ#1556933

自 2.1 版本 2.1 起,python-cryptography 检查证书中使用的 CNS Names 是否符合 IDN 标准。如果找到的名称没有遵循此规范,加密将无法在使用 OpenStack 命令行界面或 OpenStack 服务日志中发现证书和不同错误。

BZ#1563412

为 OpenStack Compute (nova)保留的主机内存已从 2048 MB 增加到 4096 MB。这会影响您的环境的容量估算。如果需要,您可以使用环境文件中的 'NovaReservedHostMemory' 参数重新配置保留的内存。例如:

parameter_defaults: NovaReservedHostMemory: 2048

BZ#1564176

python-mistralclient 不是任何支持的 overcloud 用例的一部分,因此它从 OSP 13 版本的 -tools 频道中丢弃。

BZ#1567735

将 OVN 用作网络后端的 OSP13 在第一个发行版本中不包含 IPv6 支持。对邻居请求来自客户机虚拟机的响应存在问题,这会导致默认路由丢失。

BZ#1575752

在以前的版本中,*NetName 参数(如 InternalApiNetName)更改了默认网络的名称。这不再被支持。

要更改默认网络的名称,请使用自定义的可组合网络文件(network_data.yaml),并使用 '-n' 选项将其包含在您的 'openstack overcloud deploy' 命令中。在这个文件中,您应该将 "name_lower" 字段设置为您要更改的网络的自定义 net 名称。有关更多信息,请参阅高级 Overcloud 自定义指南中的"使用 Composable Networks"。

另外,您需要为 ServiceNetMap 表添加本地参数到 network_environment.yaml,并将旧网络名称的所有默认值覆盖到新的自定义名称。默认值可以在 /usr/share/openstack-tripleo-heat-templates/network/service_net_net_map.j2.yaml 中找到。在以后的 OSP-13 版本中将不需要修改 ServiceNetMap。

BZ#1577537

修复了一些容器镜像不可用的 OSP 13 测试程序问题。

BZ#1578312

当 OVSDB 服务器切换到其他控制器节点时,来自 neutron-server/metadata-agent 的重新连接不会发生,因为它们没有检测到这个条件。

因此,引导虚拟机可能无法作为 metadata-agent 置备新的元数据命名空间,集群不会如预期执行。

可能的解决方法是,在将新控制器提升为 OVN 数据库的 master 后,重启所有计算节点中的 ovn_metadata_agent 容器。另外,将 plugin.ini 上的 ovsdb_probe_interval 增加到 600000 毫秒。

BZ#1589849

当在 Compute 节点上停止 OVN 元数据代理时,该节点上的所有虚拟机都无法访问元数据服务。其影响在于,如果生成新虚拟机或现有虚拟机被重启,则虚拟机将无法访问元数据,直到重新备份 OVN 元数据代理。

BZ#1592528

在个别情况下,在多次重启控制器节点后,RabbitMQ 可能会处于不一致的状态,该状态将阻止 overcloud 上的 API 操作。

此问题的症状是: - 在 OpenStack 服务日志中执行任何形式的条目:DuplicateMessageError: Found duplicate message (629ff0024219488499b0fac0caa3a3a5)。跳过它。- "openstack network agent list" 返回一些代理为 DOWN

要恢复正常操作,请在任何控制器节点上运行以下命令(您只需要在一个控制器上执行此操作):pcs resource restart rabbitmq-bundle

3.1.4. 已知问题

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

BZ#1321179

使用 python-requests 的 OpenStack 命令行客户端目前无法在 SAN 字段中验证具有 IP 地址的证书。

BZ#1461132

当将 Red Hat Ceph Storage 用作 Cinder 卷和 Cinder 备份的块存储后端时,任何尝试执行增量备份将导致完全备份,而无需任何警告。这是个已知问题。

BZ#1508449

OVN 将 DHCP 作为 openflow 控制器,直接在计算节点上使用 ovn-controller。但是 SR-IOV 实例通过 VF/PF 直接连接到网络。因此,SR-IOV 实例无法从任何位置获取 DHCP 响应。

要解决这个问题,请将 OS::TripleO::Services::NeutronDhcpAgent 更改为:

OS::TripleO::Services::NeutronDhcpAgent: docker/services/neutron-dhcp.yaml

BZ#1515815

当路由器网关被清除后,不会删除与学习 IP 地址相关的 3 层流。学到的 IP 地址包括 PNF 和外部网关 IP 地址。这会造成过时的流,但无法正常工作问题。外部网关和 IP 地址不会频繁更改。删除外部网络时,会删除过时的流。

BZ#1518126

Redis 在启用了 TLS 的 HA 部署中无法正确复制跨节点间的数据。Redis 后续节点将不包含领导节点中的任何数据。建议为 Redis 部署禁用 TLS。

BZ#1519783

Neutron 可能会出现错误声明,用于 Neutron 路由器创建配额超过。存在一个已知问题:由于 networking-odl 错误,在 Neutron DB 中使用单一创建请求来创建多个路由器资源。造成此问题的解决方法是,使用 OpenStack Neutron CLI 删除重复的路由器,然后再次创建路由器,从而产生单个实例。

BZ#1557794

在备份和恢复 director 的过程中发现了一个回归问题。因此,这个过程需要修改和验证,然后才能发布。

因此,Red Hat OpenStack Platform 13 正式发布书 'Back Up 和 Restore the Director Undercloud'。该程序会在此版本正式发行(GA)后被更新,并在验证后立即发布。

BZ#1559055

OpenDaylight 日志记录可能缺少以前的日志。这是 OpenDaylight journald 日志记录的一个已知问题(使用 "docker logs opendaylght_api" 命令)。当前的一个临时解决方案是将 OpenDaylight 日志记录切换为 "file" 机制,该机制会将容器内的 /opt/opendaylight/data/logs/karaf.log 记录到 /opt/opendaylight/data/logs/karaf.log。为此,请配置以下 heat 参数:OpenDaylightLogMechanism: 'file'。

BZ#1568012

当将浮动 IP 关联到实例时,连接到外部 IP 会失败,然后取消关联浮动 IP。当租户 VLAN 网络时,会出现这种情况:* 在非NAPT 交换机上生成的虚拟机与浮动 IP 关联,并*浮动 IP 被删除。这会导致在 NAPT 交换机的 FIB 表中缺少流(大致)。

由于缺少 FIB 表条目,虚拟机将丢失与公共网络的连接。

将浮动 IP 与虚拟机关联可恢复与公共网络的连接。只要浮动 IP 与虚拟机关联,就可以连接到互联网。但是,您将丢失来自外部网络的公共 IP/浮动 IP。

BZ#1568311

当实例没有浮动 IP 地址访问另一个路由器上的浮动 IP 时,多个子网的 nova 实例之间的第 3 层连接可能会失败。当 nova 实例分散到多个计算节点时,会出现这种情况。这个问题还没有适当的临时解决方案。

BZ#1568976

在部署过程中,一个或多个 OpenDaylight 实例可能会因为功能加载错误而无法正确启动。这可能会导致部署或功能失败。

当部署通过时,三个 OpenDaylight 实例必须只有两个可以正常工作,才能成功进行部署。第三个 OpenDaylight 实例可能会错误地启动。使用 docker ps 命令检查每个容器的健康状况。如果不健康,请使用 docker restart opendaylight_api 重启容器。

当部署失败时,唯一的选项是重启部署。对于基于 TLS 的部署,所有 OpenDaylight 实例都必须正确引导或部署将失败。

BZ#1571864

在快进升级过程中临时删除 Heat 堆栈资源会触发 RHEL 取消注册。因此,RHEL 不注册就已停止,因为 Heat 软件部署信号无法正常工作。

为避免此问题,overcloud 仍然在 OSP 10 上,并准备好执行最后的 overcloud 次要版本更新:1.编辑模板文件 /usr/share/openstack-tripleo-heat-templates/extraconfig/pre_deploy/rhel-registration/rhel-registration.yaml 2。从模板创建 RHELUnregistration 和 RHELUnregistrationDeployment 资源。3.继续进行小的更新和快进升级过程。

BZ#1573597

在 collectd 日志和 "ConnectionError: ('Connection aborted.', CannotSendRequest ())中,用作 Gnocchi 后端的任何错误,在 gnocchi-metricd.conf 中生成 503 错误。要缓解这个问题,请提高 CollectdDefaultPollingInterval 参数的值,或者提高 Swift 集群性能。

BZ#1574708

当从集群中移除并重新连接 OpenDaylight 实例时,实例可能无法成功加入集群。节点最终会重新加入集群。

在这种情况下,应该执行以下操作:* 重启有问题的节点。* 监控 REST 端点以验证集群成员是否健康: http://$ODL_IP:8081/jolokia/read/org.opendaylight.controller:Category=ShardManager,name=shard-manager-config,type=DistributedConfigDatastore * 应该包含一个字段 "SyncStatus",而 "true" 的值代表一个健康的。

BZ#1574725

当 VLAN 提供商网络的同一子网中的多个虚拟机调度到两个不同的 Compute 节点时,虚拟机间会出现 ARP。

由于这些虚拟机之间的 ARP 数据包失败,因此两个虚拟机之间没有网络。

BZ#1575023

manila-share 服务无法初始化,因为对 ceph-ansible 的复杂 ceph-keys 处理的更改会在 /etc/ceph/ceph.client.manila.keyring 文件中生成不正确的内容。

允许 manila-share 服务初始化:

1)创建 /usr/share/openstack/tripleo-heat-templates 的副本,以用于 overcloud 部署。

2)编辑 …​/tripleo-heat-templates/docker/services/ceph-ansible/ceph-base.yaml 文件,将第 295 行中的所有 triple 反斜杠更改为单反斜杠。

删除前:

mon_cap: 'allow r, allow command \\\"auth del\\\", allow command \\\"auth caps\\\", allow command \\\"auth get\\\", allow command \\\"auth get-or-create\\\"'

删除后:

mon_cap: 'allow r, allow command \"auth del\", allow command \"auth caps\", allow command \"auth get\", allow command \"auth get-or-create\"'

3)部署 overcloud,替换 tripleo-heat-templates 的副本的副本,其中验证 /usr/share/openstack-tripleo-heat 模板发生在原始 overcloud-deploy 命令中。

ceph 键 /etc/ceph/ceph.client.manila.keyring 文件会具有适当的内容,manila-share 服务将正确初始化。

BZ#1575118

Ceph 版本 12.2.1 降低了每个 OSD 允许的最大 PG 数量。较低限制可能会导致 monitor 预先发出 HEALTH_WARN 消息。

监控警告阈值已从每个 OSD 从 300 减小到 200 个 PG。200 仍然是每个 OSD 通常建议 100 个 PG 的两倍。此限制可以通过监视器上的 mon_max_pg_per_osd 选项进行调整。旧的 mon_pg_warn_max_per_osd 选项已被删除。

池消耗的 PG 数量不能降低。如果升级会导致预先存在的部署达到最大限制,您可以在 ceph-upgrade 步骤中提高其预升级值。在环境文件中,添加如下参数设置:

parameter_defaults:
  CephConfigOverrides:
    mon_max_pg_per_osd: 300

此设置应用到 ceph.conf,集群则保持 HEALTH_OK 状态。

BZ#1575150

存在一个已知问题:当 OpenDaylight 群集成员停止时,OpenDaylight 集群可能会停止响应 30 分钟(因为失败或以其他方式)。临时解决方案会等待,直到集群再次变为活跃状态。

BZ#1575496

将物理主机接口用于带有 Director 的外部网络时,如果接口未附加到 OVS 网桥,该接口不会在 OpenDaylight 设置中传递流量。流量不会通过,您应该避免这种配置。

始终对 overcloud 外部网络使用 NIC 模板中的 OVS 网桥。默认情况下,这个网桥在 Director 中被命名为 "br-ex" (但您可以使用任何名称)。您应将用于外部网络的物理主机接口连接到此 OVS 网桥。

当您使用附加到 OVS 网桥的接口时,部署将正确运行,到租户的外部网络流量将可以正常工作。

BZ#1577975

OpenDaylight 可能遇到非常高的 CPU 用量。此问题不应影响 OpenDaylight 的功能,但它可能会影响其他系统服务。

BZ#1579025

当 pacemaker 试图提升从设备节点时,OVN pacemaker 资源代理(RA)脚本有时无法正确处理促销操作。当 ovsdb-servers 将主 IP 移到节点的 RA 脚本时,会看到这一点。这个问题已解决。

出现问题时,neutron 服务器将无法使用 OVN 北和南向 DB 服务器,并将所有 Create/Update/Delete API 连接到 neutron 服务器会失败。

重启 ovn-dbs-bundle 资源将解决这个问题。在其中一个控制器节点中运行以下命令:

"pcs resource restart ovn-dbs-bundle"

BZ#1579417

SNAT 支持要求配置 VXLAN 隧道,而不管租户网络中使用的封装是什么。在使用 VLAN 租户网络时,还必须正确配置 MTU,因为 VXLAN Tunnel 标头添加到有效负载中,这可能导致数据包超过默认 MTU (1500 Bytes)。

VXLAN 隧道必须正确配置,以便 SNAT 流量通过它们。使用 VLAN 租户网络时,使用以下方法之一配置 MTU,以便 SNAT 流量可以通过 VXLAN 隧道:: * 配置 VLAN 租户网络,以在每个网络配置上使用 1450 的 MTU。* 将 NeutronGlobalPhysnetMtu heat 参数设置为 1450。注意:这意味着所有扁平/VLAN 提供商网络均具有 1450 MTU,可能不是可取的(特别是用于外部提供商网络)。* 在lay 下配置 MTU 为 1550 (或更高)的租户网络。这包括在租户网络 NIC 的 NIC 模板中设置 MTU。

BZ#1581337

HAProxy 用于网络负载均衡,必须为版本 1.6 或更高版本,才能正确地支持 PING 类型运行状况监控器。

Red Hat OpenStack Platform 13 中包含的 HAProxy 版本是一个比 1.6 更早的版本,在配置 PING 类型健康监控器时使用 TCP 连接。

BZ#1583541

如果基于 SRIOV 的计算实例在不同的网络上,则没有与 OVS 计算实例的连接。解决办法是使用连接到两个 VLAN 提供商网络的外部路由器。

BZ#1584518

默认情况下,RHOSP 不在 nova 中配置 differentHostFilter / SameHostFilter 的可用性,且这些设置需要正确完成一些测试。因此,多个安全组测试可能会随机失败。

您应该跳过这些测试,或者将这些过滤器添加到您的 nova 配置中。

BZ#1584762

如果在 undercloud 上手动启用 Telemetry,则 hardware.* 指标不起作用,因为每个节点上的防火墙错误配置也无法正常工作。

作为临时解决方案,您需要通过为 undercloud 部署添加额外的模板来使用 control plane 网络手动设置 snmpd 子网,如下所示"

parameter_defaults: SnmpdIpSubnet: 192.168.24.0/24

BZ#1588186

一个竞争条件会导致 Open vSwitch 没有连接到 Opendaylight openflowplugin。目前,针对此产品的 13.z 版本实施了一个修复程序。

BZ#1590114

如果在 undercloud 上手动启用 Telemetry,则 hardware.* 指标不起作用,因为每个节点上的防火墙错误配置也无法正常工作。

作为临时解决方案,您需要通过为 undercloud 部署添加额外的模板来使用 control plane 网络手动设置 snmpd 子网,如下所示"

parameter_defaults:
  SnmpdIpSubnet: 192.168.24.0/24

BZ#1590560

ceph-ansible 实用程序并不总是从创建该文件的同一节点中删除 ceph-create-keys 容器。

因此,部署可能会失败,并显示消息 "Error response from daemon: No such container: ceph-create-keys"。 这会影响任何 ceph-ansible 运行(包括全新的部署),其中包括:* 多个计算备注或 * 自定义角色作为 ceph 客户端,后者也托管了使用 ceph 的服务。

BZ#1590938

如果您在 RHCS3 上部署了三个 OSD,并且按照 pgcalc (https://access.redhat.com/labs/cephpgc确定的池设置 PG 号),部署将失败,因为 ceph-ansible 在所有 OSD 处于活动状态前创建池。

要避免这个问题,请将默认 PG 号设置为 32;部署完成后,手动提高 PG 号,如存储策略指南所述 https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html/storage_strategies_guide/placement_groups_pgs#set_the_number_of_pgs

BZ#1590939

由于 ceph-ansible OpenStack 池任务具有不正确的容器名称,因此无法并置 Ceph MON 和 OSD。标准 HCI (计算 + OSD)不会受到影响。

BZ#1593290

当使用基于 SR-IOV 的网络接口运行并删除客户机的虚拟客户机时,重启 nova-compute 服务后,无法再将该节点上的 SR-IOV VF 附加到任何客户端。这是因为可用的设备在服务启动时枚举,但因为该设备附加到客户机中,它不包含在主机设备列表中。

删除客户端后,您必须重启 'nova-compute' 服务。删除客户端并重新启动服务后,可用的 SR-IOV 设备列表将正确。

BZ#1593715

不安全的 registry 列表会比一些容器镜像在以后进行更新。因此,新引入的不安全 registry 中的容器镜像无法在 openstack overcloud upgrade run 命令期间下载。

您可以使用以下临时解决方案之一:

选项 A:在由 Pacemaker 管理的容器的节点上手动更新 /etc/sysconfig/docker 文件,并添加任何新引入的不安全 registry。

选项 B:在升级前运行 openstack overcloud deploy 命令,并使用环境文件和 DockerInsecureRegistryAddress 参数提供所需的新的不安全注册表列表。

所有容器镜像都应该在升级过程中成功下载。

BZ#1593757

在现有 overcloud 部署上启用 Octavia 作为成功报告,但 Octavia API 端点无法访问,因为 Controller 节点上的防火墙规则配置错误。

在所有控制器节点上进行故障排除,添加防火墙规则,并确保在 DROP 规则之前插入它们。

IPv4:
  # iptables -A INPUT -p tcp -m multiport --dports 9876 -m state --state NEW -m comment --comment "100 octavia_api_haproxy ipv4" -j ACCEPT
  # iptables -A INPUT -p tcp -m multiport --dports 13876 -m state --state NEW -m comment --comment "100 octavia_api_haproxy_ssl ipv4" -j ACCEPT
  # iptables -A INPUT -p tcp -m multiport --dports 9876,13876 -m state --state NEW -m comment --comment "120 octavia_api ipv4" -j ACCEPT
IPv6:
  # ip6tables -A INPUT -p tcp -m multiport --dports 9876 -m state --state NEW -m comment --comment "100 octavia_api_haproxy ipv6" -j ACCEPT
  # ip6tables -A INPUT -p tcp -m multiport --dports 13876 -m state --state NEW -m comment --comment "100 octavia_api_haproxy_ssl ipv6" -j ACCEPT
  # ip6tables -A INPUT -p tcp -m multiport --dports 9876,13876 -m state --state NEW -m comment --comment "120 octavia_api ipv6" -j ACCEPT

重启 HAProxy:

  # docker restart haproxy-bundle-docker-0

BZ#1595363

在快速的升级过程中,用户将 undercloud 从版本 10 升级到版本 11。在某些情况下,nova-api.log 可能会报告以下错误:

意外的 API 错误。表 'nova_cell0.instances' 不存在

您可以运行以下命令来解决这个错误:

$ sudo nova-manage api_db sync

这个问题不是关键性,不应以主要的方式造成快进的升级过程。

BZ#1790653

由于 OpenStack 网络绑定端口的方式,DVR 环境中的网络实例的实时迁移可能会导致使用浮动 IP 地址的现有连接断开连接。目前,RHOSP 13 中没有临时解决方案。但是,这个问题已在 RHOSP 14 及更新的版本中解决。