Ussuri 系列发布说明

8.2.0-4

新特性

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

错误修复

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

8.2.0

新特性

  • 添加了对通过 kayobe_ansible_setup_filterkayobe_ansible_setup_gather_subset 通过 setup 模块的 filtergather_subset 参数进行配置的支持。这些可用于减少事实数量,这会对 Ansible 的性能产生重大影响。

  • 添加了一个新命令 kayobe overcloud facts gather,用于收集 overcloud 主机的 Ansible 事实。这可能对填充事实缓存有用。

  • 添加了对在 dnf.yml 中使用 dnf_custom_repos 配置的自定义 DNF 仓库中 metalink 选项的支持。

升级说明

  • 更新了 Kayobe 中 Ansible 事实的 所有引用,从使用单个事实变量到使用 ansible_facts 字典中的项目。这允许用户在 Ansible 配置中禁用 事实变量注入,这可能会提高性能。检查本地配置文件中引用的事实,并在禁用事实变量注入之前更新为使用 ansible_facts

  • 删除了对某些 CentOS 7 镜像中错误名称服务器条目的解决方法,以及 overcloud_host_image_workaround_resolv_enabled 变量。

错误修复

  • 在 Ironic 检查器规则设置节点名称时,从接口 LLDP 交换机端口描述中过滤掉 25 千兆以太网接口名称。

8.1.1

新特性

  • 添加了变量 ipa_build_upper_constraints_file,用于选择用于在用于构建 IPA 镜像的虚拟环境中安装 diskimage-builder 的 upper constraints 文件。这允许您安装比默认约束允许的更新版本。

  • 将 seed VM 的默认镜像更新为 CentOS 8.3。

升级说明

  • stackhpc.os-images 角色更新到版本 1.10.2,以兼容 Victoria 上限约束安装的 diskimage-builder 版本。您必须运行 kayobe control host upgrade 以更新此角色,以便成功构建 IPA 镜像。

错误修复

  • 修复了在使用包含逗号的主机模式的 --limit 参数时的问题。有关详细信息,请参阅 story 2008255

  • 修复了未使用 venv 时的 Python 设置问题。有关详细信息,请参阅 story 2008378

  • 修复了在重新启动主机以禁用 selinux 时,未尊重自定义 SSH 参数(例如设置 ansible_ssh_extra_args)的问题。

  • 修复了对包含特殊字符(例如 ~&)的 --kolla-limit 参数的 kolla-ansible 的调用。

  • 修复了复制 Swift 环文件的问题。有关详细信息,请参阅 story 2007297

  • 修复了删除 Swift 环临时文件的问题。有关详细信息,请参阅 story 2008354

  • 修复了 CentOS 8.3 版本上的 kayobe seed service deploy 命令的问题。有关详细信息,请参阅 story 2008430

  • 通过使用 Victoria 上限约束安装更新版本的 diskimage-builder 到用于构建 IPA 镜像的虚拟环境中,修复了使用最新版本的 ironic-python-agent-builder 构建部署镜像(IPA)的问题。这可以使用 ipa_build_upper_constraints_file 变量在 ${KAYOBE_CONFIG_PATH}/ipa.yml 中进行更改。

8.1.0

新特性

  • 将 seed VM 的默认镜像更新为 CentOS 8.2。

升级说明

  • Kayobe 配置 Bifrost 使用 firewalldtrusted 区域,确保在 seed 主机上运行的所有服务都可以访问。具有更严格防火墙策略的部署可以选择另一个区域,方法是在 ${KAYOBE_CONFIG_PATH}/bifrost.yml 中设置 kolla_bifrost_firewalld_internal_zone 变量。为了避免失去与 seed 主机的连接,请确保在部署 seed 服务之前,seed 主机上已经配置了 firewalld

