Bug 1452226

Summary: root_device hint matching "vendor" doesn't work
Product: Red Hat OpenStack Reporter: David Juran <djuran>
Component: openstack-ironic-python-agentAssignee: Derek Higgins <derekh>
Status: CLOSED CURRENTRELEASE QA Contact: mlammon
Severity: medium Docs Contact:
Priority: medium    
Version: 10.0 (Newton)CC: bfournie, chih-hsien.chien, derekh, mburns, racedoro, slinaber
Target Milestone: z8Keywords: TestOnly, Triaged, ZStream
Target Release: 10.0 (Newton)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-ironic-python-agent-1.5.2-3.el7ost Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-01 10:36:52 UTC Type: Bug
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:    
Bug Blocks: 1335596, 1409892    
Attachments:
Description Flags
deployment log none

Description David Juran 2017-05-18 15:47:00 UTC
Created attachment 1280053 [details]
deployment log

Description of problem:
My OverCloud controllers have an internal disk and also some FC-attached device.s In order to deploy the overcloud onto the internal disk, I tried using a root_device hint matching the "vendor" field:

openstack baremetal node set --property root_device='{"vendor":"LSI"}'

This however doesn't seem to work, the deployment failed with the message that no valid disk was found.

When instead changing to matching for wwn (openstack overcloud node configure --root-device=sda), the deployment worked fine.



Version-Release number of selected component (if applicable):
openstack-ironic-python-agent-1.5.1-1.el7ost

Attaching deployment log from the failed deployment

Comment 3 Derek Higgins 2017-11-24 17:29:51 UTC
Property values in OSP10 are normalized to be lower cased, in order to match this you should set the root device hint value to be "lsi".

This behavior was changed in OSP11 when the device hint matching was switched to
ironic_lib.match_root_device_hints[1]. 

