Zed 系列发布说明

15.6.0-24

错误修复

  • 添加了针对内核中禁用 IPv6 的 IPv6 sysctl 设置的条件。在这些系统上更改与 IPv6 相关的 sysctl 设置会导致错误。LP#1906306

  • 从 ansible-core 2.13 开始,列表连接格式已更改,导致无法覆盖 horizon 策略文件。有关更多详细信息,请参阅 LP#2045660

  • 修复了 nova-compute 和 nova-compute-ironic 的配置,这将启用通过 configdrive 暴露 vendordata。LP#2049607

  • 修复了在使用自定义 CA 时 Python requests 库的问题,方法是将 REQUESTS_CA 环境变量添加到 kolla-toolbox 容器。请参阅 LP#1967132

  • 修复了启用 TLS 的 Swift 时 cinder-backup 服务。LP#2051986

  • 为 multipath.conf defaults 部分添加了 skip_kpartx yes 以防止 kpartx 扫描 multipath 设备并解锁 os-brick 的 multipathd del map 操作以进行卷分离操作。 LP#2078973 <https://launchpad.net/bugs/2078973>`__

  • 修复了 OpenSearch 升级任务中的幂等性问题,后续的 kolla-ansible 升级会使分片分配处于禁用状态。LP#2049512

  • 修复了一个问题,如果日志中未找到序列号,MariaDB 集群恢复过程将失败。恢复过程现在会检查完整的日志文件以查找序列号并恢复集群。详情请参阅 LP#1821173

  • 移除了 horizon 容器中的默认 /tmp/ 挂载点。此更改是为了加固容器并防止潜在的安全问题。有关更多信息,请参阅 Bug Report:LP#2068126

  • 修复了 kolla-toolbox 调用内部模块时,数据在标准错误上返回时解析 JSON 输出的问题。 LP#2080544

15.6.0

升级说明

  • 如果在 passwords.yml 中更新了凭据,kolla-ansible 现在能够更新 keystone 数据库和磁盘上配置文件中的这些凭据。

    passwords.yml 的更改在运行 kolla-ansible -i INVENTORY reconfigure 后应用。

    如果您想恢复到旧行为 - 凭据在 passwords.yml 中更改后在重新配置期间不会自动更新 - 您可以通过在 globals.yml 中设置 update_keystone_service_user_passwords: false 来指定。

    请注意,只有在您更改 passwords.yml 中的密码时,才会更改密码。此机制不是自动凭据轮换的完整解决方案。如果您没有在 passwords.yml 内部更改密码,则不会更改任何密码。

错误修复

  • 修复了使用 Ansible check 模式时的 mariadb 角色部署。LP#2052501

  • 更新了所有 Nova 和 Cinder 服务的服务用户令牌的配置,以停止对服务令牌使用管理员角色,并使用服务角色。

    有关更多详细信息,请参阅 LP#[2004555]LP#[2049762]

  • 添加 Keystone 服务角色。Keystone 自 Bobcat 版本以来在 bootstrap 阶段创建服务。SLURP 从 Antelope 版本开始需要此角色才能正常工作。此角色也需要在 Antelope 和 Zed 中用于 Cinder,以获得适当的服务令牌支持。LP#2049762

  • passwords.yml 中更改服务用户密码时,现在将在重新配置服务时应用。

    可以通过将 update_keystone_service_user_passwords: false 来撤销此行为。

    修复了 LP#2045990

15.5.0

错误修复

  • 修复了启用不必要的用法审计通知的问题。请参阅 LP##2049503

15.4.0

新特性

  • 更新了 apache grok 模式以匹配字节中的响应大小、服务请求所花费的时间和用户代理。

  • Masakari 协调后端现在可以通过 masakari_coordination_backend 变量进行配置。协调是可选的,现在可以设置为 redis 或 etcd。

  • 通过索引状态管理 (ISM) 为 OpenSearch 设置日志保留策略。文档

  • 添加了通过 rabbitmq_extra_config 配置 rabbitmq 的功能,该配置可以覆盖 globals.yml 中的设置。

  • 在 Senlin 服务的配置模板中,现在默认在 authentication 部分设置了 cafile 参数。这样,使用内部 Keystone 端点上的自签名证书也可以在 Senlin 服务中使用。

