Victoria 系列 (8.2.0 - 9.0.x) 发布说明¶
9.1.0-4¶
弃用说明¶
不再在 CI 中测试 Fedora 的支持,并且将在不久的将来从代码中移除。
9.1.0¶
升级说明¶
在 公告 由 CentOS 项目发布后,Bifrost 已切换到 CentOS Stream 进行测试。常规 CentOS 不再在 CI 中进行测试,这意味着它和 RHEL 仅会间接进行测试,并以尽力支持的方式提供支持。
将 Diskimage Builder (DIB) 的软件包依赖项安装从
bifrost-create-dib-image角色移动到bifrost-install-ironic角色。这提供了安装和镜像创建之间更清晰的分离。
错误修复¶
修复了在使用
BIFROST_INVENTORY_SOURCE=ironic时 Bifrost 库存插件的问题。现在所有节点字段都将作为事实返回,就像在 Ussuri 及更早版本中一样。有关详细信息,请参阅 故事 2008394。
修复了检查后的快速跟踪:
fast_track和power_off_after_inspection选项现在得到正确处理。
修复了将带有空格的参数传递给
bifrost-cli的问题。
修复了由于缺少
squashfs-tools软件包而导致构建 Ubuntu 镜像时发生的故障。
9.0.1¶
弃用说明¶
Fedora 30 已达到生命周期结束,不再明确测试。其支持将在未来的某个版本中移除。
openSUSE Leap 15.1 即将达到生命周期结束,不再明确测试。其支持将在未来的某个版本中移除。
错误修复¶
在生成的
openrc中取消设置OS_CLOUD变量。
OS_AUTH_TYPE现在始终在生成的openrc中设置。
在 Fedora 32 及更高版本上现在使用 FirewallD 来修复防火墙问题。
将 ironic-lib rootwrap.d 过滤器复制到正确的位置。
正确复制升级时的 rootwrap.d 过滤器。
在不使用 firewalld 的系统(例如 Ubuntu)上显式打开端口 68 和 69。
修复
PATH,以便在运行验证时始终包含虚拟环境。
其他说明¶
已将 Fedora 32 和 openSUSE Leap 15.2 添加到受支持的操作系统列表中。
9.0.0¶
新特性¶
添加了支持安装 Ironic Prometheus Exporter。可以通过
bifrost-cli使用--enable-prometheus-exporter选项来完成,或者在部署时设置 enable_prometheus_expoter=True。
现在,
network_interface的第一个 IPv4 地址用于在clouds.yaml中以及在openrc中的 ironic 和 ironic-inspector API URL,而不是localhost。使用ironic_api_url和ironic_inspector_api_url来覆盖。
现在
bifrost-keystone-client-config角色会验证使用生成的配置的 CLI 访问是否实际有效,使用skip_validation=false来禁用。
支持通过设置
enable_tls=true并且可选地generate_tls=true来配置 TLS。相应的bifrost-cli参数是--enable-tls(仅自动生成证书)。
现在
bifrost-ironic-install角色会验证服务是否已成功启动,使用skip_validation来禁用。
已知问题¶
由于 Ansible 依赖关系,Bifrost 仅适用于使用
--system-site-packages创建的虚拟环境。
在使用 Keystone 进行身份验证时,如果证书位于非标准位置,则可能无法在启用后禁用 TLS。
由于升级限制,可能无法在从以前的版本升级时启用 TLS。先进行升级,然后在单独的安装步骤中启用 TLS。
升级说明¶
不再支持
use_public_urls参数,只需提供public_ip即可。
Bifrost 不再将 ironic 和 ironic-inspector 端点添加到公共 firewalld 区域,操作员必须显式地执行此操作,如果需要外部访问。
已移除对旧版 CSV 库存格式的支持,现在仅支持 JSON 和 YAML。
已移除对安装和使用 RabbitMQ 的支持。
已移除将内省数据存储在 nginx 中的支持。在 ironic-inspector 开始支持将数据存储在数据库中之前,这很有用,而现在数据库是默认设置。
已从
bifrost-configdrives-dynamic角色中移除对 OpenStack MetaData 版本 2012-08-10 的支持。现在支持的最新元数据版本是 2015-10-15。
已移除已弃用的参数
node_network_info,请使用node_network_data代替。
为确保无论使用哪个 Ansible 版本,都能使“/httpboot”的内容可供世界读取,已添加对 bifrost ansible playbook 中 get_url 调用设置文件访问权限的显式设置。
默认情况下,现在使用打包的 iPXE ROM 在 openSUSE 上使用,设置
download_ipxe=true以覆盖。
Bifrost 不会再为您杀死所有正在运行的 dnsmasq 进程。如果您有未由 systemd 管理的 dnsmasq 进程,则必须自行停止它们。
不再支持在虚拟环境之外进行安装。已移除参数
enable_venv。
错误修复¶
修复了 bifrost-create-dib-image 角色覆盖任何现有 ELEMENTS_PATH 环境变量值的问题。此修复会将任何现有的 ELEMENTS_PATH 值附加到角色中设置的路径。
对 keystone 端点配置的更改现在会自动反映在现有端点上。
使用
copy_from_local_path复制的存储库现在得到正确更新。
在使用
copy_from_local_path复制存储库时,请确保它们始终由调用用户拥有。 之前,某些存储库可能最终由root拥有。
正确更新了重大升级时的 IPA 镜像校验和。
自动在 CentOS/RHEL 上启用 firewalld 中的 DHCP 和 TFTP 服务。
不再修改
publicfirewalld 区域,而是创建一个新的区域bifrost并将network_interface放入其中。设置firewalld_internal_zone=public以恢复到以前的行为。
使
/var/lib/ironic及其镜像子目录可被 nginx 读取。这对于使用镜像缓存是必需的。
修复了 PXE 和 iPXE 启动文件的 ACL,以确保它们可供世界读取。
解决了 ansible 版本 2.9.12 和 2.8.14 中,使用 get_url 调用下载的文件上隐式设置文件权限导致权限过于严格的问题。这导致在尝试读取“/httpboot”的内容时出现访问被拒绝的情况,并导致部署失败。
确保存储库始终由调用用户拥有。
移除了
test_vm_network_enable_dhcp选项,并禁用了 libvirt 网络上的 DHCP,而不是无条件杀死机器上的所有 dnsmasq 进程。
为
/tftpboot添加了正确的 SELinux 上下文。
其他说明¶
已移除文件
env-vars。它包含仅适用于无身份验证模式且仅适用于 ironic 本身的变量(不适用于 inspector)。使用生成的clouds.yaml或主目录中的openrc。
Ubuntu 的主要受支持版本现在是 20.04 (Focal)。Ubuntu 18.04 (Bionic) 仍然受支持,但将来可能会移除。
Ironic JSON RPC 现在始终进行身份验证,即使在无身份验证模式下也是如此。
移除了不再使用的变量
transform_boot_image。