Yoga 系列发布说明

12.10.0-15

新特性

  • 添加了对自定义 RabbitMQ 配置的支持。

  • CentOS Stream 8 已经不再受支持。请尝试迁移到 Rocky Linux 9。

升级说明

  • CentOS Stream 8 已经不再受支持。请尝试迁移到 Rocky Linux 9。

  • Ironic Python Agent 镜像现在默认使用 CentOS Stream 9 构建。

弃用说明

  • 弃用了对 devicemapper Docker 存储驱动程序的支持,因为该驱动程序已从 Docker Engine 25.0 中移除。将在 Caracal 16.0.0 版本中完全移除支持。使用 devicemapper 的用户应确保安装了兼容版本的 Docker Engine(即 24.x 或更低版本)。

错误修复

  • 修复了默认 Ubuntu Apt 密钥环位置,使其指向推荐的 /etc/apt/keyrings

  • 修复了影响 Ironic Python Agent 的 TLS 和 eventlet 相关问题。受影响的部署应重新构建 IPA 镜像。

  • 修复了 overcloud 服务销毁时未能移除 inspection store docker 卷的问题。请参阅 LP#2050092

12.10.0

升级说明

  • 如果管理网络未定义网关,并且 seed_enable_snatfalse(默认值),则 overcloud 主机在配置完成后将不再具有默认网关。仍然可以在主机配置步骤期间应用另一个网络上的默认网关。

  • 引入了一个新的变量 kolla_ansible_extra_custom_passwords,以避免在添加或覆盖密码时组合 kolla_ansible_default_custom_passwordskolla_ansible_custom_passwords 的需要。

错误修复

  • 修复了在 check 模式下运行时本地配置生成会被跳过的错误。这会导致 Kolla Ansible 使用过时的配置进行检查。请参阅 story 2010526 以获取详细信息。

  • 修复了使用 Ansible Vault 加密变量时 kayobe configuration dump 失败的问题。加密变量现在在 dump 输出中经过清理。

  • 通过在 seed_enable_snatfalse(默认值)时,不将 seed 主机配置为 overcloud 主机的初始默认网关,从而修复了某些环境中事实收集缓慢的问题。

  • 修复了 Kolla Ansible 变量 kolla_admin_openrc_cacert 未设置为 kolla_internal_fqdn_cacert 的值的问题。

  • 在构建 Rocky Linux overcloud 主机磁盘镜像时,添加了缺失的 disable-selinux 元素。

  • 修复了在禁用 seed SNAT 时的网关分配问题。在这种情况下,Bifrost 会生成 ConfigDrive 数据,即使管理网络上可用网关,也不会设置默认网关。

  • 修复了一个错误,当 resolv_is_managed 设置为 True 时,NetworkManager 会覆盖 resolv.conf。

  • 在确定主机是否需要引导时,我们尝试使用 ansible_user 连接到主机,如果登录失败,则我们假设主机需要引导。在之前的版本中,我们使用手动构建的 ssh 命令。这不尊重通过 Ansible 配置进行的任何 SSH 参数自定义。现在我们使用 raw 模块,以便在连接到主机时使用这些自定义。一个可能的用例是在控制主机和目标主机之间配置跳板主机。如果需要引导,主机现在将在运行结束时的摘要统计信息中显示为无法访问。可以安全地忽略此信息。

  • 修复了一个用户忘记组合 kolla_ansible_custom_passwordskolla_ansible_default_custom_passwords 和包含自定义密码的字典的问题。现在 kolla_ansible_extra_custom_passwords 应该只提供要添加到 kolla/passwords.yml 中或覆盖其中的用户自定义密码。

  • opensearch 组的主机上部署 prometheus-elasticsearch-exporter,从而解决了当 elasticsearchopensearch 组不同时无法连接到 OpenSearch 的问题。

12.9.0

新特性

  • 现在可以配置桥接接口上的生成树协议 (STP)。通过设置网络的 bridge_stp 属性来启用或禁用 STP。请注意,STP 在 Ubuntu 上默认未设置,但在 Rocky Linux 9 上被禁用,以与网络脚本兼容,因为 NetworkManager 默认在所有桥接上启用 STP。对于 CentOS Stream 8 和 Rocky Linux 8,不支持启用 STP。

  • 可以通过将 deploy_containers_registry_attempt_login 设置为 false 来跳过登录到 kolla docker 注册表的尝试。

    这对于使用在 seed 上部署的非标准注册表的部署是必需的,因为这发生在注册表登录尝试之后。

