iRMC Power Driver for Ironic¶
The proposal presents the work required to add support for power management features for FUJITSU PRIMERGY iRMC, integrated Remote Management Controller, Drivers in Ironic.
FUJITSU PRIMERGY iRMC is a BMC from FUJITSU offering a remote system management. This proposal adds the power management capabilities for iRMC.
Adding new iRMC Driver, namely pxe_irmc, to the list of available drivers in Ironic and implementing the iRMC power module to interact with ServerView Common Command Interface (SCCI) described in FUJITSU Software ServerView Suite, Remote Management, iRMC S4 - integrated Remote Management Controller
iRMC supports WS-MAN, CIM, SMASH CLP, IPMI, SNMP, and etc. ServerView Common Command Interface (SCCI), however, is chosen since it is the most capable among them.
ServerView Common Command Interface (SCCI) uses python-scciclient package.
Standard IPMI can be used for the power management.
Data model impact¶
REST API impact¶
RPC API impact¶
Driver API impact¶
Nova driver impact¶
Admin credentials will be stored unencrypted in the DB and they will be visible in the driver_info field of the node when a node-show is issued. But only the ironic admin user will have access to the Ironic DB and node details.
Other end user impact¶
The following driver_info fields can be provided:
irmc_address: hostname or IP of iRMC
irmc_username: username for iRMC with administrator privileges
irmc_password: password for irmc_username
irmc_port: port number of iRMC (optional)
irmc_auth_method: authentication method for iRMC (optional)
The following parameters are added into newly created [irmc] section in the ironic configuration file which is typically located at /etc/ironic/ironic.conf.
port: default value of iRMC (80 or 443) port number. The default value is 443.
auth_method: default value of iRMC authentication method (basic or digest). The default value is basic.
client_timeout: default timeout for SCCI operations. The default value is 60 seconds.
Other deployer impact¶
- Primary assignee:
Naohiro Tamura (naohirot)
- Other contributors:
Add iRMC Driver (pxe_irmc)
Implement iRMC power module for the iRMC Drivers
This feature requires at least BX S4 or RX S8 generation of FUJITSU PRIMERGY servers.
This feature requires python-scciclient library. This dependency will be checked on calling __init__() of iRMC driver.
Unit Tests with mocking python-scciclient library.
Fujitsu plans Third-party CI Tests
Upgrades and Backwards Compatibility¶
The required driver_info fields and [irmc] section parameters in the ironic configuration file need be included in the documentation to instruct operators how to use Ironic with iRMC.