红鱼硬件类型redfish的带外检查支持¶
https://bugs.launchpad.net/ironic/+bug/1668487
本提案为红鱼硬件类型增加了以OOB方式检查/更新硬件属性和自动创建端口的能力。
问题描述¶
节点检查会自动收集和更新节点属性。这些属性可用于将裸机节点划分为合适的资源类别,这些类别可用于nova调度。节点检查还会为所有发现的网卡(NIC)创建ironic端口。 redfish硬件类型支持使用inspector (Ironic Inspector)进行带内检查。 DMTF标准Redfish模式支持OOB接口,以获取ironic支持的大部分检查属性。通过添加对OOB检查的支持,可以减少内省裸机所需的时间。
提议的变更¶
本规范建议为redfish硬件类型添加OOB检查支持。它将发现Redfish兼容服务器支持的ironic节点属性和功能。这将通过增强Sushy库来从裸机BMC上运行的Redfish控制器获取所需的属性。
以下强制属性将在redfish硬件类型的node.properties中被发现和更新,如内省规范中所述
内存大小
CPU
CPU 架构
网卡(s) MAC 地址
磁盘
它还将实现通用Ironic功能规范中讨论的附加功能,并使用DMTF标准Redfish模式为redfish硬件类型提供。
已经设置的属性将在调用inspect_hardware()时被覆盖,但ironic端口除外。如果ironic端口已经存在,则不会为该MAC地址创建新的端口。它将负责添加以及删除NIC更改的端口,如内省规范中所述。并非所有Redfish兼容服务器都支持ironic支持的所有功能。如果硬件中不可用某个属性,则该属性将不会作为功能添加到node.properties中。
在以下情况下,检查将返回失败
获取基本属性失败。
由于服务配置错误,无法获取功能。
与Redfish管理器的通信错误。
Sushy更改¶
在Sushy库中实现InspectInterface方法inspect_hardware。
备选方案¶
人们仍然可以使用redfish硬件类型支持的inspector的带内机制来发现这些属性。
数据模型影响¶
无
状态机影响¶
无
REST API 影响¶
无
客户端 (CLI) 影响¶
无
“ironic” CLI¶
无
“openstack baremetal” CLI¶
无
RPC API 影响¶
无
驱动程序 API 影响¶
无
Nova 驱动程序影响¶
无
Ramdisk 影响¶
无
安全影响¶
无
其他最终用户影响¶
通过OOB检查,硬件内省所需的时间将减少。
可扩展性影响¶
无
性能影响¶
无
其他部署者影响¶
通过OOB检查,硬件内省所需的时间将减少。
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
stendulker
- 其他贡献者
agarwalnisha1980
工作项¶
实现
InspectInterface类及其方法inspect_hardware()、validate()和get_properties()。增强Sushy库以发现所需的硬件属性。
依赖项¶
依赖于Sushy库
测试¶
将添加符合ironic测试要求的单元测试。
将为检查服务器添加CI支持,基于sushy-tools的虚拟CI。
升级和向后兼容性¶
无
文档影响¶
红鱼硬件类型文档将更新为OOB检查功能。