Description of problem: Documentation bug: Red Hat Ceph Storage for the Overcloud Actual results: Documentation mentions the following, in section 2.5 Defining the root disk: First, find the serial number of the intended root drive for each node. Use the ironic node-show command for each node and identify the block devices available from the extra section. For example, use the following to list all nodes and their block devices: $ for uuid in `ironic node-list | awk '{print $2}'`; do echo "Node ID: $uuid"; ironic node-show $uuid | grep 'properties\|extra ' -A3; done For this example, the output includes the following: ... Node ID: 97e3f7b3-5629-473e-a187-2193ebe0b5c7 | extra | {u'newly_discovered': u'true', u'block_devices': | | | {u'serials': [u'100000000', u'100000001', | | | u'100000002', u'100000003', u'100000004', | | | u'100000005', u'100000006', u'100000007', | -- | properties | {u'cpu_arch': u'x86_64', u'root_device': {u'serial': | | | u'100000005'}, u'cpus': u'16', u'capabilities': | | | u'profile:ceph-storage,boot_option:local', | | | u'memory_mb': u'65536', u'local_gb': u'3725'} | ... Expected results: Extra specs are stored in swift now, so the documentation needs to be changed Additional info: https://repos.fedorapeople.org/repos/openstack-m/jenkins/instack-undercloud-docs/243602-1/html/advanced_deployment/profile_matching.html export IRONIC_DISCOVERD_PASSWORD=`sudo grep admin_password /etc/ironic-inspector/inspector.conf | egrep -v '^#' | awk '{print $NF}'` for node in $(ironic node-list | grep -v UUID| awk '{print $2}'); do swift -U service:ironic -K $IRONIC_DISCOVERD_PASSWORD download ironic-inspector extra_hardware-$node; done for f in extra_hardware-*; do cat $f | jq -r 'map(select(.[0]=="disk" and .[1]=="vda"))'; done Specify a hint according to: http://docs.openstack.org/developer/ironic/deploy/install-guide.html#specifying-the-disk-for-deployment Attention: "name" hints will work only for introspection e.g.: ironic node-update <node-uuid> add properties/root_device='{"name": "/dev/vda"}' There should be a "name" hint, but this doesn't work: This doesn't work: for i in {1..3};do ironic node-update overcloud-ceph$i replace properties/root_device='{"size": "64"}';done (for i in {1..3};do ironic node-update overcloud-ceph$i add properties/root_device='{"name": "/dev/vda"}';done) For this, disks need to be of different size: for i in {1..3};do ironic node-update overcloud-ceph$i add properties/root_device='{"size": "64"}';done InstanceDeployFailure: RPC do_node_deploy failed to validate deploy or power info. Error: The hints "name" are invalid. Valid hints are: "model, wwn, vendor, serial, size" https://bugzilla.redhat.com/show_bug.cgi?id=1327866 This needs to be run _before_ introspection to determine the correct root size! openstack introspection bulk start
*** Bug 1329719 has been marked as a duplicate of this bug. ***
Hi Adreas, Confirming that the data is now stored in Swift and I'll need to rectify the documentation for this. However, I might need some clarification with how the hints are used with the swift objects, including "name". I had a look at one of my test nodes following what you proposed. However, the data in the extra_hardware-* objects don't seem to contain all the hints, not just "name". For example, there doesn't seem to be fields for "model", "serial", or the "wwn*" fields. I thought this was a little odd, so I looked at the standard inspector_data-* objects. I found a section in the JSON that had the following: "disks": [ { "size": 53687091200, "rotational": true, "vendor": "0x1af4", "name": "/dev/vda", "wwn_vendor_extension": null, "wwn_with_extension": null, "model": "", "wwn": null, "serial": null } ], I also checked on a multi-disk node and found the following: "disks": [ { "size": 53687091200, "rotational": true, "vendor": "0x1af4", "name": "/dev/vda", "wwn_vendor_extension": null, "wwn_with_extension": null, "model": "", "wwn": null, "serial": null }, { "size": 53687091200, "rotational": true, "vendor": "0x1af4", "name": "/dev/vdb", "wwn_vendor_extension": null, "wwn_with_extension": null, "model": "", "wwn": null, "serial": null }, { "size": 53687091200, "rotational": true, "vendor": "0x1af4", "name": "/dev/vdc", "wwn_vendor_extension": null, "wwn_with_extension": null, "model": "", "wwn": null, "serial": null } ], I looks like the the hints for the root disk are checked against data in the inspector_data-* objects, not the extra_hardware-* objects. Is there any chance you can confirm this? Needinfo'ing Lucas from the Ironic team -- Lucas, any chance you can confirm this too?
Thanks, Ruchika. Have updated accordingly.
No response in over a month in response to comment #4. THe changes have been pushed to the portal, so I'll be closing this BZ. However, feel free to reopen if further changes to this section are required.