In a TripleO OpenStack deployment, the undercloud need to control the overcloud power management,
as well as serve its nodes with an operating system. Trying to do that inside an OpenStack cloud
requires some modification from the client side as well as from the OpenStack cloud

The OVB (openstack virtual baremetal) project solves this problem and we strongly recommended
to read its documentation prior to moving next in this document.

An OVB setup requires additional node to be present: Baremetal Controller (BMC).
This nodes captures all the IPMI requests dedicated to the OVB nodes and handles the
machine power on/off operations, boot device change and other operations performed
during the introspection phase.

The BMC node should be connected to the management network. infrared brings up an IP
address on own management interface for every Overcloud node. This allows infrared to
handle IPMI commands coming from the undercloud. Those IPs are later used in the generated
instackenv.json file.

For example, during the introspection phase, when the BMC sees the power off request for the
OVB1 node, it performs a shutdown for the instance which corresponds to the OVB1 on the host cloud.

The --topology-nodes options should include the bmc instance. Also instead of
standard compute and controller nodes the appropriate nodes with the ovb prefix should be used.
Such ovb node settings file holds several additional properties:

instance image details. Currently the ipxe-boot image should be used for all the ovb nodes.
Only that image allows to boot from the network after restart.

ovb group in the groups section

network topology (NICs’ order)

For example, the ovb_compute settings can hold the following properties: