Bare-metal hardware drivers and power management types

Configure bare-metal nodes to use drivers that are enabled in the Bare Metal Provisioning service. Each driver includes a provisioning method and power management type. Drivers are listed by power management type and use PXE for provisioning.

You can add drivers by configuring the IronicEnabledHardwareTypes parameter in your ironic.yaml file. By default, ipmi and redfish are enabled.

Intelligent Platform Management Interface (IPMI) power management driver

IPMI provides out-of-band remote management features, including power management and server monitoring. IPMI must be connected to the shared bare-metal network. This driver uses ipmitool to remotely manage hardware.

Configure the driver by using the following driver_info properties:

Table 1. IPMI driver_info properties
Property Description Equivalent ipmitool option

ipmi_address

(Mandatory) The IP address or hostname of the node.

-H

ipmi_username

The IPMI user name.

-U

ipmi_password

The IPMI password. The password is written to a temporary file. You pass the filename to the ipmitool by using the -f option.

-f

ipmi_hex_kg_key

The hexadecimal Kg key for IPMIv2 authentication.

-y

ipmi_port

The remote IPMI RMCP port.

-p

ipmi_priv_level

IPMI privilege level. Set to one of the following valid values:

  • ADMINISTRATOR (default)
  • CALLBACK
  • OPERATOR
  • USER

-L

ipmi_protocol_version

The version of the IPMI protocol. Set to one of the following valid values:

  • 1.5 for lan
  • 2.0 for lanplus (default)

-I

ipmi_bridging

The type of bridging. Use with nested chassis management controllers (CMCs). Set to one of the following valid values:

  • single
  • dual
  • no (default)

n/a

ipmi_target_channel

Destination channel for a bridged request. Required only if ipmi_bridging is set to single or dual.

-b

ipmi_target_address

Destination address for a bridged request. Required only if ipmi_bridging is set to single or dual.

-t

ipmi_transit_channel

Transit channel for a bridged request. Required only if ipmi_bridging is set to dual.

-B

ipmi_transit_address

Transit address for bridged request. Required only if ipmi_bridging is set to dual.

-T

ipmi_local_address

Local IPMB address for bridged requests. Use only if ipmi_bridging is set to single or dual.

-m

ipmi_force_boot_device

Set to true to specify if the Bare Metal Provisioning service should specify the boot device to the BMC each time the server is turned on. The BMC is not capable of remembering the selected boot device across power cycles. Disabled by default.

n/a

ipmi_disable_boot_timeout

Set to false to not send a raw IPMI command to disable the 60 second timeout for booting on the node.

n/a

ipmi_cipher_suite

The IPMI cipher suite version to use on the node. Set to one of the following valid values:

  • 3 for AES-128 with SHA1
  • 17 for AES-128 with SHA256

n/a

The following support is provided for additional Bare Metal Provisioning service (ironic) interfaces:

  • The Console interface is available for Serial over LAN (IPMI SOL) support. End console access through the Compute service (nova) is not available.
  • The BIOS Settings management interface is not available for IPMI users because of limited IPMI support.
  • The RAID interface available for IPMI drivers is an agent software RAID interface. This interface is only supported under the support exception process.

Redfish back end

A standard RESTful API for IT infrastructure developed by the Distributed Management Task Force (DMTF). You can use the following driver_info properties to configure the Bare Metal Provisioning service (ironic) connection to Redfish:

Table 2. Redfish driver_info properties
Property Description

redfish_address

(Mandatory) The IP address of the Redfish controller. The address must include the authority portion of the URL. If you do not include the scheme it defaults to https.

redfish_system_id

The canonical path to the system resource the Redfish driver interacts with. The path must include the root service, version, and the unique path to the system within the same authority as the redfish_address property. For example: /redfish/v1/Systems/CX34R87. This property is only required if the target BMC manages more than one resource.

redfish_username

The Redfish username.

redfish_password

The Redfish password.

redfish_verify_ca

Either a Boolean value, a path to a CA_BUNDLE file, or a directory with certificates of trusted CAs. If you set this value to True the driver verifies the host certificates. If you set this value to False the driver ignores verifying the SSL certificate. If you set this value to a path, the driver uses the specified certificate or one of the certificates in the directory. The default is True.

