Stein 系列发布说明

8.3.0-8

错误修复

  • 修复了在使用 Docker 20.10 时 kolla-ansible prechecks 命令出现的问题。 LP#1907436

  • 修复了 Barbican 日志记录的一些配置问题。 LP#1891343

  • 修复了通过 pip install --user 安装时执行 kolla-ansible 的问题。 LP#1915527

8.3.0

新特性

  • 通过在一个文件中生成所有 fluentd 配置来提高 common 角色的性能。

  • 通过在一个文件中生成所有 logrotate 配置来提高 common 角色的性能。

升级说明

  • 默认值 REST_API_REQUIRED_SETTINGS 与 Horizon 同步。您可能需要查看 更新的配置 中公开的设置。

安全问题

  • kolla-ansible post-deploy 生成的 admin-openrc.sh 文件先前以 root:root 用户名和 644 权限创建。 这将允许具有相同目录访问权限的任何人读取该文件,包括管理员凭据。 admin-openrc.sh 的所有权现在设置为执行 kolla-ansible 的用户,并且该文件被分配了 600 模式。 可以通过运行 kolla-ansible post-deploy 来应用此更改。

错误修复

  • 添加了对在代理后使用 bifrost-deploy 的支持。它使用现有的 container_proxy 变量。

  • 修复了对 /dev/kvm 权限的处理,使其对主机级别操作更加健壮。 LP#1681461

  • 此补丁添加了 kolla-ansible 内部 logrotate 配置用于 Logstash。Logstash 2.4 使用集成的容器内 logrotate 配置来轮换 /var/log/logstash 中的日志,而 kolla-ansible 部署的 Logstash 日志位于 /var/log/kolla/logstash 中。 LP#1886787

  • 修复了 --configdir 参数应用于默认 passwords.yml 位置的问题。 LP#1887180

  • 此补丁修复了一个错误,当由于 paramiko/cryptography 引起的 Python 弃用警告导致 kolla_toolbox Ansible 模块失败时。 LP#1888657

  • 修复了 haproxy_single_service_split 模板,使其适用于默认的 modehttp)。 LP#1896591

  • 修复了 Debian/Ubuntu 上错误的 fernet cron 文件路径,从 /var/spool/cron/crontabs/root/fernet-cron 改为 /var/spool/cron/crontabs/rootLP#1898765

  • 为 placement-api wsgi 配置添加 with_first_found,允许用户覆盖。 LP#1898766

  • 修复了某些 CloudKitty 命令尝试使用 HTTP 连接到外部 TLS 端点的问题。 LP#1888544

  • kolla-ansible post-deploy 生成的 admin-openrc.sh 文件先前以 root:root 用户名和 644 权限创建。 这将允许具有相同目录访问权限的任何人读取该文件,包括管理员凭据。 admin-openrc.sh 的所有权现在设置为执行 kolla-ansible 的用户,并且该文件被分配了 600 模式。 可以通过运行 kolla-ansible post-deploy 来应用此更改。

  • 修复了在容器配置没有更改时 fluentd 部署出现的问题。 LP#1904721

  • 修复了 Keystone Fernet 密钥轮换由于权限被拒绝错误而失败的问题,如果 Keystone 轮换发生在 Keystone 容器启动之前。 LP#1888512

  • 修复了 LP#1892210,其中从 neutron-server 到 Memcached 的打开连接数会随着时间的推移而增长,直到达到 memcached_connection_limit(默认值为 5000)设置的最大值,此时 Memcached 实例将停止工作。

  • 修复了由于引用未定义的变量 openstack_cacert 导致的 Octavia 部署问题。 LP#1888003

  • Kafka 默认主题创建被使用创建 Kafka 主题时,在多节点集群中未创建冗余副本的问题。 LP#1888522。 这会影响使用 Kafka 的 Monasca,并且之前被 Monasca 使用的旧 Kafka 客户端所掩盖,而该客户端已在 Ussuri 中升级。 具有多节点 Kafka 集群的 Monasca 用户应查阅 Kafka 文档 以增加副本数。

  • 修复了计算主机上未加载 br_netfilter 内核模块的问题。 LP#1886796

  • 减少 SQLAlchemy 连接池的使用,以提高控制器具有内部 VIP 发生故障时的服务可靠性。 LP#1896635

  • 不再配置 Prometheus OpenStack 导出器使用 prometheus Docker 卷,因为从未需要过。