错误修复

  • 添加了对自定义 Barbican 配置文件 (barbican.conf) 的支持,因为仅支持存储在 barbican 文件夹下的扩展配置。

  • 修复了在使用共享配置和管理网络部署 seed 服务后,失去与 seed 主机连接的问题。这是因为 Bifrost 配置 firewalld 仅允许 Ironic 流量。Kayobe 现在配置 Bifrost 使用 trusted 区域,该区域允许所有流量。

  • 修复了在设置 dnf 代理且 host configure 期间 python3-pip 包失败时的问题。

  • 修复了在使用 CentOS 8.3 上使用 Kayobe 的许多问题。

  • 修复了在配置没有 IP 地址的网络接口时的问题。有关详细信息,请参阅 story 2007900

  • 修复了在使用没有本地镜像的 pip 代理时生成 pip 配置的问题。

  • 更改了 OS_ENDPOINT_TYPEOS_MANILA_ENDPOINT_TYPEOS_MISTRAL_ENDPOINT_TYPEpublic-openrc.sh 中的值,以使用 publicURL,这应该可以修复在无法访问内部 API 的主机上旧版 CLI 工具的问题。有关详细信息,请参阅 story 2007950

  • 删除了不需要的 ifcfg-eth0 网络接口配置文件,使用了新的 MichaelRigaert.interfaces Ansible role。此文件随 CentOS 8 云镜像一起提供,并且可以在没有 eth0 接口存在或正在配置时阻止 network 服务成功启动。有关详细信息,请参阅 story 2007913

  • 修复了 kayobe seed hypervisor host package update 命令的实现,该命令不完整。有关详细信息,请参阅 story 2008458

  • 修复了 seed 服务部署中修改 overcloud 镜像在 CentOS 8.1 主机上使用 CentOS 8.2 bifrost_deploy 容器时失败的问题,方法是将 seed VM 的默认镜像更新为 CentOS 8.2。有关详细信息,请参阅 story 2007942

8.0.0

序言

Kayobe 8.0.0 版本是 Ussuri 周期中的第一个版本。值得注意的变化包括

  • 所有 playbook 和脚本现在使用 Python 3,并且已放弃对 Python 2 的支持

  • CentOS 8 现在支持作为主机操作系统和容器镜像,并且已放弃对 CentOS 7 的支持

  • 支持在 Kayobe 命令之前和之后运行自定义 playbook

  • 已放弃 Ceph 部署支持

新特性

  • 添加了一种实验机制,可以自动在 kayobe 命令之前和之后运行自定义 playbook。有关更多详细信息,请参阅文档中的 自定义 Ansible Playbook 部分。

  • 为 Monasca 提供项目和域的默认变量。可以从 Monasca 配置文件 ${KAYOBE_CONFIG_PATH}/monasca.yml 中覆盖默认值。

  • 添加了一个 kayobe overcloud service stop 命令。这可用于停止在 overcloud 主机上运行的容器化服务。

  • 添加了变量 docker_registry_datadir_volume。这允许您配置用于 docker 注册表的 docker 卷的名称或路径。

  • 添加了对 CentOS 8 作为主机操作系统和基本容器镜像的支持。 这是从 Ussuri 版本开始支持的 CentOS 的唯一主要版本。 Train 版本支持 CentOS 7 和 8 主机,并提供迁移路线。

  • 添加了通过 Kayobe 配置提供自定义 Ansible 配置文件支持。对于 Kayobe,该文件应位于 ${KAYOBE_CONFIG_PATH}/ansible.cfg。对于 Kolla Ansible,它可以位于 ${KAYOBE_CONFIG_PATH}/kolla/ansible.cfg${KAYOBE_CONFIG_PATH}/ansible.cfg。通过 ANSIBLE_CONFIG 环境变量指定的 文件会覆盖这些。

  • 添加了通过 ${KAYOBE_CONFIG_PATH}/kolla/certificates/ 向 Kolla Ansible 传递自定义 TLS 证书的支持。有关详细信息,请参阅 story 2007679

  • 已向 Kayobe 添加一项新功能,用于部署带有预和后脚本的用户定义容器。

  • 添加了对在 CentOS 8 上配置 DNF 存储库的支持。已在新的配置文件 dnf.yml 中添加了变量。提供与 Yum 配置变量的向后兼容性。

  • 添加了对通过 DNF Automatic 在 CentOS 8 上应用常规软件包更新的支持。已在新的配置文件 dnf.yml 中添加了变量。提供与 Yum-cron 配置变量的向后兼容性。

  • 添加了一个 seed_vm_interfaces 变量,该变量定义了 seed VM 附加到的网络接口。

  • 添加了一个新变量 kolla_enable_openstack_core,可以将其设置为默认值,以确定是否启用默认 OpenStack 服务。这包括 Glance、Heat、Horizon、Ironic、Keystone、Neutron 和 Nova。默认值为 true

  • 添加了一个变量,用于控制应用于构建容器镜像的标签 - kolla_tag。这分离了用于镜像构建的标签的配置与用于部署的标签 (kolla_openstack_release) 的配置。 kolla_tag 的默认值为 kolla_openstack_release

  • 添加了使用 dm-crypt 配置加密块设备的支持。在 LVM 配置之后和软件 RAID 之后应用加密,从而可以在加密块设备之上创建 LVM 卷。有关详细信息,请参阅 story 2007555

  • 引入了一个新选项 - pip_proxy - 用于配置通过用户定义的 http(s) 代理安装 Pip 包。这按用户设置,默认情况下,与 pip_local_mirror 功能相同的用户。

  • 添加了将 Open vSwitch 提供程序桥接直接连接到以太网接口的支持。以前需要定义一个 Linux 桥接,Kayobe 会将虚拟以太网对连接到该桥接。直接连接可以提供更高的性能,或允许额外的硬件卸载。有关详细信息,请参阅 story 2007364