升级说明

  • 对于 Rocky Linux 9,Kayobe 现在默认禁用桥接上的 STP。此操作将在主机配置过程中导致桥接接口重新启动。

  • 添加了一个内省规则,用于更新现有 Ironic 节点中注册的部署内核的位置。在 Train 版本或更早版本上运行的部署中发现的节点可能仍在使用的内核是 ipa.vmlinuz,该内核在更新部署镜像时不会更改。如果仅使用默认内省规则,现有节点可能会从 Bifrost 容器使用以下命令进行更新

    OS_CLOUD=bifrost baremetal introspection reprocess $NODE_UUID_OR_NAME

    如果使用非默认规则,则重新处理可能会撤消操作员所做的任何自定义。在这种情况下,更谨慎的方法是手动更新部署内核位置

    OS_CLOUD=bifrost baremetal node set --driver-info deploy_kernel=<http://url/to/ipa.kernel> $NODE_UUID_OR_NAME

    如果 kolla_bifrost_inspector_rules 列表已自定义,则应将 inspector_rule_legacy_deploy_kernel 规则添加到其中。

错误修复

  • 修复了在重新部署 Bifrost 后无法运行 kayobe overcloud deprovision 的问题。

  • 通过防止不必要的 Ironic API 请求,提高了 Bifrost 操作的性能。

  • 修复了使用最新 pip 进行可编辑安装时检测数据文件路径的问题。

  • 修复了在 CentOS / Rocky 上应用网络配置时的回归问题。

  • 通过将 docker login 函数添加到 kayobe deploy-containers 角色,解决了种子容器无法使用密码保护的 registry 的问题。

  • 添加了一个解决方法,以避免 NetworkManager 将桥接 VLAN 接口的 MTU 设置为不正确的值。

  • 通过将 MichaelRigart.interfaces 角色升级到版本 1.14.4,修复了 cloud-init 生成的 nmconnection 文件与 Kayobe 生成的文件之间的冲突。

12.8.0

新特性

  • 添加了对自定义 Multipathd 配置的支持。

  • 添加了对 Rocky Linux 9 作为主机操作系统和基本容器镜像的支持。

  • 添加了使用 systemd-networkd 配置任意命名的 VLAN 接口的支持。有关详细信息,请参阅 story 2010266

  • 由于 Kolla 容器可以使用用户提供的 repos.yaml 构建,Kayobe 可以使用自己的内容覆盖该文件。覆盖文件可以是 ${KAYOBE_CONFIG_PATH}/kolla/repos.yaml(默认 Kolla 文件名)或 ${KAYOBE_CONFIG_PATH}/kolla/repos.yml。支持多种环境。

升级说明

  • 添加了 OpenSearch 支持。

  • kolla_ansible_venv_python 的默认值修改为 /usr/bin/python3。使用操作系统 python 创建 kolla-ansible venv 可以修复在使用旧 venv 使用 virtualenv 命令时出现的一些边缘情况。

错误修复

  • 修复了从 Ansible Galaxy 下载 roles 时的问题,原因是 mrlesmithjr.manage_lvm role 的名称更改。 LP#2023502

  • 修复了一个问题,即如果包含该文件的目录不存在,Kolla Ansible 的 passwords.yml 生成可能会失败。这在多环境设置中,创建新环境时很常见。有关详细信息,请参阅 story 2010293

  • 修复了 Ubuntu 上 systemd-networkd 配置中存在的问题,该问题在使用多个 VLAN 接口时出现。有关详细信息,请参阅 story 2009013

  • 修复了 Rocky Linux 9 中的仓库文件名。发行版移至 RHEL 9 发布后使用小写名称。

  • 修复了在 Rocky 9 主机上应用网络配置时遇到的各种问题。请参阅错误: 和 。

  • 在 check 模式下使用 Ansible 时,安装了 ncclient 依赖项,用于 Juniper 交换机配置。

12.7.0

新特性

  • 添加了对 Ubuntu Jammy Jellyfish (22.04) LTS 作为 seed、seed hypervisor 和 overcloud 主机操作系统支持。

12.6.0

错误修复

  • 添加了缺失的 Ansible 组,以支持 Kolla Ansible 中转发 Prometheus 警报到 Microsoft Teams 的支持。

  • 修复了在存在未加密文件但已提供密码时生成 passwords.yml 时出现的错误。

12.5.0

新特性

  • 将基础 CentOS Stream 8 云镜像更新为 CentOS-Stream-GenericCloud-8-20220913.0.x86_64。

12.4.0

错误修复

  • 修复了 nclu-switch 命令排序问题,当先将描述应用于不存在(虚拟)接口时出现。有关详细信息,请参阅 story 2010279

12.3.0