8.2.0

新特性

  • Kolla Ansible 检查现在本地 Ansible Python 环境是否一致,即使用的 Ansible 可以看到 Kolla Ansible。 LP#1856346

升级说明

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

  • 在之前的稳定版本中,octavia 用户不再在 admin 项目中获得 admin 角色,并且在升级期间添加了一个任务来删除该角色。 但是,Octavia 配置未更新为使用 service 项目,导致负载均衡器创建失败。

    仅仅切换到 service 项目对于现有部署来说也存在问题。 虽然现有的负载均衡器似乎可以继续工作,但由于安全组属于 admin 项目,因此创建新的负载均衡器会失败。 因此,Train 和 Stein 已恢复为默认使用 admin 项目,而从 Ussuri 版本开始,service 项目将默认使用。

    为了提供灵活性,添加了一个 octavia_service_auth_project 变量。 在 Train 和 Stein 版本中,默认设置为 admin,从 Ussuri 开始,默认设置为 service。 对于 Train 和 Stein 的用户,可以将 octavia_service_auth_project 设置为 service,以避免在 Ussuri 升级期间出现破坏性更改。

    要将现有部署从使用 admin 项目切换到 service 项目,至少需要创建所需的安全组在 service 项目中,并将 octavia_amp_secgroup_list 更新为该组的 ID。理想情况下,Amphora flavor 和网络也应在 service 项目中重新创建,尽管这似乎对操作没有必要,并且会影响现有的 Amphorae。

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

  • 现在,只要启用 Apache Storm,Apache ZooKeeper 就会自动部署。

错误修复

  • 修复了使用新的 E*K 堆栈(6+)的 Kibana 部署。 LP#1799689

  • 如果启用了容器化的 chrony,则从 docker 主机中移除 chrony 包和 AppArmor 配置文件。 LP#1882513

  • 不再要求安装 kolla-ansible (仅 Stein)。 LP#1882780

  • 添加了在某些 VMware 相关任务上缺失的“become: true”。修复了 复制 VMware vCenter CA 文件复制 nsx.ini 中的问题。

  • 与 Magnum、Cinder 和 Octavia 使用的服务的客户端保持一致,这些服务现在使用全局定义的 openstack_region_name

  • 修复了 Cinder 升级中导致在线模式迁移失败的问题。 LP#1880753

  • 修复了 fernet_token_expiry 即使设置为有效值,也会导致预检查失败的问题。请参阅 bug 1856021 以获取更多详细信息。

  • 在之前的稳定版本中,octavia 用户不再在 admin 项目中获得 admin 角色,并且在升级期间添加了一个任务来删除该角色。 但是,Octavia 配置未更新为使用 service 项目,导致负载均衡器创建失败。 请参阅升级说明以获取详细信息。 LP#1873176

  • 改进了 kolla-genpwdkolla-mergepwd 在输入文件格式不符合预期时错误报告。 LP#1880220

  • 修复了多区域部署中的 Magnum trust 操作。

  • 修复了一个问题,即主机配置任务 (sysctl、加载内核模块) 可能会在 kolla-ansible genconfig 命令期间执行。详情请参阅 bug 1860161

  • 如果显式启用 Apache Storm,则部署 Apache ZooKeeper。 只有在也启用 Monasca 时,ZooKeeper 才会部署,通常是隐式完成的。

8.1.1

升级说明

  • octavia 用户不再在 admin 项目中获得 admin 角色。 Octavia 不需要此角色,而是使用在 service 项目中具有 admin 角色的 octavia 用户。 在升级期间,octavia 用户将从 admin 项目中删除。 请参阅 bug 1873176 以获取详细信息。

错误修复

  • enable_barbican 设置为 true 时,向 octavia.conf 添加必要的 region_nameLP#1867926

  • Debian/Ubuntu 容器添加 /etc/timezoneLP#1821592

  • 修复了 Nova 实时迁移未使用 migration_interface_address 的问题,即使未使用 TLS。当将实例迁移到新添加的计算主机时,如果寻址依赖于 /etc/hosts 并且尚未在源计算主机上更新以包含新的计算主机,则实时迁移将失败。这不会影响基于 DNS 的名称解析。类似地,如果 DNS//etc/hosts 中的地址与用户自定义的 migration_interface_address 不相同,Nova 实时迁移将失败。 LP#1729566

  • 修复 qemu 加载 ceph.conf(权限错误)。 LP#1861513

  • 移除 Neutron 服务中的 /run 绑定挂载,导致 dbus 主机级别错误,并为 neutron-dhcp-agent 和 neutron-l3-agent 添加 /run/netns。 LP#1861792

  • 修复了 fluentd 部署中,即使从 node_custom_config 目录中移除,旧的 fluentd 配置文件在容器重启后仍然存在的问题。 LP#1862211

  • 使用更宽松的正则表达式移除 /etc/hosts 中的冒犯性 127.0.1.1 行。 LP#1862739

  • 每个 Prometheus mysqld 导出器现在指向其本地 mysqld 实例(MariaDB),而不是 VIP 地址。 LP#1863041

  • Cinder Backup 现在可以访问内核模块以加载例如 iscsi_tcp 模块。 LP#1863094

  • 通过要求解析的唯一性来加强 RabbitMQ 主机名地址解析的预检查,以避免后续问题。 LP#1863363

  • 修复了 haproxy 角色,以避免在单个 Ansible 运行中多次重启 haproxy 服务。 LP#1864810 LP#1875228

  • 修复了由于引用了错误的变量而导致 telegraf 无法监控 zookeeper 的问题。 LP#1867179

  • 修复了 ceph 部署重新配置错误,在收集 OSD 步骤由于 Kolla-Ansible 用户无法访问 /var/lib/ceph/osd/_FSID_/whoami 而失败。 LP#1867946

  • 修复了 designate-worker 不使用 etcd 作为其协调后端,因为 Designate 不支持它(通过 tooz 没有可用的组成员资格支持)。 LP#1872205

  • 修复了在使用“拆分”HAProxy 服务模板时,Horizon 基于源 IP 的负载均衡的问题。

  • 修复了在使用“拆分”配置模板样式时,HAProxy 在其配置文件中没有后端服务器的问题。

  • 通过 openstack_service_workers 变量管理 nova 调度器工作进程。 LP#1873753

  • 移除 Swift 环的元字段,从默认 rsync_module 模板中移除。默认情况下拥有它,未记录,可能导致在 Swift 文档声明该字段未被处理时出现意外行为。

  • 修复了在使用 --limit--serial 进行扩展时,HAProxy 预检查出现的问题。 LP#1868986

  • 修复了当某些 HAProxy 实例正在运行而另一些实例未运行时,HAProxy 监视 VIP 预检查出现的问题。请参阅 bug 1866617

  • 修复了 Ubuntu/Debian 二进制部署中 gnocchi-api 脚本名称的问题。 LP#1861688

  • 修复了 Placement 服务端口预检查的问题。详情请参阅 bug 1861189

  • 移除了默认 InfluxDB 配置中的 [http]/max-row-limit = 10000 设置,该设置导致 CloudKitty v1 API 在使用 InfluxDB 作为存储后端时仅返回 10000 个数据帧。详情请参阅 bug 1862358

  • Skydive 的 API 和 Web UI 现在依赖于 Keystone 进行身份验证。只有在 skydive_admin_tenant_name 定义的 Keystone 项目中的用户才能进行身份验证。有关更多详细信息,请参阅 LP#1870903 <https://launchpad.net/bugs/1870903>

  • 将 octavia 与 barbican 服务通信的 endpoint_type 从 public 更改为 internal。详情请参阅 bug 1875618

8.1.0

新特性

  • 为 Kolla-Ansible 添加了 Cloudkitty InfluxDB 存储系统部署的支持。

  • HAProxy - 添加在 {{ node_custom_config }}/haproxy/services.d/ 中定义自定义 HAProxy 服务的支持。

  • Designate 协调后端现在可以通过 designate_coordination_backend 变量进行配置。 在多节点环境中部署多个 worker 时,协调是强制性的。 可能的值是 redis 或 etcd。

  • 添加了将额外选项传递给 Prometheus 的支持。