升级说明

  • 添加了 OpenSearch 中的日志保留,以前由 Elasticsearch Curator 处理。默认情况下,软保留期和硬保留期分别为 30 天和 60 天。如果您正在从 Elasticsearch 升级,并且之前配置了 elasticsearch_curator_soft_retention_period_dayselasticsearch_curator_hard_retention_period_days,则将使用这些变量而不是默认值。您应在 Caracal 版本之前迁移您的配置以使用新的变量名称。

错误修复

  • 修复启用 enable_proxysql 时的 MariaDB 备份

  • 修复了 keystone 任务,该任务通过 ssh 连接而不是本地连接。 LP#2004224

  • 修复了在抓取 openstack 导出器时发生的 504 超时问题。确保 HAProxy 服务器超时与 openstack 导出器后端的抓取超时相同。 LP#2006051

  • 修复了非持久的 Neutron 代理状态数据。LP2009884

  • 修复了在使用 IPv6 配置的 octavia 管理网络时,octavia 安全组规则创建出现的问题。有关更多详细信息,请参见 LP#2023502

  • 修复了当 cinder_backend_ceph 设置为 true 时,glance-api 无法启动 privsep 守护程序的问题。有关更多详细信息,请参见 LP#2024541

  • 修复了 2024554。将主机和 mariadb_port 添加到 wsrep sync 状态检查中。这样就可以使用非标准端口进行 mariadb 部署。 LP#2024554

  • 通过将每个容器的 housekeeping 间隔设置为与 Prometheus 抓取间隔相同的值,修复了 cAdvisor 容器的高 CPU 使用率问题。LP#2048223

  • 修复了在使用内部 TLS 和 FQDN 时,Prometheus 无法抓取 OpenStack 导出器的问题。 LP#2008208

  • 修复了 sahara_engine 容器的 Docker 健康检查。LP#2046268

  • 修复了 Fluentd 错误解析 Horizon WSGI 应用程序日志的问题。Horizon 错误日志现在写入 horizon-error.log 而不是 horizon.log。请参阅 LP#1898174

  • 添加了 OpenSearch 中的日志保留功能,之前由 Elasticsearch Curator 处理,现在使用 Index State Management (ISM) OpenSearch 捆绑插件。 LP#2047037

  • 修复了启用 Etcd TLS 时,Prometheus 抓取 Etcd 指标失败的问题。 LP#2036950

15.3.0

新特性

  • 添加了为 Neutron 指定自定义内核模块的功能:neutron_modules_default:列出默认模块。neutron_modules_extra:用于自定义模块和参数。

  • 添加了 neutron 检查,用于在部署阶段的开头检查 ML2/OVS 和 ML2/OVN 的存在。如果 neutron_plugin_agent 设置为 ovn 并且检测到 ML2/OVS 容器,则它将失败。如果 neutron_plugin_agent 设置为 openvswitch,则在检测到 ML2/OVN 容器或任何 OVN 特定卷时,检查将失败。

升级说明

  • 默认的 keystone 用户角色已从弃用的角色 _member_ 更改为 member 角色。

  • 现在 ironic_tftp 服务不再绑定到 0.0.0.0,默认情况下它使用 api_interface 的 IP 地址。要恢复到以前的行为,请在 globals.yml 中设置 ironic_tftp_interface_address: 0.0.0.0

  • 在 Ubuntu 上升级到 Kolla-Ansible 的 Zed 版本之前,请确保在版本 6 或更早版本中创建的 Elasticsearch 索引已重新索引。OpenSearch 2.x 不支持这些较旧的索引。现在已经引入了针对此场景的预检查。

  • 配置 Nova libvirt.num_pcie_ports 为 16 默认值。Nova 当前将 ‘num_pcie_ports’ 设置为 “0”(默认为 libvirt 的 “1”),这对于使用 ‘q35’ 机器类型进行热插拔是不够的。

  • 将 nova libvirt 驱动程序设置 skip_cpu_compare_on_dest 的默认值更改为 true。使用 libvirt 驱动程序时,在实时迁移期间,跳过比较来宾 CPU 与目标主机。当使用 QEMU >= 2.9 和 libvirt >= 4.4.0 时,libvirt 将在实时迁移期间正确检查目标主机上的 CPU 兼容性。

安全问题

  • 默认情况下限制对通过 HAProxy 在公共端点暴露的 http Openstack 服务 /server-status 的访问。修复了 Ubuntu/Debian 安装的问题。RockyLinux/CentOS 不受影响。 LP#1996913

错误修复

  • 修复了 OVN NB/SB DB 部署的问题,其中需要重新启动第一个节点。 LP#1875223

  • enable_keystone_federationkeystone_enable_federation_openid 到目前为止,在 keystone 角色中的各种模板中都没有被显式处理为布尔值。 LP#2036390

  • 修复了当 Kolla 将 producer 任务设置为 None 时的问题,这禁用了所有 designate producer 任务。 LP#1879557

  • 修复了 ironic_tftp,它绑定到系统上的所有 ip 地址。添加了 ironic_tftp_interfaceironic_tftp_address_familyironic_tftp_interface_address 参数,以设置 ironic_tftp 服务的地址。 LP#2024664

  • 通过添加对 OpenSearch 2.x 版本 Elasticsearch 索引过低的预检查来修复 OpenSearch 迁移过程。

  • 修复了 OpenSearch Dashboards 容器未配置 Docker 健康检查的问题。请参阅错误 2028362

  • 修复了使用 ‘q35’ libvirt 机器类型 VM 无法一次热插拔多个 PCIe 设备的问题。

  • 修复了单控制器环境中 keepalived track 脚本失败,keepalived VIP 进入 BACKUP 状态的问题。引入了 keepalived_track_script_enabled 变量(默认:true),可用于禁用 keepalived 配置中的 track 脚本。 LP#2025219

  • 修复了一个 OVS-DPDK 任务名称与通知方式不同的问题。

  • 在升级 Nova 到新版本时,我们使用工具 nova-status upgrade check 来确保没有 nova-compute 的版本低于 N-1 版本。这是使用当前的 nova-api 容器执行的,因此升级后版本过低的计算节点没有被捕获。现在使用了升级后的 nova-api 容器镜像,因此可以正确识别较旧的计算节点。 LP#1957080

15.2.0

新特性

  • 由于 CVE-2022-29404 已修复,Apache HTTP Server 中 LimitRequestBody 指令的默认值已从 0(无限制)更改为 1073741824(1 GiB)。这限制了上传到 Horizon 的图像的大小(例如)。现在可以通过 horizon_httpd_limitrequestbody 进行配置。LP#2012588

  • etcd 现在通过 HAProxy 在 etcd_client_port 上内部暴露。

  • 添加了两个新标志来改变 RabbitMQ 中的行为:* rabbitmq_message_ttl_ms,它允许您为消息设置 TTL。* rabbitmq_queue_expiry_ms,它允许您为队列设置到期时间。有关两者的更多信息,请参见 https://rabbitmq.cn/ttl.html

  • 添加了配置选项 rabbitmq_ha_replica_count,以允许更改 RabbitMQ 中镜像队列的复制因子。在未设置该标志的情况下,队列将使用“ha-mode”:”all”在所有节点上进行镜像。请注意,只有当标志 `om_enable_rabbitmq_high_availability` 设置为 True 时,此设置才会生效,因为否则队列不会被镜像。

  • 添加了配置选项 rabbitmq_ha_promote_on_shutdown,它允许更改 RabbitMQ 定义 ha-promote-on-shutdown。默认情况下 ha-promote-on-shutdown 为“when-synced”。我们建议将其更改为“always”。这意味着我们不在乎丢失一些消息,而是优先考虑 rabbitmq 的可用性。这在重启 rabbitmq(例如在升级时)时最相关。请注意,即使将此标志的值设置为默认值“when-synced”,也会在下一次部署时重启 RabbitMQ。有关更多详细信息,请参见:https://rabbitmq.cn/ha.html#cluster-shutdown

  • 通过 tooz 使用 etcd3gw 的服务现在通过 haproxy 使用 etcd。这消除了一个单点故障,我们硬编码了第一个 etcd 主机作为 backend_url。

升级说明

  • neutron_tls_proxyglance_tls_proxy 的默认标签已更改为 haproxy_tag,因为这两个服务都使用 haproxy 容器镜像。升级前应更改对这些服务的任何自定义标签覆盖。

安全问题

  • kolla-genpwd、kolla-mergepwd、kolla-readpwd 和 kolla-writepwd 命令现在会创建或使用正确的权限更新 passwords.yml。它们还会显示有关权限不正确的警告消息。

