Chapter 9. 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.

9.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 9.1. IPMI driver_info properties
PropertyDescriptionEquivalent 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

9.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 9.2. Redfish driver_info properties
PropertyDescription

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.

9.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.

9.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. Enable the irmc driver, and set the following information in the driver_info of the node:

  • irmc_address - The IP address of the iRMC interface NIC.
  • irmc_username - The iRMC user name.
  • irmc_password - The iRMC password.

To use IPMI to set the boot mode or SCCI to get sensor data, you must complete the following additional 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
Note

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

9.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.
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.