Preparing a new delivery

Flavor per rack

We now want to have flavors per rack for our Ceph clusters, please reminds people from Ironic/CF to do that when a new delivery is installed!

Setting root device hints

We set root device hints on every new delivery so that we can be certain that Ironic installs the OS on the right drive (and if the corresponding drive fails the installation also fails).

There are multiple ways to set root device hints (see the OpenStack documentation). For our recent deliveries setting the model is typically sufficient to have only one possible drive for the root device.

To get the model of the drive you have to boot a node and get it from /sys/class, for instance: cat /sys/class/block/nvme0n1/device/model (you may also ask to get access to Ironic inspection data if it gets more complicated than that).

Then you can set the model on every nodes of the delivery. For instance, for delivery dl8642293 you would do:

export OS_PROJECT_NAME="IT Ceph Ironic"
openstack baremetal node list -f value | \
    grep dl8642293 | awk '{print $1}' | \
    xargs -L1 openstack baremetal node set --property root_device='{"model": "SAMSUNG MZ1LB960HAJQ-00007"}'

If it looks correct, pipe the output to shell to actually set the root device hints.

Check the root device hints were correctly set with:

export OS_PROJECT_NAME="IT Ceph Ironic"
openstack baremetal node list -f value | \
    grep dl8642293 | awk '{print $1}' | \
    xargs -L1 openstack baremetal node show -f json | jq .properties.root_device
Improve me !