4.5. RHBA-2018:2574 - openstack director 程序错误修复公告
本节中所包括的错误已在 RHBA-2018:2574 公告中解决。有关此公告的详情请点击以下链接 :https://access.redhat.com/errata/RHBA-2018:2574
instack-undercloud
- BZ#1572257
当 overcloud 处于 Failed 状态时,Red Hat OpenStack undercloud 升级会失败。当尝试迁移 overcloud 堆栈以便在升级过程的 post-configuration 步骤中使用聚合架构时,它会失败并带有 cryptic 错误。现在,它会失败,且不允许 undercloud 升级继续进行。用户在 undercloud 升级开始时收到错误。用户必须确保 overcloud 处于 *_COMPLETE 状态,然后才能进行 undercloud 升级。
- BZ#1584666
在以前的版本中,当参数 local_mtu 设置为 1900 且在 undercloud.conf 中指定时,undercloud 安装会失败。如果 local_mtu 的值大于 1500,undercloud 安装会失败。将 global_physnet_mtu 设置为 local_mtu。当 local_mtu 的值大于 1500 时,undercloud 安装成功。
- BZ#1608173
有时,在安装过程中启用了 SSL 的 undercloud 失败,并显示以下错误: ERROR: epmd 错误。发生故障的原因是,Keepalived 在 rabbitmq 之后由 keepalived 配置与主机名匹配的 VIP。确保在 rabbitmq 之前配置 keepalived。这可防止 undercloud 安装失败。
openstack-tripleo
- BZ#1601472
为 DPDK 和 SR-IOV 环境重新测试和更新了从 RHOSP 10 升级到带有 NFV 的 RHOSP 13 的步骤。
openstack-tripleo-common
- BZ#1594279
'openstack undercloud backup' 命令没有捕获扩展属性。这会导致 undercloud Swift 存储对象的元数据丢失,从而使它们无法使用。在这个版本中,在创建备份存档时添加了 '--xattrs' 标志。undercloud Swift 存储对象现在在备份过程中保留其扩展属性。
- BZ#1596763
当 undercloud 从 instackenv.json 文件中导入裸机节点且配置了 UCS 驱动程序时,ironic 节点只在 pm_service_profile
(或 ucs_service_profile
)字段超过 ironic 配置中。这会导致只有一个这样的 ironic 节点在 ironic 配置中结束。对 openstack-tripleo-common 的更新可确保只有 pm_service_profile
(或 ucs_service_profile
)字段的 ironic 节点仍然被视为不同。所有仅在 pm_service_profile
或 ucs_service_profile
字段中不同的 ironic 节点都可以导入 ironic。
- BZ#1574349
在部署 overcloud 之前,可以自动为集群创建 stonith 资源。在开始部署前,运行以下命令:openstack overcloud generate fencing --ipmi-lanplus --output /home/stack/fencing.yaml /home/stack/instackenv.json
然后,将 '-e /home/stack/fencing.yaml' 传递给 deploy 命令的参数列表。这会自动为集群创建所需的 stonith 资源。
- BZ#1575623
Derived 参数工作流现在支持使用 SchedulerHints 来识别 overcloud 节点。在以前的版本中,工作流无法使用 SchedulerHints 来识别与对应的 TripleO overcloud 角色关联的 overcloud 节点。这会导致 overcloud 部署失败。SchedulerHints 支持会阻止这些失败。
- BZ#1577853
OpenDaylight 的 docker 状况检查确保了在 OpenDaylight 中仅 REST 接口和 neutron NB 组件处于健康状态。状况检查不包括所有载入的 OpenDaylight 组件,因此并不准确。使用带有 docker healthcheck 的 diagstatus URI 检查所有载入的 OpenDaylight 组件。OpenDaylight Docker 容器健康状态现在更为准确。
openstack-tripleo-heat-templates
- BZ#1597379
manila-share 服务容器无法从控制器主机 bind-mount PKI 信任存储。因此,使用 SSL 无法加密来自 manila-share 服务到存储后端的连接。将 PKI 信任存储从控制器主机绑定挂载到 manila-share 服务容器中。现在,可以使用 SSL 加密来自 manila-share 服务到存储后端的连接。
- BZ#1597541
libvirtd live-migration 端口范围的更改可防止实时迁移失败。在以前的版本中,libvirtd live-migration 使用端口 49152 到 49215,如 qemu.conf 文件中指定。在 Linux 上,这个范围是临时端口范围 32768 到 61000 的子集。临时范围内的任何端口也可供任何其他服务使用。因此,实时迁移失败并显示错误:实时迁移失败:内部错误:无法找到范围 'migration'(49152-49215)未使用的端口。新的 libvirtd live-migration 范围 61152-61215 不在临时范围内。相关的故障不再发生。
- BZ#1500594
在以前的版本中,当从 overcloud 节点中删除 ceph-osd
软件包时,不会删除对应的 Ceph 产品密钥。因此,subscription-manager
会错误地报告 ceph-osd
软件包仍然已安装。处理 ceph-osd
软件包移除的脚本现在也会移除对应的 Ceph 产品密钥。删除 ceph-osd
软件包和产品密钥的脚本仅在 overcloud 更新过程中执行。因此,subscription-manager 列表
不再报告安装了 Ceph OSD。
- BZ#1549770
容器现在是默认的部署方法。仍有一种在 environments/baremetal-services.yaml 中部署 baremetal 服务的方法,但预计最终会消失。
引用环境/服务 docker 的资源 registry 的环境文件必须改为环境/服务路径。如果您需要保留任何已部署的裸机服务,请更新对环境/服务裸机的引用,而不是原始的放置环境/服务。
- BZ#1598469
在以前的版本中,缺少为 Sahara 支持 Fast Forward Upgrade 路径的代码。因此,在从 10 升级到 13 后,不需要的所有更改都应用到 Sahara 服务。在这个版本中,这个问题已解决,在 Fast Forward Upgrade 后 Sahara 服务可以正常工作。
- BZ#1565028
README 已添加到 /var/log/opendaylight 中,表示正确的 OpenDaylight 日志路径。
- BZ#1567511
在 CephFS-NFS 驱动程序部署中,由 CephFS 支持的 NFS-Ganesha 服务器,执行由 libcephfs 客户端执行的 dentry、node 和 属性缓存。NFS-Ganesha 服务器的冗余缓存会导致内存占用量过大。它还会影响缓存一致性。关闭 NFS-Ganesha 服务器的索引节点、目录项和属性缓存。这可减少 NFS-Ganesha 服务器的内存占用量。缓存一致性问题会较小。
- BZ#1567893
tripleo 的 capabilities-map.yaml 会在不正确的文件位置引用 Cinder 的 Netapp 后端。UI 使用 capabilities 映射,且无法访问 Cinder 的 Netapp 配置文件。capabilities-map.yaml 已被更新,用于指定 Cinder 的 Netapp 配置的正确位置。Cinder Netapp 后端功能的 UI 的属性选项卡可以正常工作。
- BZ#1574787
Dell-EMC 存储系统(VNX、单元和 VMAX)的 Manila 配置清单带有不正确的配置选项。因此,使用 Dell Storage 系统的 overcloud 部署 manila-share 服务会失败。现在,Dell-EMC 存储系统的 Manila 配置清单(VNX、单元和 VMAX)已被修复。使用 Dell 存储系统的 manila-share 服务的 overcloud 部署成功完成。
- BZ#1584762
如果在 undercloud 上手动启用 Telemetry,则 hardware.*
指标不起作用,因为每个节点上的防火墙错误配置也无法正常工作。作为临时解决方案,您需要为 undercloud 部署添加额外的模板,使用 control plane 网络手动设置 snmpd
子网,如下所示: parameter_defaults: SnmpdIpSubnet: 192.168.24.0/24
- BZ#1589661
在非常罕见的发生时,从容器中出现以下错误日志失败: standard_init_linux.go:178: exec user 进程会导致 "text file busy"。为避免争用并避免部署失败,请不要同时尝试多次写入 docker-puppet.sh 文件。
- BZ#1590602
当将参数 KernelDisableIPv6 设置为 true 来禁用 ipv6 时,部署会失败并显示 rabbitmq 错误,因为 Erlang Port Mapper Daemon 需要至少环回接口支持 IPv6 来正确初始化。要确保在禁用 ipv6 时部署成功,请不要在回环接口上禁用 IPv6。
- BZ#1597665
Docker 使用 journald 后端根据大小滚动日志。这会导致删除一些旧的 OpenDaylight 日志。这个问题已通过移至文件而不是控制台(日志大小)和滚动(滚动)由 OpenDaylight 进行管理,从而解决了这个问题。因此,旧的日志会比以前较长的时间会被保留。
- BZ#1542493
如果您将非标准端口用于 RabbitMQ 实例进行监控,则 sensu-client 容器会报告不健康的状态,因为不会反映容器健康检查中的端口值。端口值现在显示在容器健康检查中。
- BZ#1564519
修正了清除已删除的数据库记录的默认年龄,以便从 Cinder 数据库清除已删除的记录。在以前的版本中,Cinder 的清除 cron 作业的 CinderCronDbPurgeAge 值使用错误,并且删除的记录在到达所需的默认年龄时不会从 Cinder 的 DB 中清除。
- BZ#1569515
OSP 13 中的 TripleO Heat 模板中的 single-nic-vlans
网络模板包含 Ceph 节点的错误网桥名称。如果先前部署中使用了 single-nic-vlans 模板,在 Ceph 节点上,升级到 OSP 13 会失败。网桥名称 br-storage
现在用于 single-nic-vlans 模板的 Ceph 节点上,它与上一版本的网桥名称匹配。现在,在使用 single-nic-vlans 模板的环境上升级到 OSP 13 现已在 Ceph 节点上成功。
- 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_map.j2.yaml 中找到默认值。在以后的 OSP-13 版本中将不需要修改 ServiceNetMap。
- BZ#1576627
yaml-nic-config-2-script.py required interactive user input.对于自动化目的,无法以非互动的方式调用该脚本。现在,添加了一个 --yes 选项。yaml-nic-config-2-script.py 现在可以使用 --yes 选项调用,用户也不会要求提供交互式输入。
- BZ#1593882
在以前的版本中,在环境文件中 fixed-ips-v6.yaml 的 Redis VIP 端口的设置中包括 tripleo-heat-templates 的一些版本。如果在 network-isolation-v6.yaml 后,如果部署命令行中包含 fixed-ips-v6.yaml 文件,则 Redis 服务被放置在 Control Plane 网络中,而不是正确的 IPv6 网络。在这个版本中,文件 environments/fixed-ips-v6.yaml 包含对 network/ports/vip_v6.yaml 的正确引用,而不是 network/ports/vip.yaml。fixedips-v6.yaml 环境文件包含正确的资源 registry 条目,无论包含的环境文件的顺序如何,都将使用 IPv6 地址创建 Redis VIP。
- BZ#1594910
当 Cinder 服务从主机上运行迁移到在容器中运行时,tripleo 的 BlockStorage 角色不会被更新。在 BlockStorage 主机上部署的 cinder-volume 服务。BlockStorage 角色已更新,以在容器中部署 cinder-volume 服务。cinder-volume 服务在容器中正确运行。
- BZ#1599329
具有 Manila 配置更改的 overcloud 更新无法将这些更改部署到容器化 Manila 共享服务。在这个版本中,更改部署会成功。
- BZ#1603538
使用 /var/lib/nova/instances 的共享存储(如 nfs),重启任何计算节点上的 nova_compute 会导致实例虚拟磁盘和 console.log 实例更改。因此,实例将无法访问其虚拟磁盘和停止工作。改进了修改 /var/lib/nova/instances 中的实例文件所有权的脚本。现在,在重启 nova 计算时,无法访问实例文件。
- BZ#1612342
用于部署 Cinder 的 Netapp 后端的 TripleO 环境文件已过时,其中包含了不正确的数据。这会导致 overcloud 部署失败。Cinder Netapp 环境文件已更新,现在正确。现在,您可以使用 Cinder Netapp 后端部署 overcloud。
- BZ#1573787
在以前的版本中,libvirtd live-migration 使用端口 49152 到 49215,如 qemu.conf 文件中指定。在 Linux 上,这个范围是临时端口范围 32768 到 61000 的子集。临时范围内的任何端口也可供任何其他服务使用。因此,实时迁移失败并显示错误:实时迁移失败:内部错误:无法找到范围 'migration'(49152-49215)未使用的端口。新的 libvirtd live-migration 范围为 61152 到 61215。不在临时范围内。
- BZ#1576572
在以前的版本中,如果 nic 配置模板包含空行,后跟以逗号开头的行,则 yaml-nic-config-2-script.py 不会重置下行的开始列。脚本转换的 nic 配置模板无效,并导致部署失败。在这个版本中,当检测到空白行时,脚本可以正确地设置列的值。带有空白行的脚本(后面带有逗号的行)将正确转换。
puppet-nova
- BZ#1579691
Nova 的 libvirt 驱动程序现在允许在配置 CPU 模型时指定粒度 CPU 功能标志。其中一个好处是,在应用程序"Meltdown" CVE 修复后,在具有特定基于 Intel 的虚拟 CPU 型号运行的客户机中,性能降级存在的一个好处。通过将 CPU 功能标记("Process-Context ID")公开给 客户机 CPU 来降低此客户机 性能影响,假设 PCID 标志可在物理硬件本身中可用。这个更改删除了只有 'PCID' 作为唯一 CPU 功能标记的限制,并允许添加和删除多个 CPU 标记,从而对其他用例进行修改。如需更多信息,请参阅 nova.conf
中的 [libvirt]/cpu_model_extra_flags
的文档。
puppet-opendaylight
- BZ#1599805
OpenDaylight 定期轮询 OpenFlow (OF)统计数据。这些统计数据当前没有被使用。这会影响 OpenDaylight 性能。您可以禁用 OF 统计的轮询来提高 OpenDaylight 性能。
puppet-tripleo
- BZ#1598038
实例 HA 部署因为竞争条件而失败,生成错误:error: unable to get cib。竞争结果是 Pacemaker 集群完全启动前在计算节点上设置的 pacemaker 属性结果,因此会失败并显示 'unable to get cib' 错误。在这个版本中,在使用 IHA 时,部署不会出现任何错误。
- BZ#1564654
在以前的版本中,如果您在堆栈名称中使用大写字母,部署会失败。在这个版本中,确保了带有大写字母的堆栈名称会导致部署成功。特别是,容器中的 bootstrap_host 脚本现在可将字符串转换为小写,而 pacemaker 属性也是如此。
- BZ#1570039
添加了容器化 logrotate 服务的压缩选项,以压缩轮转的日志。delaycompress 选项可确保第一次轮转日志文件保持未压缩。
- BZ#1601497
在以前的版本中,为 Cinder 的 Netapp 后端配置空字符串值会导致 Cinder 驱动程序无效的配置,从而导致 Cinder 的 Netapp 后端驱动程序在初始化过程中失败。在这个版本中,弃用的 Netapp 参数的空字符串值转换为有效的 Netapp 驱动程序配置。因此,Cinder 的 Netapp 后端驱动程序可以成功初始化。
- BZ#1590952
在以前的版本中,Cinder Netapp 后端忽略了 CinderNetappNfsMountOptions TripleO Heat 参数,该参数阻止通过 TripleO Heat 参数配置 Netapp NFS 挂载选项。负责处理 Cinder 的 Netapp 配置的代码不再忽略 CinderNetappNfsMountOptions 参数。CinderNetappNfsMountOptions 参数可以正确地配置 Cinder 的 Netapp NFS 挂载选项。
- BZ#1599409
在版本升级过程中,Cinder 的数据库备份现在仅在 bootstrap 节点上执行。这可防止在所有 Controller 节点上执行数据库同步和升级失败。