2026.1 项目工作项¶
OpenStack Ironic 虚拟项目团队会议于 2025 年 10 月举行。Ironic 开发人员和运维人员讨论了许多潜在的功能和其他正在进行的工作,用于 2026.1 (Gazpacho) 版本。这些讨论记录在此文档中,提供了下一个开发周期的主要优先级列表。有关更多信息,请查看每个主题的链接,或通过 OFTC 的 #openstack-discuss 频道或 openstack-discuss 邮件列表联系 Ironic 团队。
Ironic 贡献者们工作繁忙,他们的工作涉及多个开源项目,并承担不同的下游责任。我们无法保证任何或全部计划中的工作都能完成,这也不是 Ironic 团队成员未来六个月内可能做的一切事情的完整列表。
- 表格中的每个项目都包括
工作项名称,链接到描述
- 类别可以是…
维护:保持 Ironic 正常运行必须执行的工作
Bugfix:增强现有代码以覆盖更多边缘情况并解决 bug 的工作
Feature:一个以前不存在的新 Ironic 功能
Champions 是最熟悉相关技术的人员,如果您想实施工作项,他们是一个很好的资源。
跟踪链接是指通常跟踪工作的 bug 链接。
名称 |
类别 |
跟踪 |
Champions |
|---|---|---|---|
Feature |
cid, dtantsur, iurygregory |
||
Feature |
https://review.opendev.org/c/openstack/ironic-specs/+/954612 |
TheJulia, dtantsur, cid |
|
维护 |
N/A |
iurygregory |
|
Feature |
TheJulia, cardoe |
||
Feature |
stevebaker, TheJulia |
||
Feature |
clif, JayF, TheJulia |
||
Feature |
https://review.opendev.org/c/openstack/ironic-specs/+/959401 |
cardoe, TheJulia |
|
Feature |
N/A |
alegacy, dtantsur, JayF |
|
维护 |
stephenfin, adammcarthur5 |
||
Feature |
cid |
||
Feature |
N/A |
janders, dtantsur |
|
维护 |
rpittau |
||
维护 |
N/A |
JayF, janders, iurygregory |
目标详情¶
后 eventlet 性能改进¶
在后 eventlet 时代,Ironic 有机会实现 async/await 模式,从而实现指标收集和电源同步的高并行性。这项工作将侧重于传感器数据收集的概念验证实现,特别关注 Redfish 会话缓存。目标是衡量性能改进,并确定 Ironic 中异步实现的适当范围。
这项工作最初将侧重于管理和电源驱动程序接口,因为这些是我们可以从并行性中获得最大收益的领域。团队将使用 sushy-tools 创建具有许多节点的测试环境,并在实施前后测量性能改进。
延迟任务¶
目标是消除 conductor 线程中的 sleep() 调用,这在后 eventlet 时代尤其昂贵。延迟任务将允许 Ironic 安排稍后执行的工作,例如从端口绑定恢复、检查 BMC 就绪状态和处理固件升级。这项工作与 async/await 实现重叠,并且这两个努力将协调进行。
初始实现不会暴露公共 API,以防止滥用。是否添加 API 端点将重新评估在 async/await 设计最终确定之后。
Sushy 集成到 Ironic¶
团队正在评估将 sushy 移动到 ironic 仓库中,以减少维护开销、简化发布并消除项目之间的 API 表面管理。这种改变将类似于 ironic-lib 集成。已经启动了邮件列表讨论,以收集社区反馈,然后再进行此更改。
我们打算即使模块本身可能移动到 ironic 中,也允许 sushy 导入。
NVMe-over-TCP 支持¶
这项工作将为 Ironic 添加对 NVMe-over-TCP 卷附件的支持,包括
添加 NVMe-over-TCP 连接器支持
实施 BMC 配置以进行 NVMe 启动
与 Cinder 和 Nova 协调附件流程改进
这项工作将使操作员能够使用现代存储协议进行裸机,对于使用主要支持 NVMe-over-TCP 的存储阵列的操作员尤其重要。
图形化控制台改进¶
在之前周期的图形化控制台工作的基础上,这项工作侧重于
合并剩余的集成测试更改
为 Nova 集成用户公开图形化控制台功能
实施其他控制台驱动程序(例如,基于 Kubernetes 的驱动程序)
将浏览器工具切换为使用 Firefox 扩展
这项工作需要与 Nova 和部署项目协调,以确保该功能被广泛使用。
基于 Trait 的网络¶
继续之前周期的工作,以基于配置中定义的 traits 实现动态端口和端口组附件。当前状态
端口和端口组模型更改基本完成
过滤器表达式的语法和解析完成
配置文件实现接近完成
网络规划和操作生成正在进行中
下一步:在配置时执行操作,动态端口组装
这项工作能够实现更灵活的网络配置,并为其他网络改进奠定基础。
VXLAN 附件¶
操作员们对在没有本机 VXLAN 支持的情况下扩展环境表示担忧。这项工作将使裸机节点能够连接到 VXLAN 网络,从而解决 VLAN 扩展限制。这需要
Neutron ML2 插件支持具有物理网络的 VXLAN
Ironic 支持 VXLAN 绑定
与 networking-generic-switch 协调进行交换机配置
这项工作对于已经耗尽 VLAN 空间的大规模部署尤其重要。
独立网络¶
网络代表着 Ironic 真正独立的下一步,寻找替代 OpenStack 集成场景,从而替代 Neutron。在上一个周期中,讨论转化为代码,实施工作开始了。
已经编写了一个独立网络的可用原型,预计在本周期合并,支持使用 networking-generic-switch 直接从 ironic 调用将节点放置到 VLAN 中。
API 响应模式验证,OpenAPI 规范¶
继续之前周期的工作。Ironic 团队正在从 API 代码生成 OpenAPI 规范文档,并重构微版本处理。这项工作将在 2026.1 周期中以新的活力继续进行。
通过 NFS 和 SMB 的 Redfish 虚拟介质¶
一些 BMC 不支持虚拟介质的 HTTPS,需要 NFS 或 SMB/CIFS 共享。这项工作将添加对这些传输协议的支持,但可能不包括 ironic 对实际网络文件系统服务的管理。
硬件健康监控¶
添加基于 Redfish 系统状态字段的基本硬件健康监控。这将从系统和潜在的网络适配器收集健康状态,将状态更改记录在节点历史记录中,并通过 API 公开信息。这项工作利用现有的电源同步循环来收集其他硬件状态信息。
这项工作还将研究将健康状态代理到 Metal3 的 BareMetalHost.Status,用于基于 Kubernetes 的部署。
数据库字符集迁移¶
MySQL 的 3 字节 UTF-8 字符集编码已被弃用。Ironic 需要迁移到 4 字节 UTF-8 (utf8mb4) 编码。这将需要数据库迁移,并与部署项目协调,以确保顺利升级。
我们预计这将是未来几个周期的 OpenStack 范围内的优先级,Ironic 团队已准备好尽我们的一份力量。
驱动程序淘汰¶
由于依赖于与兼容版本 pysnmp,而这些版本未进行安全更新,并且没有志愿者对其进行现代化改造,因此 iLO 驱动程序将被弃用并淘汰。iRMC 驱动程序同样通过 snmp 驱动程序依赖于 pysnmp,除非富士通或 iRMC 的用户能够承诺上游维护,否则其弃用将继续进行。
在删除之前,这两个驱动程序将收到升级检查(回溯到上一个版本),警告有关弃用。
维护任务¶
在发布周期内,项目领导必须执行一些定期任务。这些任务应在每个计划的团队会议上跟进,以确保正在执行。
项目 |
文档 |
频率 |
负责人 |
|---|---|---|---|
发布 bugfix 分支 |
https://docs.openstack.org/ironic/latest/contributor/releasing.html#bugfix-branches |
每个周期两个额外的发布,大约在里程碑 1 和 2 处。 |
DPL 发布联络人 |
淘汰过期的 bugfix 分支 |
https://docs.openstack.org/ironic/latest/contributor/releasing.html#bugfix-branches |
超过 9 个月的 bugfix 分支必须被淘汰。 |
DPL 发布联络人 |
Bug 三级分类 |
https://docs.openstack.org/ironic/latest/contributor/bug-deputy.html |
三级分类并回复 bug,确保定期 CI 正常。 |
会议中轮换的志愿者“副手” |
发布截止日期 |
https://docs.openstack.org/ironic/latest/contributor/releasing.html |
确保我们满足各种发布截止日期和冻结时间。 |
DPL 发布联络人 |
发布计划¶
贡献者在选择要处理的项目时,请记住我们的计划发布。
以下日期仅供参考;请查看 https://releases.openstack.org/gazpacho/schedule.html 以获取与发布相关的完整时间表,以及 https://docs.openstack.org/ironic/latest/contributor/releasing.html 以获取 Ironic 特定的发布信息。
Bugfix Release 1¶
第一个 bugfix 发布计划于 2025 年 11 月最后一周进行。
Bugfix release 2¶
第二个 bugfix 发布计划于 2026 年 1 月最后一周进行。
Deadline Week¶
在发布的最后几周有多个截止日期/冻结期,请参阅发布时间表以获取确切日期。
最终 2026.1 (集成) 发布¶
Ironic 项目的最终发布必须在 2026 年 3 月 26 日之前完成。