redfish_auth_type

The Redfish HTTP client authentication method. Set to one of the following valid values:

  • basic
  • session (recommended)
  • auto (default) - Uses the session authentication method when available, and the basic authentication method when the session method is not available.

The following support is provided for additional Bare Metal Provisioning service (ironic) interfaces:

  • The Console interface is not available in the Redfish driver provided with Red Hat OpenStack Services on OpenShift (RHOSO) 18.0.
  • The BIOS Settings interface is available but not supported by Red Hat. The driver attempts to surface the hardware vendor specific settings available through the Baseboard Management Controller as exposed through the standardized Redfish interfaces. Contents, values, and the ability to change values is dependent on the hardware vendor Redfish implementation.
  • The RAID interface can be set to agent or redfish. Support of the RAID interface is limited to the support exception process.

Dell Remote Access Controller (DRAC)

DRAC provides out-of-band remote management features, including power management and server monitoring. DRAC must be connected to the shared Bare Metal Provisioning network.

Enable the idrac driver and set the following information in the driver_info of the node:

  • drac_address - The IP address of the DRAC NIC.
  • drac_username - The DRAC user name.
  • drac_password - The DRAC password.
  • Optional: drac_port - The port to use for the WS-Management endpoint. The default is port 443.
  • Optional: drac_path - The path to use for the WS-Management endpoint. The default path is /wsman.
  • Optional: drac_protocol - The protocol to use for the WS-Management endpoint. Valid values: http, https. The default protocol is https.

Integrated Remote Management Controller (iRMC)

iRMC from Fujitsu provides out-of-band remote management features, including power management and server monitoring. An iRMC interface must be connected to the shared bare-metal network.

Configure the iRMC driver by using the following driver_info properties:

Note

To use the iRMC driver, iRMC S4 or higher is required.

You can use the following driver_info properties to configure the iRMC driver for a node:

Table 3. iRMC driver_info properties
Property Description

irmc_address

The IP address of the iRMC interface NIC.

irmc_username

The iRMC user name.

irmc_password

The iRMC password.

irmc_snmp_version

Set to v3. Required if FIPS security is enabled in your RHOSP environment.

irmc_snmp_user

Set to the SNMPv3 User-based Security Model (USM) username for the iRMC firmware that runs on the target bare-metal node. Must be set for each bare-metal node. The SNMP username cannot be strings of digits (0-9).

Required if FIPS security is enabled in your RHOSP environment.

irmc_snmp_auth_password

Set to the SNMPv3 message authentication key for the SNMPv3 username. The minimum length of the SNMP password must be 8 characters.

Required if FIPS security is enabled in your RHOSP environment.

irmc_snmp_priv_password

Set to the SNMPv3 message privacy key for the SNMPv3 username. The minimum length of the SNMP password must be 8 characters.

Required if FIPS security is enabled in your RHOSP environment.

irmc_snmp_auth_proto

Set to one of the following values, depending on the version of iRMC firmware that runs on your Fujitsu server:

  • Earlier than "iRMC S6": sha
  • "iRMC S6": sha256, sha384, or sha512

Required if FIPS security is enabled in your RHOSP environment.

irmc_snmp_priv_proto

Set to aes. Required if FIPS security is enabled in your RHOSP environment.

To use IPMI to set the boot mode or SCCI to get sensor data, you must complete the following steps:

  1. Enable the sensor method in the ironic.conf file:
    $ openstack-config --set /etc/ironic/ironic.conf \
       irmc sensor_method <method>
    • Replace <method> with scci or ipmitool.
  2. If you enabled SCCI, install the python-scciclient package:
    # dnf install python-scciclient
  3. Restart the Bare Metal conductor service:
    # systemctl restart openstack-ironic-conductor.service

Integrated Lights-Out (iLO)

iLO from Hewlett-Packard provides out-of-band remote management features, including power management and server monitoring. An iLO interface must be connected to the shared bare-metal network.

Enable the ilo driver and set the following information in the driver_info of the node:

  • ilo_address - The IP address of the iLO interface NIC.
  • ilo_username - The iLO user name.
  • ilo_password - The iLO password.