Appendix A. Bare Metal Drivers
A bare metal node can be configured to use one of the drivers enabled in the Bare Metal service. Each driver is made up of 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 with the IronicEnabledDrivers
parameter in your ironic.yaml
file. By default, pxe_ipmitool
, pxe_drac
and pxe_ilo
are enabled.
For the full list of supported plug-ins and drivers, see Component, Plug-In, and Driver Support in Red Hat OpenStack Platform.
A.1. Intelligent Platform Management Interface (IPMI) Copy linkLink copied to clipboard!
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 service nodes require an IPMI that is connected to the shared Bare Metal network. Enable the pxe_ipmitool
driver, and set the following information in the node’s driver_info
:
-
ipmi_address
- The IP address of the IPMI NIC. -
ipmi_username
- The IPMI user name. -
ipmi_password
- The IPMI password.
A.2. Dell Remote Access Controller (DRAC) Copy linkLink copied to clipboard!
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 service nodes require a DRAC that is connected to the shared Bare Metal network. Enable the pxe_drac
driver, and set the following information in the node’s driver_info
:
-
drac_address
- The IP address of the DRAC NIC. -
drac_username
- The DRAC user name. -
drac_password
- The DRAC password.
A.3. Integrated Remote Management Controller (iRMC) Copy linkLink copied to clipboard!
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 service node, the node requires an iRMC interface that is connected to the shared Bare Metal network. Enable the pxe_irmc
driver, and set the following information in the node’s driver_info
:
-
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:
Enable the sensor method in ironic.conf:
openstack-config --set /etc/ironic/ironic.conf \ irmc sensor_method METHOD
$ openstack-config --set /etc/ironic/ironic.conf \ irmc sensor_method METHOD
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Replace METHOD with
scci
oripmitool
.If you enabled SCCI, install the python-scciclient package:
yum install python-scciclient
# yum install python-scciclient
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Restart the Bare Metal conductor service:
systemctl restart openstack-ironic-conductor.service
# systemctl restart openstack-ironic-conductor.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
To use the iRMC driver, iRMC S4 or higher is required.
A.4. Integrated Lights-Out (iLO) Copy linkLink copied to clipboard!
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 pxe_ilo
driver, and set the following information in the node’s driver_info
:
-
ilo_address
- The IP address of the iLO interface NIC. -
ilo_username
- The iLO user name. -
ilo_password
- The iLO password.
You must also install the python-proliantutils package and restart the Bare Metal conductor service:
yum install python-proliantutils systemctl restart openstack-ironic-conductor.service
# yum install python-proliantutils
# systemctl restart openstack-ironic-conductor.service
A.5. SSH and Virsh Copy linkLink copied to clipboard!
The pxe_ssh
driver has been deprecated in favor of VirtualBMC, which uses the pxe_ipmitool
driver.
The Bare Metal service can access a host that is running libvirt and use virtual machines as nodes. Virsh controls the power management of the nodes.
The SSH driver is for testing and evaluation purposes only. It is not recommended for Red Hat OpenStack Platform enterprise environments.
To use this power management type, the Bare Metal service must have SSH access to an account with full access to the libvirt environment on the host where the virtual nodes will be set up. Enable the pxe_ssh
driver, and set the following information in the node’s driver_info
:
-
ssh_virt_type
- Set this option tovirsh
. -
ssh_address
- The IP address of the virsh host. -
ssh_username
- The SSH user name. -
ssh_key_contents
- The contents of the SSH private key on the Bare Metal conductor node. The matching public key must be copied to the virsh host.
A.6. VirtualBMC Copy linkLink copied to clipboard!
VirtualBMC is a utility which can create a virtual baseboard management controller (BMC). A virtual BMC allows you to control virtual machines with the Intelligent Platform Management Interface (IPMI) protocol, just like a physical machine.
VirtualBMC is for testing and evaluation purposes only. It is not recommended for Red Hat OpenStack Platform enterprise environments.
On the hypervisor hosting the virtual machines, install VirtualBMC:
yum install python-virtualbmc
# yum install python-virtualbmc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create a BMC for each virtual machine:
vbmc add DOMAIN --port PORT_NUMBER --username USERNAME --password PASSWORD
$ vbmc add DOMAIN --port PORT_NUMBER --username USERNAME --password PASSWORD
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Start the virtual BMCs:
vbmc start DOMAIN
$ vbmc start DOMAIN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow The virtual BMCs do not start automatically, so if you reboot the host machine, remember to start the virtual BMCs again.
A.6.1. Migrating from pxe_ssh to VirtualBMC Copy linkLink copied to clipboard!
If you have an existing virtual overcloud using the pxe_ssh
driver, it is possible to migrate to pxe_impitool
using Virtual BMC.
-
Install
python-virtualbmc
and create BMCs for each virtual machine by following the steps above. Make sure
pxe_impitool
is enabled (it is enabled by default). If it is not enabled, include it in yourironic.yaml
file and run theopenstack overcloud deploy
command again to apply the changes.parameter_defaults: IronicEnabledDrivers: - pxe_ipmitool - pxe_drac - pxe_ilo
parameter_defaults: IronicEnabledDrivers: - pxe_ipmitool - pxe_drac - pxe_ilo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Update the driver and driver properties on each node:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Replace NODE with the name or UUID of the node.
- Replace IP_ADDRESS with the IP address of the virtual host.
- Replace PORT with the Virtual BMC port.
Validate that the node has updated correctly:
openstack baremetal node validate NODE | grep power
$ openstack baremetal node validate NODE | grep power
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Replace NODE with the name or UUID of the node.