RFE: Develop Ironic driver for Fujitsu server using Redfish API
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ironic |
Triaged
|
Wishlist
|
Vanou Ishii |
Bug Description
# Motivation
Current Ironic iRMC driver uses Fujitsu server's firmware-specific REST API to do Ironic operation. However that leads to additional code to maintain. Fujitsu server's firmware implements Redfish API with few vendor specific REST path & behavior. To reduce vendor specific code, Fujitsu considers creating new Ironic driver using Redfish.
New Fujitsu server's Ironic driver should be based on 'redfish' driver's code (with class inheritance) and appropriate method override should be done to deal with Fujitsu-
There should be transition from current 'irmc' driver to new Redfish-based driver and these 2 driver will co-exist a while.
# Implementation option
There is two approaches to implement new driver:
- One approach for implementation is developing new xxx_interfaces (i.e. power_interface, management_
- Another approach is creating new driver (e.g. 'irmc-redfish' driver) in addition to 'irmc' driver. This 'irmc-redfish' driver only supports new xxx_interfaces which are based on community's Redfish driver. This will improve usability because Ironic user won't be worried by combination of xxx_interfaces, just choose xxx_interfaces listed in 'irmc-redfish' driver class's supported_
Another vendors (e.g. drac and ilo) take first approach. However I think second approach has benefit of usability and ease of maintenance.
# Fujitsu server specific Redfish behavior (2023/8)
- Virtual media functionality with OEM REST path
- Supports UEFI but not Legacy BIOS
- Needs additional wait time between power off state and power on state to do reboot operation
- No support of secure boot configuration through Redfish API
- Retrieval of BIOS attribute registry with Fujitsu specific manner
- RAID operation with Fujitsu's specific parameter
- No support of SoftReboot & SoftShutdown
Above items should be handled with Fujitsu-specific method override. Fujitsu server's firmware should comply with Redfish API specification, but it'll take a while till firmware complies with specification. So, during transition of firmware implementation, above incompatibility should be dealt with Fujitsu-specific code.
Changed in ironic: | |
assignee: | nobody → Vanou Ishii (vanou) |
Changed in ironic: | |
status: | New → Triaged |
importance: | Undecided → Wishlist |
tags: | added: irmc |
Greetings!
As this is a driver addition, we would need a specification document submitted to the ironic-specs repository detailing the proposed work.
Overall, this is a good start, and the detailed explanation of what is supported versus what is not supported provides clarity to help us understand the motivation and need.
Thanks!
-Julia