Backporting a change of this nature would be too intrusive(ironic-lib in OSP10 doesn't have match_root_device_hints) and the solution to use lowercase values should be very workable, so I think we should leave it like this.

[1] - https://review.openstack.org/#/c/366742/
Change-Id: Id93dd0360137df600f5a656348279e56c6b84bf9

Comment 5 Dmitry Tantsur 2017-11-27 10:16:33 UTC
Great, thanks for investigation. Let's fix it for 10 (downstream) then.

Comment 7 Derek Higgins 2017-11-27 10:38:05 UTC
Fix posted to OSP 10 for review

Comment 8 Derek Higgins 2017-11-27 10:44:02 UTC
*** Bug 1406856 has been marked as a duplicate of this bug. ***

Comment 11 Lon Hohberger 2018-03-07 13:51:14 UTC
According to our records, this should be resolved by openstack-ironic-python-agent-1.5.2-3.el7ost.  This build is available now.

Comment 12 mlammon 2018-04-23 18:06:01 UTC
Using customized deployment from InfraRed tool to deploy latest osp 10 with 1 controller/1compute
puddle: 2018-04-19.1

=====
Note:  This device_hint will not introspect and may also need to be part of this bug or new one but did not
have problem when it was set as CAPITAL case and deployed.   Do we need support for capital in introspection?


[stack@undercloud-0 ~]$ openstack baremetal node set controller-0 --property root_device='{"name": "/DEV/VDA"}'
[stack@undercloud-0 ~]$ openstack baremetal node set compute-0 --property root_device='{"name": "/DEV/VDA"}'



[stack@undercloud-0 ~]$ openstack overcloud node import ~/instackenv.json
Started Mistral Workflow. Execution ID: 0fbaeca5-d5bd-4a5c-92c3-76ce8d9b5ab7
Successfully registered node UUID ccf3c4d3-28d9-487e-b197-21f108955553
Successfully registered node UUID cfc7f70a-9e4d-44aa-bf02-93ded285776a
[stack@undercloud-0 ~]$  openstack overcloud node introspect --all-manageable --provide
Started Mistral Workflow. Execution ID: db7b7d1a-d982-429d-b1f0-2c402915b66b
Waiting for introspection to finish...
Introspection for UUID ccf3c4d3-28d9-487e-b197-21f108955553 finished successfully.
Introspection for UUID cfc7f70a-9e4d-44aa-bf02-93ded285776a finished successfully.
Introspection completed.
Started Mistral Workflow. Execution ID: cf842f56-75dc-406a-9cca-8b24cc2475e4


## After introspection we updated the root_device testing name=/DEV/VDA since this is virtual environment.

[stack@undercloud-0 ~]$ openstack baremetal node set controller-0 --property root_device='{"name": "/DEV/VDA"}'
[stack@undercloud-0 ~]$ openstack baremetal node set compute-0 --property root_device='{"name": "/DEV/VDA"}'

## updated back the tags
[stack@undercloud-0 ~]$ ironic node-update compute-0 add properties/capabilities=profile:compute,boot_option:local
+------------------------+--------------------------------------------------------------------------+
| Property               | Value                                                                    |
+------------------------+--------------------------------------------------------------------------+
| chassis_uuid           |                                                                          |
| clean_step             | {}                                                                       |
| console_enabled        | False                                                                    |
| created_at             | 2018-04-23T17:12:38+00:00                                                |
| driver                 | pxe_ssh                                                                  |
| driver_info            | {u'ssh_username': u'stack', u'deploy_kernel': u'0faebbcd-697d-48ee-a17d- |
|                        | 993c6309d071', u'deploy_ramdisk': u'd6139b42-bf25-467d-8b4f-             |
|                        | 1905d118cc5d', u'ssh_key_contents': u'******', u'ssh_virt_type':         |
|                        | u'virsh', u'ssh_address': u'172.16.0.1'}                                 |
| driver_internal_info   | {}                                                                       |
| extra                  | {u'hardware_swift_object': u'extra_hardware-                             |
|                        | ccf3c4d3-28d9-487e-b197-21f108955553'}                                   |
| inspection_finished_at | None                                                                     |
| inspection_started_at  | None                                                                     |
| instance_info          | {}                                                                       |
| instance_uuid          | None                                                                     |
| last_error             | None                                                                     |
| maintenance            | False                                                                    |
| maintenance_reason     | None                                                                     |
| name                   | compute-0                                                                |
| network_interface      |                                                                          |
| power_state            | power off                                                                |
| properties             | {u'cpu_arch': u'x86_64', u'root_device': {u'name': u'/DEV/VDA'},         |
|                        | u'cpus': u'2', u'capabilities': u'profile:compute,boot_option:local',    |
|                        | u'memory_mb': u'6144', u'local_gb': u'19'}                               |
| provision_state        | available                                                                |
| provision_updated_at   | 2018-04-23T17:15:16+00:00                                                |
| raid_config            |                                                                          |
| reservation            | None                                                                     |
| resource_class         |                                                                          |
| target_power_state     | None                                                                     |
| target_provision_state | None                                                                     |
| target_raid_config     |                                                                          |
| updated_at             | 2018-04-23T17:15:57+00:00                                                |
| uuid                   | ccf3c4d3-28d9-487e-b197-21f108955553                                     |
+------------------------+--------------------------------------------------------------------------+
[stack@undercloud-0 ~]$ ironic node-update controller-0 add properties/capabilities=profile:controller,boot_option:local
+------------------------+--------------------------------------------------------------------------+
| Property               | Value                                                                    |
+------------------------+--------------------------------------------------------------------------+
| chassis_uuid           |                                                                          |
| clean_step             | {}                                                                       |
| console_enabled        | False                                                                    |
| created_at             | 2018-04-23T17:12:38+00:00                                                |
| driver                 | pxe_ssh                                                                  |
| driver_info            | {u'ssh_username': u'stack', u'deploy_kernel': u'0faebbcd-697d-48ee-a17d- |
|                        | 993c6309d071', u'deploy_ramdisk': u'd6139b42-bf25-467d-8b4f-             |
|                        | 1905d118cc5d', u'ssh_key_contents': u'******', u'ssh_virt_type':         |
|                        | u'virsh', u'ssh_address': u'172.16.0.1'}                                 |
| driver_internal_info   | {}                                                                       |
| extra                  | {u'hardware_swift_object': u'extra_hardware-cfc7f70a-9e4d-44aa-          |
|                        | bf02-93ded285776a'}                                                      |
| inspection_finished_at | None                                                                     |
| inspection_started_at  | None                                                                     |
| instance_info          | {}                                                                       |
| instance_uuid          | None                                                                     |
| last_error             | None                                                                     |
| maintenance            | False                                                                    |
| maintenance_reason     | None                                                                     |
| name                   | controller-0                                                             |
| network_interface      |                                                                          |
| power_state            | power off                                                                |
| properties             | {u'cpu_arch': u'x86_64', u'root_device': {u'name': u'/DEV/VDA'},         |
|                        | u'cpus': u'4', u'capabilities': u'profile:controller,boot_option:local', |
|                        | u'memory_mb': u'16384', u'local_gb': u'29'}                              |
| provision_state        | available                                                                |
| provision_updated_at   | 2018-04-23T17:15:16+00:00                                                |
| raid_config            |                                                                          |
| reservation            | None                                                                     |
| resource_class         |                                                                          |
| target_power_state     | None                                                                     |
| target_provision_state | None                                                                     |
| target_raid_config     |                                                                          |
| updated_at             | 2018-04-23T17:15:47+00:00                                                |
| uuid                   | cfc7f70a-9e4d-44aa-bf02-93ded285776a                                     |
+------------------------+--------------------------------------------------------------------------+





[stack@undercloud-0 ~]$ openstack baremetal node show compute-0
+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+
| Field                  | Value                                                                                                                                               |
+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+
| clean_step             | {}                                                                                                                                                  |
| console_enabled        | False                                                                                                                                               |
| created_at             | 2018-04-23T17:12:38+00:00                                                                                                                           |
| driver                 | pxe_ssh                                                                                                                                             |
| driver_info            | {u'ssh_username': u'stack', u'deploy_kernel': u'0faebbcd-697d-48ee-a17d-993c6309d071', u'deploy_ramdisk': u'd6139b42-bf25-467d-8b4f-1905d118cc5d',  |
|                        | u'ssh_key_contents': u'******', u'ssh_virt_type': u'virsh', u'ssh_address': u'172.16.0.1'}                                                          |
| driver_internal_info   | {u'agent_url': u'http://192.168.24.12:9999', u'root_uuid_or_disk_id': u'2311c5df-ec43-48f4-a824-1d5bc586ea65', u'is_whole_disk_image': False,       |
|                        | u'agent_last_heartbeat': 1524504301}                                                                                                                |
| extra                  | {u'hardware_swift_object': u'extra_hardware-ccf3c4d3-28d9-487e-b197-21f108955553'}                                                                  |
| inspection_finished_at | None                                                                                                                                                |
| inspection_started_at  | None                                                                                                                                                |
| instance_info          | {u'root_gb': u'17', u'display_name': u'compute-0', u'image_source': u'7004891e-45da-44b3-8858-1088a11b4d24', u'capabilities': u'{"profile":         |
|                        | "compute", "boot_option": "local"}', u'memory_mb': u'6144', u'vcpus': u'1', u'local_gb': u'19', u'configdrive': u'******', u'swap_mb': u'0'}        |
| instance_uuid          | 67051d35-64ad-4289-9835-5e6a5243923c                                                                                                                |
| last_error             | None                                                                                                                                                |
| maintenance            | False                                                                                                                                               |
| maintenance_reason     | None                                                                                                                                                |
| name                   | compute-0                                                                                                                                           |
| ports                  | [{u'href': u'http://192.168.24.1:6385/v1/nodes/ccf3c4d3-28d9-487e-b197-21f108955553/ports', u'rel': u'self'}, {u'href':                             |
|                        | u'http://192.168.24.1:6385/nodes/ccf3c4d3-28d9-487e-b197-21f108955553/ports', u'rel': u'bookmark'}]                                                 |
| power_state            | power on                                                                                                                                            |
| properties             | {u'cpu_arch': u'x86_64', u'root_device': {u'name': u'/DEV/VDA'}, u'cpus': u'2', u'capabilities': u'profile:compute,boot_option:local',              |
|                        | u'memory_mb': u'6144', u'local_gb': u'19'}                                                                                                          |
| provision_state        | active                                                                                                                                              |
| provision_updated_at   | 2018-04-23T17:25:38+00:00                                                                                                                           |
| raid_config            | {}                                                                                                                                                  |
| reservation            | None                                                                                                                                                |
| states                 | [{u'href': u'http://192.168.24.1:6385/v1/nodes/ccf3c4d3-28d9-487e-b197-21f108955553/states', u'rel': u'self'}, {u'href':                            |
|                        | u'http://192.168.24.1:6385/nodes/ccf3c4d3-28d9-487e-b197-21f108955553/states', u'rel': u'bookmark'}]                                                |
| target_power_state     | None                                                                                                                                                |
| target_provision_state | None                                                                                                                                                |
| target_raid_config     | {}                                                                                                                                                  |
| updated_at             | 2018-04-23T17:25:38+00:00                                                                                                                           |
| uuid                   | ccf3c4d3-28d9-487e-b197-21f108955553                                                                                                                |
+------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------+


[stack@undercloud-0 ~]$ openstack stack list
+--------------------------------------+------------+-----------------+----------------------+--------------+
| ID                                   | Stack Name | Stack Status    | Creation Time        | Updated Time |
+--------------------------------------+------------+-----------------+----------------------+--------------+
| 18f07f36-0429-4151-8356-1af059e1dc65 | overcloud  | CREATE_COMPLETE | 2018-04-23T17:20:13Z | None         |
+--------------------------------------+------------+-----------------+----------------------+--------------+

Comment 13 mlammon 2018-04-30 19:55:18 UTC
This can now be marked verified per https://bugzilla.redhat.com/show_bug.cgi?id=1452226#c12