错误修复

  • kolla_externally_managed_cert 设置为 true 时,RabbitMQ 的预检查会错误地失败。LP#1999081

  • 修复了迁移到 Opensearch 时删除 Elasicsearch 和 Kibana 负载均衡器配置的问题,当这些服务在专用的监控节点上运行时。

  • 修复在配置文件准备好之前创建 sasl 帐户。LP#2015589

  • 设置 opensearch-dashboard 数据位置的正确权限 LP#2020152 https://bugs.launchpad.net/kolla-ansible/+bug/2020152

  • 现在自动完成使用 etcd3gw 的所有 Nova 和 Cinder 服务的服务用户令牌的配置,以确保块存储卷数据的安全性。

    有关更多详细信息,请参见 LP#[2004555]

  • 修复在使用 Ansible 检查模式时部署的问题。LP#2002661

  • 修复了 Keystone 中 Cyborg 服务的错误端点 URL 和服务类型信息。 LP#2020080

  • 设置 etcd 内部主机名和 cacert,用于启用 TLS 内部的部署。这允许服务在使用 etcd 进行协调的 TLS 内部部署时与 etcd 协同工作。如果没有此修复,协调后端将无法连接到 etcd,并且服务本身将崩溃。

  • 修复了 opensearch 迁移过程。包括 elasticsearch 位于常规文件夹而不是 docker 卷的情况。此外,它现在检查是否有数据可以迁移。

  • 在升级或部署 RabbitMQ 时,如果 om_enable_rabbitmq_high_availability 设置为 false,则会清除策略 ha-all

15.1.0

新特性

  • 添加了标志 om_enable_rabbitmq_high_availablity。将其设置为 true 将在 RabbitMQ 中启用持久队列和经典镜像队列。请注意,经典队列镜像和瞬态(即非持久)队列在 RabbitMQ 版本 4.0 中已被弃用(发布日期未知)。更改用于经典镜像的模式以排除某些队列类型。此模式为 ^(?!(amq\\.)|(.*_fanout_)|(reply_)).*

  • 添加了 ovn-monitor-all 变量。一个布尔值,用于指示 ovn-controller 是否应无条件地监视 OVS 数据库中的所有记录。将 ovn-monitor-all 变量设置为“true”将减少 OVN SouthBound DB 的一些 CPU 负载,但会影响更多更新发送到 ovn-controller。在具有许多计算主机的大型部署中可能有所帮助。

错误修复

  • 修复了 kolla_docker 模块,该模块没有考虑到 common_options 参数,因此始终存在模块的默认值。LP#2003079

  • 显式将 [oslo_messaging_rabbit] heartbeat_in_pthread 的值设置为 true 用于 wsgi 应用程序,或 false 用于其他应用程序。

  • 修复了在使用 octavia_auto_configuregenconfig 命令时 Octavia 配置生成的问题。请注意,即使在生成配置时,Octavia 自动配置也需要访问 OpenStack API 才能工作。有关更多详细信息,请参见 LP#1987299

  • 修复 OVN 部署顺序 - 如 OVN 文档中所建议。LP#1979329

  • 修复了一个问题,在检查模式下运行时,某些预检查会失败或无法运行。LP#2002657

  • 防止 haproxy-config 角色在 kolla-ansible genconfig 期间尝试配置 firewalld。 LP#2002522

15.0.0