已知问题

  • 修复了一个问题,即默认检查器规则设置来自 Ruckus 交换机端口描述符的节点名称将无法过滤 Ruckus 交换机上的接口名称。

  • 修复了在 Ansible 控制主机和 seed hypervisor 是不同主机时,配置 seed VM 失败的问题。有关更多详细信息,请参阅 story 2007530

升级说明

  • 将 Ansible 的最低支持版本从 2.6 升级到 2.8,最高支持版本从 2.8 升级到 2.9。这适用于 Kayobe 和 Kolla Ansible。

  • 避免使用 setup 模块进行不必要的 fact 收集。这应该可以提高使用 fact 缓存和 Ansible smart fact 收集策略的环境的性能。有关详细信息,请参阅 story 2007492

  • Kayobe 在 kayobe seed host configurekayobe overcloud host configure 任务期间使用 kolla-ansible bootstrap-servers 命令。在以前的版本中,它以 Kayobe Ansible 用户 (kayobe_ansible_user) 和远程 Kayobe Python 解释器 (ansible_python_interpreter) 的身份执行,因为它负责创建 Kolla Ansible 用户帐户 (kolla_ansible_user) 和 Python 虚拟环境 (kolla_ansible_target_venv)。这种环境的混合会导致 Ansible fact 缓存出现问题。为了避免此问题,Kayobe 现在负责创建 Kolla Ansible 用户和 Python 虚拟环境,并且 kolla-ansible bootstrap-servers 使用正常的 Kolla Ansible 用户和远程 Python 解释器运行。

    以前,可以通过在 ${KAYOBE_CONFIG_PATH}/kolla/globals.yml 中将 create_kolla_user 设置为 false 来避免在 kolla-ansible bootstrap-servers 期间创建用户帐户。现在可以通过在 ${KAYOBE_CONFIG_PATH}/kolla.yml 中将 kolla_ansible_create_user 设置为 false 来实现相同效果。

  • CentOS 7 不再支持作为主机操作系统或基本容器镜像。CentOS 用户应迁移到 CentOS 8。Train 版本支持 CentOS 7 和 8 镜像,并提供迁移路径。

  • 一些镜像受 CentOS 7 支持,但在 CentOS 8 中缺少合适的软件包,因此不再支持 CentOS。

  • 不再支持在 seed、seed hypervisor 和 overcloud 主机上配置 NTP 守护程序,因为适当的软件包不可用于 CentOS 8。相反,Kolla Ansible 配置为默认在 overcloud 主机上部署 chrony 容器。可以通过将 kolla_enable_chrony 设置为 false 来禁用此功能。不支持在 seed 或 seed hypervisor 主机上运行 chrony 容器。

  • 恢复使用 Kolla Ansible 的默认值 kolla_external_fqdn_certkolla_internal_fqdn_cert,当分别未设置 kolla_external_tls_certkolla_internal_tls_cert 时。这允许标准的 Kolla Ansible 配置方法将这些证书放入 $KAYOBE_CONFIG_PATH/kolla/certificates 目录,而不是将其定义为变量。如果使用 kolla-ansible certificates 命令生成用于测试的证书,则此方法可能很有用。

  • 默认 LVM 配置现在为空,适用于所有主机,除非它们配置为使用 devicemapper Docker 存储驱动程序(这是默认设置,但预计在未来的版本中会更改)。

    请注意,默认 LVM 配置主要存在于 devicemapper 驱动程序,还包括一个挂载在 /var/lib/docker/volumes 上的 docker-volumes 逻辑卷,用于 Docker 卷。如果主机未配置为使用 Docker devicemapper 存储驱动程序,则需要使用以下变量来启用 docker-volumes 卷:compute_lvm_group_data_enabledcontroller_lvm_group_data_enabledseed_lvm_group_data_enabledstorage_lvm_group_data_enabled

  • 放弃对 Kolla Ceph 部署的支持。Kayobe 遵循 Kolla 和 Kolla Ansible 的上游决定。请使用其他方式进行 Ceph 部署。请注意,如果使用外部 Ceph 集群,Ceph 后端仍然可以使用。

  • 已放弃 Python 2.7 支持。Kayobe 的最后一个支持 py2.7 的版本是 OpenStack Train。Kayobe 现在支持的 Python 最低版本是 Python 3.6。

  • seed VM 中网络接口的默认顺序现在按 Kayobe 网络名称的字母顺序排序。如果重新创建 seed VM,可能需要更改配置中的 seed 网络接口名称。

  • 将 Ironic Python Agent (IPA) 镜像构建更改为使用 IPA builder。已添加以下变量来配置 IPA builder 源位置:ipa_builder_source_urlipa_builder_source_version。有关详细信息,请参阅 story 2007070

  • 添加新的变量,以允许扩展在构建 Ironic Python Agent (IPA) 镜像时可用的 Disk Image Builder (DIB) git 仓库列表:ipa_build_dib_git_elements_defaultipa_build_dib_git_elements_extra。现有的 ipa_build_dib_git_elements 变量是这两个变量的连接。默认情况下,现在为 IPA builder 配置了一个 git 仓库,通常应将 ipa_build_dib_git_elements 的使用替换为 ipa_build_dib_git_elements_extra,以避免丢失此默认配置。

  • Ironic Python Agent (IPA) 内核镜像使用的文件扩展名已从 vmlinuz 更改为 kernel,与 Ironic 上游的更改保持一致。这会影响在 seed 上运行的 Bifrost 以及在 overcloud 中运行的 Ironic 的裸机计算。如果本地构建镜像,则应在升级服务之前完成此操作。

  • kolla_ansible_become 的默认值修改为 false。这意味着 Kolla Ansible 将不再对所有任务使用权限提升,而仅在必要时使用。

  • 移除了在 overcloud 主机上将带标签的 VLAN 用作管理网络接口的解决方法。这对于搭载了旧版本 cloud-init 的 CentOS 7.5 是必需的。已移除变量 overcloud_host_image_workaround_cloud_init_enabledovercloud_host_image_workaround_cloud_init_repo

  • 时区配置已从 ntp.yml 配置文件移动到 time.yml。应用于 play 的 Ansible 标签已从 ntp 重命名为 timezone