升级说明

  • 在之前的稳定版本中,Cloudkitty 的默认存储后端更改为 InfluxDB,以匹配 Stein 及更高版本中的 Cloudkitty 默认设置。 这由 cloudkitty_storage_backend 控制。 要使用以前的默认设置,请将 cloudkitty_storage_backend 设置为 sqlalchemy。 请参阅 bug 1838641 以获取详细信息。

  • 修改了 swift.conf 自定义配置的路径,从 /etc/kolla/config/swift/<service>.conf 更改为 /etc/kolla/config/swift/<service>/swift.conf,以避免与 <service>.conf 的自定义配置冲突。 在这里,<service> 可以是 proxy-serveraccount-*container-*object-*

  • HAProxy 后端的默认连接限制为 2000,但是 MariaDB 默认限制为 10000 个连接。 这已更改为匹配 MariaDB 限制。

    ‘haproxy_max_connections’ 也已增加到 40000 以适应此更改。

  • 更改数据库备份过程以使用 mariabackup,该工具与 MariaDB 10.3 兼容。 之前使用的基于 qpress 的压缩现在被 gzip 替换。 记录的恢复过程已相应修改。 有关更多信息,请参阅 Mariabackup 文档

  • Heat 角色已停止禁用已弃用的插件。 要将此更改应用于现有部署,文件 /etc/kolla/heat-engine/_deprecated.yaml 在升级期间会自动删除。

弃用说明

  • 变量 enable_xtrabackup 已被弃用,取而代之的是 enable_mariabackup

