Chapter 7. Bare metal drivers You can configure bare metal nodes to use one of the drivers that are enabled in the Bare Metal Provisioning service. Each driver includes a provisioning method and a power management type. Some drivers require additional configuration. Each driver described in this section uses PXE for provisioning. Drivers are listed by their power management type. You can add drivers by configuring the IronicEnabledHardwareTypes parameter in your ironic.yaml file. By default, ipmi and redfish are enabled. For the full list of supported plug-ins and drivers, see Component, Plug-In, and Driver Support in Red Hat OpenStack Platform . 7.1. Intelligent Platform Management Interface (IPMI) power management driver IPMI is an interface that provides out-of-band remote management features, including power management and server monitoring. To use this power management type, all Bare Metal Provisioning service nodes require an IPMI that is connected to the shared Bare Metal network. IPMI power manager driver uses the ipmitool utility to remotely manage hardware. You can use the following driver_info properties to configure the IPMI power manager driver for a node: Table 7.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 7.2. Redfish 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 serive (ironic) connection to Redfish: Table 7.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. 7.3. Dell Remote Access Controller (DRAC) DRAC is an interface that provides out-of-band remote management features, including power management and server monitoring. To use this power management type, all Bare Metal Provisioning service nodes require a DRAC that is 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 . 7.4. Integrated Remote Management Controller (iRMC) iRMC from Fujitsu is an interface that provides out-of-band remote management features, including power management and server monitoring. To use this power management type on a Bare Metal Provisioning service node, the node requires an iRMC interface that is connected to the shared Bare Metal network. 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 7.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: Enable the sensor method in the ironic.conf file: Replace <method> with scci or ipmitool . If you enabled SCCI, install the python-scciclient package: Restart the Bare Metal conductor service: 7.5. Integrated Lights-Out (iLO) iLO from Hewlett-Packard is an interface that provides out-of-band remote management features including power management and server monitoring. To use this power management type, all Bare Metal nodes require an iLO interface that is 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.

Commands:
openstack-config --set /etc/ironic/ironic.conf irmc sensor_method <method>
dnf install python-scciclient
systemctl restart openstack-ironic-conductor.service