弃用说明

  • yum.yml 中的 Yum 配置变量已弃用,将在未来的版本中移除。将任何配置覆盖调整为使用新的 DNF 变量在 dnf.yml 中代替。

  • yum-cron.yml 中的 yum-cron 配置变量已弃用,将在未来的版本中移除。将任何配置覆盖调整为使用新的 DNF 自动变量在 dnf.yml 中代替。

错误修复

  • 修复了 Monasca 安装类型导致拉取容器镜像的问题。有关详细信息,请参阅 story 2007597

  • 屏蔽 Ansible 2.9.8,以避免 Ansible fileglob 插件出现的问题 issue。有关详细信息,请参阅 story 2007659

  • 修复了在默认 Monasca 控制平面 OpenStack 项目名称用于 Kolla Ansible 时,无法将仪表板加载到 Monasca Grafana 分支中的问题。

  • 修复了在使用最新版本的 python-dracclient 模块时,StackHPC iDRAC role 配置 RAID 时中断的问题。

  • 通过串行执行操作来修复将 SSH 密钥添加到已知主机文件时的并发问题。有关详细信息,请参阅 story 2007628

  • 修复了在没有 IP 地址的控制器上配置外部 API 网络接口时出现的问题,该问题会导致 kayobe overcloud host configure 在具有活动虚拟 IP 地址的主机上失败。有关详细信息,请参阅 story 2007736

  • 修复了运行以下命令的问题

    • kayobe baremetal compute inspect

    • kayobe baremetal compute manage

    • kayobe baremetal compute provide

    有关详细信息,请参阅 story 2007797

  • 修复了在 CentOS 8 seed hypervisor 上使用 coreutils-single 已经安装的情况下,在配置 seed VM 时出现的软件包冲突。有关详细信息,请参阅 story 2007612

  • 修复了在使用默认值 docker_storage_driver 时配置 Docker devicemapper 存储失败的问题。

  • 修复了默认值 public_net_name 包含尾随换行符的问题。有关详细信息,请参阅 story 2007654

  • 修复了在没有安装 SELinux 的系统上禁用 SELinux 失败的问题。有关详细信息,请参阅 story 2007704

  • 修复了 Ironic Inspector 规则创建的幂等性问题。有关详细信息,请参阅 story 2007399

  • 修复了内省数据保存失败的错误。有关更多详细信息,请参阅 Story 2007326

  • 修复了在没有指定其他软件包的情况下构建 IPA 镜像时出现的问题。有关详细信息,请参阅 story 2007069

  • 修复了具有多个网络接口的 seed VM 的问题,如果重新创建 VM,则接口可能会以不同的顺序启动。默认情况下,接口现在按其 Kayobe 网络名称的字母顺序创建。有关详细信息,请参阅 story 2007259

  • 修复了在使用版本为 1.8.0 的 stackhpc.libvirt-vm 角色配置 seed VM 时出现的问题。有关详细信息,请参阅 story 2007063

  • 改进了在 ${KAYOBE_CONFIG_PATH}/network-allocation.yml 中未定义 IP 地址的主机上发现 SSH 已知主机时显示的错误消息。

  • Kayobe 现在在使用 kayobe overcloud service upgrade 命令时更新 openrc 文件。

  • 修复了 openrc 文件中 OS_CACERT 变量设置为不存在的文件路径的问题。可以使用 kayobe control host bootstrap 命令生成新的 openrc 文件。有关更多详细信息,请参阅 story 2007516

  • 移除了 seed_hypervisor_libvirt_pool_capacity 变量,该变量在创建存储池时通过 libvirt-host 角色传递给 Libvirt。此信息实际上被 Libvirt 忽略,Libvirt 会从存储后端收集容量和其他元数据。有关详细信息,请参阅 story 2007381

  • 修复了由于 Bifrost 重命名 IPA 内核文件而导致 overcloud 配置期间出现的问题。有关详细信息,请参阅 story 2007068