错误修复

  • 当使用 etcdcinder_coordination_backend 和/或 designate_coordination_backend 时,配置已更改为使用 etcd3gw(也称为 etcd3+httptooz 协调驱动程序,而不是 etcd3,因为后者可用性和稳定性存在问题。 etcd3 无法很好地处理基于 eventlet 的服务,例如 cinder 和 designate 的服务。 请参阅 bug 18520861854932 以获取详细信息。 另请参阅 引入 etcd3gw 的 tooz 更改

  • 添加了配置,以便在为 Designate 使用 Infoblox 后端时,在 pools.yaml 文件中设置 also_notifies

    向主节点推送 DNS NOTIFY 数据包不会导致 DNS 更新传播到群集中的其他节点。这意味着需要向每个节点发送 DNS NOTIFY 数据包,否则如果用户查询任何工作节点,可能会收到陈旧的 DNS 记录。有关详细信息,请参阅 bug 1855085

  • 修复了 Docker 客户端超时问题,其中 Docker 报告“读取超时”。客户端超时可以通过 docker_client_timeout 进行配置。默认超时已增加到 120 秒。有关详细信息,请参阅 bug

  • 修复了一个问题,镜像拉取失败可能导致容器被移除且无法替换。详情请参阅 bug 1852572

  • 修复了 Swift 卷在内核 4.19 及更高版本上挂载失败的问题,原因是 XFS 挂载选项中移除了 nobarrier。详情请参阅 bug 1800132

  • 修复了 fluentd 解析 Aodh、Masakari、Qinling、Vitrage 和 Zun 的 WSGI 日志的问题。详情请参阅 bug 1720371

  • 修复了 glance_api 以特权模式运行,并添加了缺失的挂载点,以便它可以将 iscsi cinder 后端用作其存储。 LP#1855695

  • 从 Rocky 升级到 Stein 时,HAProxy 配置从使用单个配置更改为为每个服务组装一个文件。将 HAProxy 标签应用于整个 playbook 确保在指定 HAProxy 标签时为所有服务生成 HAProxy 配置。有关详细信息,请参阅 bug 1855094

  • 修复了禁用 Alertmanager 时 Prometheus 配置的模板问题。在启用了 Prometheus 且禁用了 Alertmanager 的部署中,由于变量 prometheus_alert_rules 不包含键 files,因此在模板化时 Prometheus 的配置将失败。 LP#1854540

8.0.1

新特性

  • Kolla Ansible 现在可以配置部署的 docker 用于 Zun。 启用 docker_configure_for_zun(默认禁用以保持向后兼容性)。

  • Neutron 端口转发服务插件和 l3 扩展可以通过变量 enable_neutron_port_forwarding 启用。

  • 合并操作插件(用于 config/ini 和 yaml 文件)现在允许像上游模板模块一样进行相对导入,例如,现在可以从与基本模板相同的目录中包含子模板。

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

升级说明

  • 基于 RHEL 的目标不再需要 EPEL 存储库。 如果未使用,可以安全地从目标主机中删除它。

弃用说明

8.0.0

序言

Kolla Ansible 8.0.0 版本是 Stein 周期中的第一个版本。 主要亮点包括对 OpenStack Monasca 项目的完全支持、Placement 服务(已从 Nova 中提取)的支持以及执行 MariaDB 数据库的完全或增量备份的支持。

新特性

  • 添加了支持部署 ceilometer_ipmi 容器以收集 IPMI 上的 Ceilometer 指标。

  • 添加了在 Cinder 和 Nova 中支持 Quobyte 卷。

  • 添加了对部署 OpenStack Cyborg 服务的支持。 Cyborg 是一个用于管理硬件加速器的服务。

  • 添加了对专用迁移网络的的支持。 这通过变量 migration_interfacemigration_interface_address 进行配置。

  • 添加了对部署 Monasca fork 的 Grafana 的支持,其中包括 Keystone 集成。

  • 添加了对部署 Monasca Log Metrics 服务的支持。 此服务负责从日志文件中生成指标。

  • 添加了对部署 Monasca Notification 服务的支持。 Notification 服务负责在 Monasca API 定义的警报由 Monasca Thresh 拓扑生成时通知用户。

  • 添加了对部署 Monasca Persister 进程的支持。 Persister 负责从 Kafka 读取指标、警报和事件,并将其存储在各种后端中。

  • 添加了对部署 Monasca thresh 服务的支持,该服务是用于警报的 Apache Storm 拓扑。

  • 添加了对部署 Neutron 计量代理的支持。

  • 添加了对配置 Octavia 中的自定义策略的支持。

  • 添加了对使用 Octavia 的单独网络的支持。 这通过 octavia_network_interfaceoctavia_network_interface_address 进行配置。

  • 添加了一个选项 haproxy_nova_serialconsole_proxy_tunnel_timeout,以配置 nova_serialconsole_proxy 隧道超时。 默认情况下,保持 websocket 连接活跃 10 分钟。

  • 自动将 Prometheus 配置为 Vitrage 数据源。

  • 添加了对部署 Monasca Agent 的支持,该 Agent 提供主机和应用程序特定的监控数据收集和转发。

  • 添加了对配置 nova_libvirt 容器中的最大文件和进程限制的支持,通过变量 qemu_max_filesqemu_max_processes。 这些默认值分别为 32768 和 131072。 当 Nova 使用 Ceph 作为后端时,这很有用,因为默认限制 1024 通常不够。

  • 添加了对配置容器中 ulimit 的支持,扩展了 Rocky 版本中添加的维度支持。

  • 添加了一个配置选项 enable_keepalived,以允许禁用 keepalived 服务。 当在 HAProxy 前面使用外部负载均衡器时,这很有用。

  • 添加了对在 release 文件中配置 vendor info 的 Nova 的支持。 为此,请将文件放在以下位置之一:

    • /etc/kolla/config/nova/release

    • /etc/kolla/config/nova_compute/release

    • /etc/kolla/config/nova_compute/{{ inventory_hostname }}/release

    可以在 https://github.com/openstack/nova/blob/2025.2/etc/nova/release.sample 中查看示例文件

  • 增加了使用 kolla-ansible bootstrap-servers 命令安装 Docker Community Edition (CE) 的支持。 现有的支持使用来自 https://dockerproject.org 的旧版本软件包。 新软件包通过 https://download.docker.com 分发,现在支持该位置并默认使用。 通过将变量 docker_legacy_packages 设置为 true 来启用旧版本软件包的使用。

    现在也可以通过将变量 enable_docker_repo 设置为 false 来跳过 Docker 仓库的配置。

  • 增加了配置自定义 fluentd 格式的能力。

    在某些情况下,配置自定义 fluentd 格式可能很有用,例如将事件转换为 JSON。

    可以通过将输出配置文件放置在 /etc/kolla/config/fluentd/format/*.conf 中来配置自定义 fluentd 格式。

  • 增加了配置自定义 fluentd 输入的能力。

    可以通过将输入配置文件放置在 /etc/kolla/config/fluentd/input/*.conf 中来配置自定义 fluentd 输入。

  • 增加了配置 glance-cache 的支持,通过 enable_glance_image_cache 启用。 缓存大小通过 glance_cache_max_size 配置。

  • 实现了 Neutron 滚动升级逻辑,应用于 Neutron 服务器、VPNaaS 和 FWaaS,因为只有这些项目支持滚动升级数据库迁移。

  • 实现了 Nova 滚动升级逻辑。

  • 实现了 Swift 滚动升级逻辑,通过 swift_enable_rolling_upgrade 启用,默认值为 true

  • 增加了对 Ironic Inspector dnsmasq PXE 过滤器 的支持,该过滤器比默认的 IPTables PXE 过滤器提供更高的可扩展性。 现在默认使用它,而不是 iptables PXE 过滤器。 可以通过将 ironic_inspector_pxe_filter 设置为 iptables 来启用 iptables 过滤器。

  • 增加了一个新标志 enable_openstack_core,默认值为 yes。 将此标志设置为 no 将禁用核心 OpenStack 服务,包括 Glance、Heat、Horizon、Keystone、Neutron 和 Nova。

  • 改进了在独立模式下使用时 OpenStack Ironic 的默认配置。

  • 增加了通过 /etc/kolla/config/kibana/kibana.yml 提供自定义 kibana 配置的支持。

  • Docker 日志不再允许无限制地增长,并且已限制为每个容器的固定大小。 添加了两个新变量,docker_log_max_filedocker_log_max_size,默认值分别为 5 和 50MB。 这意味着对于每个容器,Docker 日志不应超过 250MB。

  • 增加了从 kolla_logs docker 卷到 /var/log/kolla 的符号链接,以便更容易找到日志文件。 卷路径与 docker-engine 和 docker-ce 兼容。

  • 增加了使用 Percona XtraBackup 对所有 MariaDB 托管数据库进行备份的支持。

  • 增加了支持加载容器所需的内核模块。 这是必需的,因为 kolla 镜像在 Stein 版本中删除了从容器内部加载内核模块的支持。

  • opendaylight_release 变量已被删除,版本在启动特性时自动发现。

  • 公开了一个配置选项以启用 ceph manager prometheus 插件,这也会为每个 ceph-mgr 主机在 prometheus-server 配置中启用导出器。

  • HAProxy 配置现在按服务拆分,这使得创建和更新服务配置更加简单。

  • 增加了使用 kolla-ansible stop 命令停止服务的功能。 此功能允许使用 --tags--limit 停止特定服务,以将更改限制为一部分主机。

  • 添加了 kolla_docker 中的新参数以支持配置容器中的 TTY,默认值为 False

  • 增加了将 Swift 访问和复制流量与其他存储流量分离的支持。

    在部署了 Ceph 和 Swift 的部署中,此更改增加了对可选存储网络流量分离的支持。 这添加了两个新的网络接口 swift_storage_interfaceswift_replication_interface,它们保持向后兼容性。

    Swift 访问网络接口通过 swift_storage_interface 配置,默认值为 storage_interface。 Swift 复制网络接口通过 swift_replication_interface 配置,默认值为 swift_storage_interface

    如果使用单独的复制网络,Kolla Ansible 现在为帐户、容器和对象部署单独的复制服务器,这些服务器侦听此网络。 在这种情况下,这些服务仅处理复制流量,而原始帐户、容器和对象服务器仅处理存储用户请求。

  • 增加了配置变量以启用/禁用即使服务未由 kolla-ansible 部署,每个服务的自定义 horizon 策略文件。

升级说明

  • 更新了 Ansible 的最低要求版本为 2.5。

  • 通过 kolla-ansible certificates 生成的证书的默认路径已更改,从 {[ node_config_directory }}/certificates 更改为 {{ node_config }}{{ node_config }} 是包含 globals.yml 的目录,默认情况下为 /etc/kolla/。 这使得证书与 admin-openrc.sh 等其他本地生成的文件保持一致。

  • docker_legacy_packages 的默认值为 false,这意味着应安装 Docker Community Edition (CE)。 如果在先前部署的主机上运行旧版 Docker 引擎的情况下使用 kolla-ansible bootstrap-servers 命令,则会导致 Docker 引擎升级为使用 Docker Community Edition 软件包,这将导致 Docker 引擎和该主机上运行的容器重新启动。 使用 kolla-ansible --serial--limit 参数以避免在 MariaDB 等集群服务中通过一次性重新启动所有容器而导致失去仲裁。

  • Keystone fernet 密钥轮换调度算法已修改,以避免因密钥过度轮换而导致的问题。

    可以设置变量 fernet_token_expiryfernet_token_allow_expired_windowfernet_key_rotation_interval 来配置令牌过期和密钥轮换计划。

    默认情况下,fernet_token_expiry 为 86400,fernet_token_allow_expired_window 为 172800,fernet_key_rotation_interval 是这两个变量之和。 这允许最小数量的活动密钥 - 3。

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

  • 增加了 swift 作为 gnocchi 存储选项。 以下是 gnocchi 的存储选项:a) 如果启用了 swift,则使用 swift。 b) 如果启用了 ceph,则使用 ceph。 c) 如果启用了 swift 和 ceph,则默认使用文件。 如果同时启用了 swift 和 ceph,则用户必须显式设置为 swift 或 ceph。

  • Bare Metal Inspection 服务现在配置为将来自 inspection ramdisk 的日志存储在 kolla_logs Docker 卷中。

  • Ironic Inspector 默认使用的 PXE 过滤器现在是 dnsmasq 而不是 iptables。 进行了此更改以解决迁移到 Docker CE 引入的问题,在该问题中,守护程序将默认策略设置为 iptables FORWARD 链为 DROP。 此策略可能会与 Ironic Inspector iptables PXE 过滤器交互,导致来自裸机节点的 DHCP 数据包被丢弃,从而阻止配置。

  • 先前已弃用的计算组 inner-computeexternal-compute 现在已被删除,取而代之的是更简单的 compute 组。 请务必更新您的清单。 在您希望自定义 neutron 的 agent_mode 值的节点上设置 neutron_compute_dvr_mode

  • 所有与 HAProxy 相关的变量都已从 haproxy 角色移动到 haproxy-common 角色,以下例外情况也拆分并重命名了移动之后

    • haproxy_listen_tcp_extra 变为 haproxy_frontend_tcp_extrahaproxy_backend_tcp_extra

    • haproxy_listen_http_extra 变为 haproxy_frontend_http_extrahaproxy_backend_http_extra

  • 以下其他与 haproxy 相关的变量已在 haproxy-common 角色中创建

    • haproxy_http_request_timeout:haproxy 的默认 http 请求超时时间

    • haproxy_queue_timeout:haproxy 的默认队列超时时间

    • haproxy_connect_timeout:haproxy 的默认连接超时时间

    • haproxy_check_timeout:haproxy 的默认检查超时时间

    • haproxy_health_check:haproxy 的默认健康检查字符串

    • haproxy_service_template:选择要使用的 haproxy 配置样式

  • Rabbitmq 已更新到 3.7.x。 这带来了新的配置格式,现在称为 rabbitmq.conf 而不是 rabbitmq.config。

弃用说明

  • 弃用部署 Ceph 的支持。 在未来的版本中,将从 Kolla Ansible 中删除部署 Ceph 的支持。 在此之前,我们将确保提供迁移到其他工具(例如 Ceph Ansible)的路径。 对于新部署,建议使用其他工具部署 Ceph,以避免未来的迁移。

  • 变量 cinder_iscsi_helper 已重命名为 cinder_target_helper。 使用 cinder_iscsi_helper 已被弃用,将在 Train 版本期间或之后删除。

安全问题

  • 当启用 MariaDB 备份选项时,它将创建一个新的数据库,用于跟踪与备份相关的元数据,以及一个具有特定权限的新备份用户,这些权限仅限于与备份相关的操作。

错误修复

  • 将系统主机名添加到 /etc/hosts,如果与短主机名不同。 这可以在某些情况下修复 Nova 实例的实时迁移。 有关详细信息,请参阅 bug 1830023

其他说明

  • 虽然 Kolla Ansible 现在避免在更改消息传递或数据库连接信息时复制 Nova 单元,但现有部署的运营商应使用运行 nova_api 镜像的容器中的 nova-manage cell_v2 命令手动清理重复的单元,只留下两个单元,一个名为 cell0,另一个具有正确的连接信息。