新特性

  • 添加了一组变量来控制 cinder backend 的名称,如 cinder.conf 中所用。这是在 volume 类型上设置 volume_backend_name 属性时使用的名称。详情请参阅文档的 cinder 指南 部分。

  • 启用为外部 API 服务配置 firewalld。提取所需的服务并检查外部端口,然后将端口添加到 firewalld 区域。假设 firewalld 已经安装并配置。变量 disable_firewall 默认禁用,以保持向后兼容性。但配置系统防火墙是一个好的做法。

  • 添加了部署 OpenSearch 和 OpenSearch dashboards 的支持。这些服务直接取代了 ElasticSearch 和 Kibana,它们现在已停止维护。向远程 ElasticSearch(或 OpenSearch)集群发送日志的支持得以保留。

  • 允许配置 cinder-volume 以使用 Pure Storage FlashArray,并使用 iSCSI 或 FC 驱动程序。

  • 添加了包含自定义警报通知模板的 Prometheus Alertmanager 的可能性。

  • 添加了一个新的、默认禁用的选项,用于 Prometheus OpenStack 导出器,名为“enable_prometheus_openstack_exporter_external”。此选项允许通过 HAProxy 暴露 OpenStack 导出器,并可用于将 OpenStack 指标暴露给 OpenStack 云外部的现有 Prometheus 服务器,而不是使用 OpenStack 提供的默认服务器。

  • 添加了一个新的标志 openvswitch_ovs_vsctl_wrapper_enabled,它将在 /usr/bin/ovs-vsctl 安装一个包装脚本,以 docker exec 到 openvswitchd 容器中。

  • 添加了 prometheus_scrape_interval 配置选项。默认设置为 60s。这配置了所有 job 的默认抓取间隔。

  • 添加了 bifrost_deploy_verbosity 参数。它允许更改 Bifrost bootstrap 任务的详细程度。默认值为 -vvvv

  • 添加了使用 cloudkitty_fetcher_backend 配置 CloudKitty fetcher 的支持。

  • 添加了新的开关来控制 Masakari 监控器的部署。可以通过 enable_masakari_instancemonitorenable_masakari_hostmonitor 独立控制每种类型监控器的部署。默认情况下,当通过 enable_masakari 启用 Masakari 的部署时,两者都设置为 true

  • 已删除完整性检查。这些“烟雾测试”最初是为 barbican、cinder、glance 和 keystone 实现的。

  • Kolla Ansible 现在支持在任何主机上 fact 收集失败时提前终止执行。这是为了避免由于缺少 fact(尤其是跨主机)而导致的后期故障。可以通过设置 kolla_ansible_setup_any_errors_fatal: true 来实现。请注意,这仍然支持主机 fact 缓存,并且不会影响所有 fact 都缓存的场景(因为没有要失败的任务)。

  • 添加了一个新的变量 ceilometer_prometheus_pushgateway_options

    这是一个字典,其键和各自的值被添加到 pushgateway 的 URL 中,检查是否设置了“None”值。

    例如,以下配置

    ceilometer_prometheus_pushgateway_host: "127.0.0.1"
    ceilometer_prometheus_pushgateway_port: "9091"
    ceilometer_prometheus_pushgateway_options:
        timeout: 180
        max_retries:
        verify_ssl: yes
    

    导致以下 URL:prometheus://127.0.0.1:9091/ \ metrics/job/openstack-telemetry/?timeout=180&verify_ssl=True

    LP#1968597

  • 添加了通过 配置文件 管理资源提供商的支持。

  • 添加了支持设置 HAProxy 在主动/被动模式下的任意服务。

  • 实现了 mariadb-server 服务的容器健康检查。请参阅 蓝图

  • 添加了通过变量 ironic_coordination_backend 配置 Ironic Inspector 的协调后端的支持。可能的值是 redisetcd

  • 添加了在 Ironic Inspector DHCP 服务器中支持多个 DHCP 范围。

  • 添加了 ironic_http_interface/ironic_http_interface_address 参数,以设置 ironic_http 服务的地址。

  • Ironic 同时支持 PXE 和 iPXE。

  • 添加变量以配置是否应将监控服务暴露到外部

    • enable_grafana_external

    • enable_kibana_external

    • enable_prometheus_alertmanager_external

  • 添加了通过变量 designate_backend_bind9_workers 配置 Designate 的 bind9 后端的 UDP worker 数量的支持。

  • 添加了使用变量 prometheus_openstack_exporter_compute_api_version 配置 OpenStack Compute API 微版本,该版本由 Prometheus 的 OpenStack 导出器使用。默认值为 latest,与导出器的默认行为相匹配。

  • 添加了 ovn-openflow-probe-interval 变量。它设置了 OpenFlow 连接到 OpenvSwitch 集成桥的不活动探测间隔,以秒为单位。如果值为零,则禁用连接保持活动功能。默认值为 60 秒。

  • 添加了部署 prometheus-msteams 的支持,它可以用于将 Prometheus Alertmanager 通知转发到 Microsoft Teams。通过将 enable_prometheus_msteams 设置为 true 来启用。

  • 添加了配置 ProxySQL 的最大复制滞后时间的功能,通过配置值 proxysql_backend_max_replication_lag,默认值为文档中规定的值。如果大于 0,ProxySQL 将定期监控复制滞后,如果超过配置的阈值,它将临时屏蔽主机,直到复制赶上为止。有关更多详细信息,请参阅官方 升级说明

