Bug 2109847

Summary: UEFI Node with multiple disks does not boot up
Product: Red Hat OpenStack Reporter: Alex Stupnikov <astupnik>
Component: openstack-ironicAssignee: OSP Team <rhos-maint>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 16.2 (Train)CC: afasano, bfournie, cvultur, dtantsur, jkreger, lshilin, mcornea, ohochman, sasha, sbaker, shardy, tsedovic, yprokule
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1867744 Environment:
Last Closed: 2022-08-01 19:38:54 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1867744    
Bug Blocks:    

Comment 1 Alex Stupnikov 2022-07-22 10:14:54 UTC
It looks like this problem was reproduced for one of our customers with RHOSP 16.2. Here is a trace from node's journal (full journal is available in case's attachment):

Jul 20 13:24:52 host-172-31-195-237 ironic-python-agent[3453]: 2022-07-20 13:24:52.722 3453 ERROR ironic_python_agent.extensions.image [-] Error setting up bootloader. Error Error finding the disk or partition device to deploy the image onto: No partition with UUID None found on device /dev/sdb: ironic_python_agent.errors.DeviceNotFound: Error finding the disk or partition device to deploy the image onto: No partition with UUID None found on device /dev/sdb
Jul 20 13:24:53 host-172-31-195-237 ironic-python-agent[3453]: 2022-07-20 13:24:52.783 3453 ERROR root [-] Command execution error: Error finding the disk or partition device to deploy the image onto: No partition with UUID None found on device /dev/sdb: ironic_python_agent.errors.DeviceNotFound: Error finding the disk or partition device to deploy the image onto: No partition with UUID None found on device /dev/sdb
                                                               2022-07-20 13:24:52.783 3453 ERROR root Traceback (most recent call last):
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/base.py", line 256, in execute_command
                                                               2022-07-20 13:24:52.783 3453 ERROR root     result = ext.execute(command_part, **kwargs)
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/base.py", line 208, in execute
                                                               2022-07-20 13:24:52.783 3453 ERROR root     return cmd(**kwargs)
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/base.py", line 326, in wrapper
                                                               2022-07-20 13:24:52.783 3453 ERROR root     result = func(self, **command_params)
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/image.py", line 934, in install_bootloader
                                                               2022-07-20 13:24:52.783 3453 ERROR root     if _efi_boot_setup(device, efi_system_part_uuid):
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/image.py", line 812, in _efi_boot_setup
                                                               2022-07-20 13:24:52.783 3453 ERROR root     efi_system_part_uuid=efi_system_part_uuid):
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/image.py", line 341, in _manage_uefi
                                                               2022-07-20 13:24:52.783 3453 ERROR root     partition = _get_partition(device, uuid=efi_system_part_uuid)
                                                               2022-07-20 13:24:52.783 3453 ERROR root   File "/usr/lib/python3.6/site-packages/ironic_python_agent/extensions/image.py", line 147, in _get_partition
                                                               2022-07-20 13:24:52.783 3453 ERROR root     raise errors.DeviceNotFound(error_msg)
                                                               2022-07-20 13:24:52.783 3453 ERROR root ironic_python_agent.errors.DeviceNotFound: Error finding the disk or partition device to deploy the image onto: No partition with UUID None found on device /dev/sdb
                                                               2022-07-20 13:24:52.783 3453 ERROR root

Comment 2 Julia Kreger 2022-07-22 15:05:20 UTC
Alex, we are going to need full agent logs from the controller or undercloud, whichever one is applicable.

I think the original case might be a red herring, as when a path UUID is not known, generally a whole disk image is in use, yet it may be that the source image's records are incorrectly configured.

We will also need the `openstack image show <uuid>` output for the image attempting to be deployed, and the `openstack baremetal node show <uuid>` output as well, if at all possible to piece together what is being requested by the customer, and what is occurring.

Comment 7 Steve Baker 2022-08-01 19:38:54 UTC
Closing for now, since it looks like a node configuration issue.