Inspection allows Bare Metal service to discover required node properties
once required driver_info
fields (for example, IPMI credentials) are set
by an operator. Inspection will also create the Bare Metal service ports for the
discovered ethernet MACs. Operators will have to manually delete the Bare Metal
service ports for which physical media is not connected. This is required due
to the bug 1405131.
There are two kinds of inspection supported by Bare Metal service:
ilo
, idrac
and irmc
.The node should be in the manageable
state before inspection is initiated.
If it is in the enroll
or available
state, move it to manageable
first:
openstack baremetal node manage <node_UUID>
Then inspection can be initiated using the following command:
openstack baremetal node inspect <node_UUID>
This is an incomplete list of capabilities we want to discover during inspection. The exact support is hardware and hardware type specific though, the most complete list is provided by the iLO Hardware Inspection Support.
secure_boot
(true
or false
)boot_mode
(bios
or uefi
)cpu_vt
(true
or false
)cpu_aes
(true
or false
)max_raid_level
(integer, 0-10)pci_gpu_devices
(non-negative integer)The operator can specify these capabilities in nova flavor for node to be selected for scheduling:
nova flavor-key my-baremetal-flavor set capabilities:pci_gpu_devices="> 0"
nova flavor-key my-baremetal-flavor set capabilities:secure_boot="true"
Please see a specific hardware type page for the exact list of capabilities this hardware type can discover.
In-band inspection involves booting a ramdisk on the target node and fetching information directly from it. This process is more fragile and time-consuming than the out-of-band inspection, but it is not vendor-specific and works across a wide range of hardware. In-band inspection is using the ironic-inspector project.
It is supported by all hardware types, and used by default, if enabled, by the
ipmi
hardware type. The inspector
inspect interface has to be
enabled to use it:
[DEFAULT]
enabled_inspect_interfaces = inspector,no-inspect
If using classic drivers supporting in-band inspection, like pxe_ipmitool
,
another option has to be set as well:
[inspector]
enabled = True
You must additionally install python-ironic-inspector-client to use this functionality.
If the ironic-inspector service is not registered in the service catalog, set the following option:
[inspector]
endpoint-override = http://inspector.example.com:5050
In order to ensure that ports in Bare Metal service are synchronized with NIC ports on the node, the following settings in the ironic-inspector configuration file must be set:
[processing]
add_ports = all
keep_ports = present
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.