升级说明

  • 如果您当前正在使用 Kolla Ansible 部署 ElasticSearch,则应在开始升级之前备份数据。ElasticSearch 数据卷的内容将自动移动到 OpenSearch 卷。ElasticSearch、ElasticSearch Curator 和 Kibana 容器将自动删除。必须更新清单,以便将 elasticsearch 组重命名为 opensearch,并将 kibana 组重命名为 opensearch-dashboards

  • 默认情况下启用 Bifrost 中的 TLS。Bifrost 现在配置为为它部署的服务启用 TLS,并为它们生成自签名证书。可以通过将 enable_tls 设置为 false/etc/kolla/config/bifrost/bifrost.yml 中禁用 TLS。

  • image_upload_use_cinder_backend = True 不再设置为 Cinder 的默认 Ceph RBD 后端,现在使用常见的上游默认值(当前为 False)。请参见 LP#1991516

  • Kolla Ansible 不再默认设置 show_multiple_locations = True,当 Glance 的 Ceph RBD 后端启用时。这作为一种修复应用,但操作员必须注意,这反过来会禁用 Cinder 和 Nova 的优化。另一方面,这些优化可能给其他操作员带来麻烦。请参阅链接的错误报告。依赖此功能的运营商可以自行设置该标志,通过服务配置覆盖来实现。

  • 如果启用了 masakari-hostmonitor,则将 enable_hacluster 的默认值从 no 修改为 yesLP#1934149

  • 已删除完整性检查,因为它们已损坏。

  • 默认情况下,Nova 遗留服务及其端点不再被宣传。要恢复到旧行为,请在 globals.yml 中设置 nova_enable_nova_legacy_service: true

  • 变量 keystone_token_provider 不再存在,因为没有替代方案。

  • Kolla Ansible 不再支持 OpenStack Monasca。部署 kafkastormzookeeper 的支持已被删除,因为它们仅与 Monasca 一起使用。可以使用 kolla-ansible monasca_cleanup 对这些服务进行升级后清理 - 有关详细信息,请参阅 Monasca 指南

  • 将 Ironic Inspector DHCP 服务器的默认租期时间修改为 10 分钟。这足以使用较小的 IP 地址池进行检查,但为检查成功留出更多空间。可以通过变量 ironic_dnsmasq_dhcp_default_lease_time 全局更改此默认值,或通过参数 lease_time 逐范围更改。

  • ironic_dnsmasq_dhcp_ranges 替换了 ironic_dnsmasq_dhcp_rangeironic_dnsmasq_default_gateway。例如,如果您有

    ironic_dnsmasq_dhcp_range: "10.42.0.2,10.42.0.254,255.255.255.0"
    ironic_dnsmasq_default_gateway: "10.42.0.1"
    

    将其替换为

    ironic_dnsmasq_dhcp_ranges:
      - range: "10.42.0.2,10.42.0.254,255.255.255.0"
        routers: "10.42.0.1"
    
  • 与 PXE(TFTP)和 iPXE 及直接部署(HTTP)相关的 Ironic 卷已重构,以共享根路径 /var/lib/ironic。这是为了同时支持 PXE 和 iPXE。进行高级自定义的操作员可能需要查看相关的默认部分。

  • Ironic 的升级现在将等待处于 wait 状态的节点更改其状态。这是为了改善用户体验,避免中断正在等待处理的进程。可以通过将 ironic_upgrade_skip_wait_check 设置为 yes 来禁用此功能。

  • 与 PXE(TFTP)和 iPXE 及直接部署(HTTP)相关的 Ironic 容器已重命名,以更好地反映其作用:ironic_pxe 现在是 ironic_tftp,而 ironic_ipxe 现在是 ironic_http。进行高级自定义的操作员可能需要查看相关的默认部分。此外,它们各自的主机组也已相应更改:ironic-pxe 现在是 ironic-tftp,而 ironic-ipxe 现在是 ironic-http

  • Keystone 的 admin 端点默认情况下不再创建。现有部署的操作员可能希望在升级完成后删除它。具有依赖于 Keystone admin 端点可用性的外部服务的操作员可以将 keystone_create_admin_endpoint 设置为 true 以继续创建 admin 端点,但这种支持将在 Zed 之后删除。

  • Keystone 的 admin 接口不再指向单独的端口。升级时,端口将被保留以保持中间兼容性。建议用户运行部署和部署后命令,以确保端口清理。有关更多信息,请参阅文档。请注意,相关变量 keystone_admin_portkeystone_admin_urladmin_protocol 不再使用且已弃用,将在 Zed 之后删除。请停止在您的自定义中使用它们。

  • 从 Zed 开始,Neutron 将 linuxbridge ML2 驱动程序标记为实验性的。Kolla 团队决定尊重上游的决定,并确保用户知道他们正在使用一个支持不佳的驱动程序,而不是默认配置它。因此,建议所有此驱动程序的用户熟悉 Neutron 文档 并相应地进行操作。

  • ovn 角色已拆分为 ovn-controllerovn-db 角色,因此配置了 ovn_extra_volumes 的用户需要调整其配置以使用 ovn_db_extra_volumesovn_controller_extra_volumes

  • 对于 ovn,openflow-probe-interval 的默认值已更改为 60 秒。使用 ovn-openflow-probe-interval 变量进行覆盖。

  • Prometheus 已切换到主动/被动模式。默认情况下启用此模式,但可以通过将 prometheus_active_passive 设置为 no 来关闭。请参阅 bug 1928193

  • Prometheus Alertmanager 已切换到主动/被动模式。默认情况下启用此模式,但可以通过将 prometheus_alertmanager_active_passive 设置为 no 来关闭。

  • 已弃用的 enable_ironic_ipxe 变量已被删除。iPXE 默认情况下仍然有效,可以通过将更恰当命名的 ironic_dnsmasq_serve_ipxe 设置为 false 来禁用它。

  • 已弃用的 storage_interface 变量已被删除。请直接设置 swift_storage_interface

  • ip_forwardrp_filter 相关的已弃用的 sysctl 旋钮已被删除。

  • Influxdb 变量 infuxdb_internal_endpoint 已修复为 influxdb_internal_endpoint。操作员可能需要检查相关变量。