升级说明

  • 更新了 Rocky Linux 8 基本云镜像为 Rocky-8-GenericCloud.latest.x86_64.qcow2

错误修复

  • 修复了一个问题,在使用 become_user 的自定义 playbook 在设置临时文件权限时可能会失败。现在,acl 包默认安装在所有系统上。

12.2.0

错误修复

  • 修复了未定义 kolla_enable_hacluster 变量的问题。

12.1.0

错误修复

  • 修复了在启用服务时未构建 hacluster 镜像的问题。

  • 修复了 Kayobe 中定义的 MTU 未应用于 Neutron 中 Ironic 置备和清理网络的问题。

12.0.0

新特性

  • 添加了对基于 EFI 和 LVM 的 overcloud 镜像的依赖项。

  • 添加了对自定义 Placement 配置的支持。

  • 添加了对自定义 Horizon 主题的支持。

  • 添加了一个新的变量 kolla_bifrost_deploy_image_rootfs,用于设置根文件系统的 UUID。当使用基于软件 RAID 的根磁盘设备部署 overcloud 主机时,此功能很有用。

  • 添加了 kolla_ansible_venv_ansible 配置选项。此选项允许您覆盖 kolla-ansible 虚拟环境中安装的 ansible 版本。

  • 添加了对 Ubuntu 系统上 /etc/apt/apt.conf.d/ 中的 Apt 全局配置选项的支持。请参阅 以获取详细信息。

  • 添加了对 Ubuntu 主机上 Apt 仓库配置的支持。请参阅 以获取详细信息。

  • 添加了 bonding 802.3ad 聚合选择选项。

  • 添加了使用 DIB 直接构建 overcloud 根磁盘镜像的支持,而不是通过 Bifrost 构建。这包括支持构建多个镜像,每个镜像具有不同的配置。请参阅 以获取详细信息。

  • 添加了对 dnf_custom_repos 中列出的仓库中的 state 参数的支持。

  • 默认情况下启用硬件时钟 (RTC) 同步,应用 chrony role 时。可以使用新的变量 chrony_rtcsync_enabled 配置此设置。

  • 通过添加用于 kayobe * host configurekayobe * host upgrade 命令的顶级 playbook,改进了错误处理。 这确保了在主机配置命令期间,如果某个主机失败,其他主机能够继续完成。 这在大型规模部署中很有用,因为主机故障发生的频率更高。 详情请参阅 story 2009854

  • 添加了通过 DHCP 中继检查 L3 路由的 Ironic 网络的支持。

  • 新的过滤器 net_no_ip 添加了属性 no_ip,可以设置为 true 以跳过特定网络的 IP 地址分配和配置。

  • 添加了在主机上运行 libvirt daemon 的支持,而不是在容器中运行。 这通过将 kolla_enable_nova_libvirt_container 设置为 false 来完成。 详情请参阅 story 2009858

  • 添加了使用 http_proxyhttps_proxyno_proxy 变量在 proxy.yml 中配置 HTTP(S) 代理设置的支持。 这些变量会传递给 Kolla Ansible,Kolla Ansible 使用它们来配置 Docker,从而允许容器镜像拉取操作和容器网络使用 HTTP(S) 代理。

  • 添加了一个新变量 seed_hypervisor_enable_snat,允许用户在 seed hypervisor 上启用 SNAT 服务。 默认值为 false

  • 添加了对 Rocky Linux 8 作为宿主机操作系统分发的支持。

  • 添加了对使用以下现有命令在 Ubuntu 主机上运行软件包更新的支持

    • kayobe seed host package update --packages <packages>

    • kayobe seed hypervisor host package update --packages <packages>

    • kayobe infra vm host package update --packages <packages>

    • kayobe overcloud host package update --packages <packages>

  • 将基础 CentOS Stream 云镜像更新到 CentOS-Stream-GenericCloud-8-20210603.0.x86_64。

  • 添加了对在 dnf.yml 中使用 dnf_custom_repos 配置的自定义 DNF 仓库中的 excludeincludepkgs 选项的支持。 有关用法,请参阅 yum_repository Ansible 模块的文档

