Huawei iBMC Driver¶
This specification proposes to add new interfaces that provide Ironic support to Huawei iBMC 2288H V5, CH121 V5 series servers.
Huawei’s Intelligent Baseboard Management System (iBMC) is an embedded server management system that is used to manage servers throughout their lifecycle. It provides a series of management tools for hardware status monitoring, deployment, energy savings, and security protection.
In addition to managing the nodes using IPMI protocol, this specification proposes to add hardware types and interfaces to manage Huawei servers using iBMC REST API.
New hardware type named ibmc will be added as part of this change. New power, management and vendor interfaces will be implemented for the ibmc hardware.
The interfaces use iBMC REST API to communicate with iBMC. The interfaces used are:
iBMC.IBMCPower for Power operations
iBMC.IBMCManagement for Management operations
iBMC.IBMCVendor for Vendorspecific operations
This feature allows the user to turn the node on/off or reboot by using the power interface which will in turn call iBMC REST API.
This feature allows the user to get and set the primary boot device of the Huawei servers, and to get the supported boot devices.
This feature allows the user to perform vendor specific operations. For example, query the boot up sequence of the Huawei servers.
$ openstack baremetal node passthru call --http-method GET \ <node id or node name> boot_up_seq $ ["Pxe", "Hdd", "Cd", "Others"]
Data model impact¶
RPC API impact¶
State Machine Impact¶
REST API impact¶
Client (CLI) impact¶
Driver API impact¶
Nova driver impact¶
Other end user impact¶
Other deployer impact¶
The following driver_info fields are required while enrolling node into Ironic:
ibmc_address: The URL address to the ibmc controller, example: https://example.com
ibmc_username: User account with admin/server-profile access privilege
ibmc_password: User account password
ibmc_verify_ca(optional): Whether to verify the host certificate or the path of a certificate file or directory with trusted certificates
- Other contributors:
Add new iBMC hardware type, and adding new interfaces for Power, Management and Vendor.
Writing appropriate unit tests to provide test coverage for iBMC driver.
Writing configuration documents.
Building a third party CI.
Use python-ibmcclient library (not released) to communicate with HUAWEI iBMC REST API.
Unit tests will be implemented for new iBMC driver.
Third party CI will be provided.
Upgrades and Backwards Compatibility¶
Updating Ironic documentation section Enabling Drivers with iBMC related instructions.