弃用说明

  • enable_ironic_ipxe 已被 ironic_dnsmasq_serve_ipxe 取代,后者更能准确地反映其效果。enable_ironic_ipxe 将在 Zed 版本中删除。

  • enable_ironic_pxe_uefi 已被弃用,将在 Zed 版本中删除。此变量未记录,会导致 Ironic Inspector 的 PXE 设置损坏。在 Ironic Inspector 中支持 EFI/UEFI 部署的推荐方法是坚持使用 Ironic Inspector 中 iPXE 的推荐默认设置(请参阅关于 ironic_dnsmasq_serve_ipxe 的文档)。

  • 在 2022 年 4 月的 PTG 中,已确认弃用和删除完整性检查。因此,使用

    kolla-ansible check
    

    不再可行。

  • 变量 keystone_admin_portkeystone_admin_urladmin_protocol 已被弃用,将在 Zed 版本之后删除。

安全问题

  • Kolla Ansible 以前以非特权 root 用户身份运行 Ironic 的 tftpd。现在,它将显式地使用 nobody 用户。

错误修复

  • grafana 中 prometheus 数据源的抓取间隔现在设置为 prometheus_scrape_interval。这解决了使用 grafana 变量 $__rate_interval 的仪表板的问题,因为默认抓取间隔 60 秒与 grafana 的默认间隔 15 秒不匹配。

  • 修复了 bifrost_deploy 容器中的一个问题,Bifrost 生成的密码在容器的生命周期结束后无法持久保存。除非您在 Bifrost 剧本之外访问 Ironic 或 Inspector API,否则通常这不是问题。 LP#1983356

  • 修复了在重启 kolla-toolbox 容器时 /run/openvswitch 挂载呈指数增长的问题。 LP#1979295

  • 修复了 LP#1982777。将 multipathd user_friendly_names 设置为“no”,以使 os-brick 能够在线调整卷的大小。添加了覆盖 multipathd 配置的能力。

  • 修复了 bug #1987982。此错误导致 keystone 升级后数据库 log_bin_trust_function_creators 变量未被重置为“OFF”。

  • image_upload_use_cinder_backend = True 不再设置为 Cinder 的默认 Ceph RBD 后端。防止了 Cinder 和 Glance 日志中的相关错误和警告。LP#1991516

  • 当启用 Glance 的 Ceph RBD 后端时,Kolla Ansible 默认情况下不再设置 show_multiple_locations = True。这导致使用推荐的 Ceph 权限运行的服务出现各种问题。 LP#1992153

  • 修复了 proxysql 日志的缺失 logrotate 配置。 LP#1995248

  • 修复了在未部署 corosync/pacemaker 时启用 masakari-hostmonitor 时出现的问题。 LP#1934149

  • 修复了恢复多节点 MariaDB Galera 集群的问题。

  • 添加了必要的配置,以使应用程序凭证访问规则能够正常工作。LP#1965111

  • 修复了 AlertManager 外部 Web URL 无法配置的问题。引入了一个新变量 prometheus_alertmanager_external_url,用户可以使用它将 web.external-url 设置为公共地址。

  • 修复在多区域环境中,Ironic Inspector 在没有本地 Keystone 服务的区域中被配置而没有身份验证的问题。

  • 修复了 Keystone OIDC 无法验证 JWT,因为 Azure auth-oidc 端点缺少密钥。添加了一个包含传递缺失密钥的 JWKS uri 的新变量。LP#1990375

  • 修复了 masakari.conf.j2 中缺失的 [taskflow] 部分。 LP#1966536

  • 修复了 Zun capsules 在重启 zun_cni_daemon 容器后丢失网络命名空间的问题

  • 在 Fluentd-ElasticSearch 集中日志记录管道长时间中断的情况下,有可能生成足够数量的未发送日志数据,其传输缓冲区的时间超过默认 Fluentd 请求超时时间(默认 5 秒)。默认请求超时值增加到 60s,并使用新参数 fluentd_elasticsearch_request_timeout 可进行配置。LP#1983031

  • prometheus_openstack_exporter_timeout 增加到 45 秒,以减少在具有大量 OpenStack 资源的部署中出现抓取失败的可能性。 LP#1976629

  • 修复了启用后端 TLS 加密时 Ironic API 健康检查的问题。LP#1990819

  • 移除了 dhcp-sequential-ip 配置选项,以避免在同时检查多个主机时提供相同 IP 地址的竞争条件。

  • 修复了 ironic-inspector 使用错误的选项来配置用于与 Ironic API 通信的接口的问题。LP#1995246

  • 修复 ironic-neutron-agent 使用错误的选项来配置与 Ironic API 通信的接口的问题。 LP#1990675

  • 如果 ironic_enabled_notification_topics 设置为 true,则将 ironic_notification_level 设置为 info,以确保 Ironic 实际发送通知。

    有关详细信息,请参阅 bug 1969826

  • 修复了 monitor: kolla 默认添加到 external_labels 中。Prometheus 默认配置不应包含环境特定的详细信息。在此补丁中,修改 external_labels 为可选,我们可以在 external_labels 中添加任何 <labelname>: <labelvalue>LP#1944699

  • 修复启用 libvirt SASL 时 Masakari 实例监控出现的问题。libvirt SASL 在 Kolla Ansible 的最近一次更改中默认已启用。 LP#1965754

  • 修复了一个问题,即任何 Nova 计算服务未能注册自身,将导致只有查询 nova API 的主机失败。现在,只有未能注册的主机会使 Kolla Ansible 运行失败。或者,要使单元中的所有主机在任何计算服务未能注册时都失败,请将 nova_compute_registration_fatal 设置为 trueLP#1940119

  • prometheus openstack 导出器现在位于 haproxy 之后,在 prometheus 数据库中提供唯一的时序。同时,确保在任何给定时间间隔内只有一个导出器查询 openstack API。以前的行为是每个 openstack 导出器都在同一时间被抓取。这导致每个导出器同时查询 openstack API,引入了不必要的负载以及由于实例标签对每个导出器都是唯一的,导致 prometheus 数据库中的重复时序。

  • 修复了在通过多个 prometheus 服务器实例进行负载均衡时 grafana 中数据点错位的问题。请参阅 bug 1928193

  • 修复了 Alertmanager 静默创建导致 404 页面出现的问题。 LP#1987866

其他说明

  • 如果启用了 memcached,则将 horizon 的平衡算法设置为轮询。 LP#1990523

  • tools/ovs-dpdkctl.sh 已移动到 ansible/roles/ovs-dpdk/files/ovs-dpdkctl.sh

  • 现在推荐使用基于 Rocky Linux 9 的镜像(而不是 CentOS Stream 镜像)。