Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1445650

Summary: [RFE] Support for setting root device hints on nodes
Product: Red Hat OpenStack Reporter: Dmitry Tantsur <dtantsur>
Component: openstack-tripleo-uiAssignee: Honza Pokorny <hpokorny>
Status: CLOSED NOTABUG QA Contact: Amit Ugol <augol>
Severity: urgent Docs Contact:
Priority: high    
Version: 12.0 (Pike)CC: agurenko, apannu, augol, beth.white, brault, jbuchta, jjoyce, jpichon, jrist, jschluet, sasha, sclewis, slinaber, tvignaud
Target Milestone: Upstream M3Keywords: FutureFeature, Triaged
Target Release: 16.0 (Train on RHEL 8.1)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-07-08 13:43:33 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: 1445662, 1476902    

Description Dmitry Tantsur 2017-04-26 08:47:45 UTC
Ironic is not very smart in determining which disk device to use for deployment. More specifically, it uses the smallest disk which is larger than 4 GiB. This is very often the wrong choice, so "root device hints" [1] has to be set [2] on nodes with multiple disks. What is even worse, when several disks with the same size are present, an essentially random one is picked, so it's not consistent between deployments. UI has to support setting these hints to ensure correct deployment.

There are two potential implementation strategies, you can choose to implement either or both:

1. Allow a user to set hints before introspection (!) and deployment. This will probably involve creating a form accepting serial, size, model, wwn and wwn with vendor extensions. This has to run before introspection so that it sets the correct local_gb value for scheduling.

2. Allow a user to pick one of the devices found by introspection. This is probably more user-friendly, but it requires that UI updates properties/local_gb to match the picked disk. It also has to be repeated after every introspection.

I'm putting severity urgent, as failure to set root device hints results in known issues, like bug 1445155.

[1] https://docs.openstack.org/project-install-guide/baremetal/draft/advanced.html#specifying-the-disk-for-deployment-root-device-hints
[2] http://tripleo.org/advanced_deployment/root_device.html#root-device

Comment 2 Julie Pichon 2017-06-06 08:25:22 UTC
There is a workflow/action to configure the root device which may possibly be helpful to implement #2:

https://github.com/openstack/tripleo-common/blob/c0c4f8/workbooks/baremetal.yaml#L585 - "Define the root device for nodes. Can be either a list of device names (without /dev) to choose from or one of two strategies: largest or smallest. For it to work this command should be run after the introspection."

Comment 8 Jason E. Rist 2018-08-06 13:47:39 UTC
*** Bug 1526449 has been marked as a duplicate of this bug. ***