升级说明

  • 将 Ansible 的最大支持版本从 4.x (ansible-core 2.11) 升级到 5.x (ansible-core 2.12)。 最小支持版本从 2.10 升级到 4.x。 这适用于 Kayobe 和 Kolla Ansible。 请注意,使用 Python 3.7 或更低版本(例如 CentOS Stream 8)的环境将限制为 Ansible 4.x (ansible-core 2.11)。

  • 已知直接从 Ansible 2.10 升级到 Ansible 4 或更高版本会导致问题。 在升级 Kayobe 虚拟环境之前,应卸载 ansibleansible-base

    pip uninstall ansible ansible-base
    
  • 变量 dnf_install_epel 的默认值已更改为 false。 这意味着 EPEL DNF 仓库不再默认安装。 现有的 EPEL 仓库或 epel-release 包不会被删除。 如果需要,可以通过在 dnf.yml 中将 dnf_install_epel 设置为 true 来启用 EPEL。 详情请参阅 story 2009757

  • 移除了对部署 vmtp 的支持,因为它已被从 Kolla 中移除。

  • 从 Yoga 开始,Ironic 已将默认 PXE 从纯 PXE 更改为 iPXE。 Kayobe 遵循此上游决策,但允许用户恢复到以前的纯 PXE 默认设置。 有关详细信息,请参阅 Kolla Ansible 的文档。

  • 变量 kolla_tls_cert 在 Train 版本中已被弃用,现已移除。 请改用 kolla_external_tls_cert

安全问题

  • 修复了一个问题,即 kolla_ansible_custom_passwords 中的任何密码在 Ansible 日志中被暴露。在使用详细程度级别 3 (-vvv) 时,它们也在 Ansible 输出中被暴露。

错误修复

  • 通过 Bifrost 进行的 Ironic 检查现在即使使用 DHCP-relay 也能工作。 dnsmasq.conf 中的 dhcp-range 已使用网络掩码正确配置。

  • 在生产环境中,provision 网络可能与其它网络分离,因此在这种情况下,如果希望 Bifrost 的 DHCP 服务为客户端提供正确的网关,则应使用 inspection_gateway 代替 provision 网络的 gateway 属性。这还可以避免在单个主机上配置多个 IP 网关,从而导致不可预测的结果。

  • 修复了在启用服务时未构建 Neutron SR-IOV 代理镜像的问题。

  • 修复了本地 Kolla Ansible 配置生成的幂等性问题。

  • 修复了当 admin 网络为 VLAN 时,seed 的 configdrive 生成问题。有关详细信息,请参阅 story 2008089

  • 启用 Grafana 的部署,当启用 Monasca 时,作为已退役的 monasca-grafana 镜像的替代品。有关详细信息,请参阅 story 2009717

  • 修复了在使用 --check 参数与 kayobe overcloud host configure 一起使用时出现的一些问题。 详情请参阅 story 2004798

  • public-openrc.sh 现在仅在由 Kolla Ansible 生成的 admin-openrc.sh 文件存在时才生成。这修复了一个问题,即在干净的环境中运行时,如果 Kolla Ansible 标签不包括 admin-openrc.sh 的生成,则任务会失败。有关详细信息,请参阅 story 2009323

  • 修复了使用 Kayobe 和 Kolla Ansible 相同的组名进行自定义组映射的 Ansible 目录生成问题。有关详细信息,请参阅 story 2009927

  • kayobe overcloud database 开头的命令现在生成登录到运行数据库的节点的 kolla 配置。

  • 修复了在使用未标记接口时,infrastructure 和 seed VM 的 configdrive 生成问题。此问题的症状是 kayobe 无法登录到实例。如果检查 libvirt 控制台日志,您将看到 KeyError: 'vlan_link'。有关详细信息,请参阅 story 2009910

  • 修复了一个检测 Kayobe 安装前缀失败的问题,当安装路径中多次出现 lib 时。有关详细信息,请参阅 story 2009721

  • 修复了 IPA 镜像构建问题,该问题使用了 ironic-python-agentmaster 分支,即使在 Kayobe 的稳定版本上,或显式设置 ipa_build_source_version 时也是如此。

  • 修复了在使用 Jinja2 3.1.0 时出现的问题。

  • 修复了一个问题,即 kolla_ansible_custom_passwords 中的任何密码在 Ansible 日志中被暴露。在使用详细程度级别 3 (-vvv) 时,它们也在 Ansible 输出中被暴露。

  • 修复了一个问题,即 patch 链接可能会错误地在不在 overcloud 组中的主机上创建。有关详细信息,请参阅 Story 2009911

  • 部署镜像 (IPA) 构建不再使用 upper-constraints 的 master 版本。相反,它默认使用与 Kayobe 版本关联的 OpenStack 发行版约束。有关详细信息,请参阅 story 2009810

  • 修复了通过升级 stackhpc.drac role 到版本 1.1.6 运行 kayobe overcloud bios raid configure 失败的问题。

  • 修复了一个问题,即缓存的 seed VM 镜像不必要地由 root 拥有。 详情请参阅 story 2009277

  • 修复了找不到 NTP 服务时的屏蔽问题。有关详细信息,请参阅 story 2009821