Bug 1671049 - OSP Director - handle lowercase uuid change for dmidecode >= 3.1 for ceph-ansible per-node customizations
Summary: OSP Director - handle lowercase uuid change for dmidecode >= 3.1 for ceph-ans...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 14.0 (Rocky)
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: z1
: 14.0 (Rocky)
Assignee: Giulio Fidente
QA Contact: Eliad Cohen
URL:
Whiteboard:
: 1671065 (view as bug list)
Depends On:
Blocks: 1668774 1673141
TreeView+ depends on / blocked
 
Reported: 2019-01-30 16:12 UTC by Giulio Fidente
Modified: 2019-03-18 13:03 UTC (History)
7 users (show)

Fixed In Version: openstack-tripleo-heat-templates-9.2.1-0.20190119154859.fe11ade.el7ost
Doc Type: Bug Fix
Doc Text:
Previously, per-node customization with the heat `NodeDataLookup` parameter was not possible with RHEL 7.6. This was caused by updated versions of dmidecode 3.1 or later that returned system UUIDs in lowercase. This fix updates the `openstack-tripleo-heat-templates` package to accept uppercase or lowercase UUIDs.
Clone Of: 1668774
Environment:
Last Closed: 2019-03-18 13:03:28 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1814070 0 None None None 2019-01-31 10:36:14 UTC
OpenStack gerrit 634978 0 None MERGED Change NodeDataLookup type from string to json 2020-10-20 00:25:55 UTC
OpenStack gerrit 635107 0 None MERGED Handle case change for dmidecode >= 3.1 in Ceph templates 2020-10-20 00:26:08 UTC
OpenStack gerrit 636125 0 None MERGED Sanitize the uuid string for ceph-ansible 2020-10-20 00:25:55 UTC
Red Hat Product Errata RHBA-2019:0446 0 None None None 2019-03-18 13:03:37 UTC

Description Giulio Fidente 2019-01-30 16:12:12 UTC
+++ This bug was initially created as a clone of Bug #1668774 +++

Description of problem:
dmidecode >= 3.1 now displays uuid in lowercase.

https://github.com/mirror/dmidecode/blob/master/NEWS

Systems deployed with per node ceph-ansible customization prior this version may break during patching and cause deployment failures.  An example would be this failure:

openstack stack resource list -n5 overcloud | grep -v COMPLETE 
+-----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------+
| resource_name                           | physical_resource_id                                                                                                                                                                 | resource_type                                                                                                                             | resource_status | updated_time         | stack_name                                                                                                                                               |
+-----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------+
| AllNodesDeploySteps                     | 129027a6-c80c-43dd-ad8e-8a847a023a3a                                                                                                                                                 | OS::TripleO::PostDeploySteps                                                                                                              | UPDATE_FAILED   | 2019-01-17T20:50:17Z | overcloud                                                                                                                                                |
| WorkflowTasks_Step2_Execution           | 5451ca1d-de57-42c7-9107-24af27a75a66                                                                                                                                                 | OS::TripleO::WorkflowSteps                                                                                                                | CREATE_FAILED   | 2019-01-17T20:53:07Z | overcloud-AllNodesDeploySteps-zh5jioeqopmc                                                                                                               |
+-----------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+-----------------+----------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------+

ceph-install-workflow.log
2019-01-17 19:09:35,976 p=22329 u=mistral |  failed: [192.168.24.15] (item=/dev/vdb) => {"changed": false, "err": "Error: Could not stat device /dev/vdb - No such file or directory.\n", "failed": true, "item": "/dev/vdb", "msg": "Error while getting device information with parted script: '/sbin/parted -s -m /dev/vdb -- unit 'MiB' print'", "out": "", "rc": 1}


The puppet hiera data per node issue is addressed here so the same is needed for ceph-ansible:

https://bugzilla.redhat.com/show_bug.cgi?id=1654449


Version-Release number of selected component (if applicable):
Current versions

How reproducible:
100%

Steps to Reproduce:
1. Deploy with dmidecode <= 3.1 with per node customizations
2. upgrade systems to dmidecode >= 3.1
3. observe deployment failure or global config applied where per node config was configured.


Additional info:

$ rpm -q dmidecode
dmidecode-3.0-5.el7.x86_64
$ sudo dmidecode -s system-uuid
A6F05964-0E55-42C9-938E-1E657C49EFDB
$ sudo yum -y update dmidecode
...
Updated:
  dmidecode.x86_64 1:3.1-2.el7                                                                                                                                                 

Complete!
$ sudo dmidecode -s system-uuid
a6f05964-0e55-42c9-938e-1e657c49efdb

--- Additional comment from Giulio Fidente on 2019-01-30 16:09:26 UTC ---

it looks like this was an issue introduced in dmidecode 3.1 and fixed starting from 3.2, see https://github.com/mirror/dmidecode/commit/aec83995082070c47edf394c4b7f9f17fea7fd16 and https://savannah.nongnu.org/bugs/index.php?53569

we'll probably need to ensure our code makes case-insesitive matching anyway

Comment 1 Giulio Fidente 2019-01-30 17:08:48 UTC
*** Bug 1671065 has been marked as a duplicate of this bug. ***

Comment 6 Mikey Ariel 2019-02-20 12:44:25 UTC
If this bug requires doc text for errata release, please set the 'Doc Type' and provide draft text according to the template in the 'Doc Text' field. The documentation team will review, edit, and approve the text.

If this bug does not require doc text, please set the 'requires_doc_text' flag to -.

Comment 7 Eliad Cohen 2019-02-28 16:49:12 UTC
Verified with a custom list of osds per ceph node (Using NodeDataLookup and mixed capitalization of uuids)

Comment 9 errata-xmlrpc 2019-03-18 13:03:28 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2019:0446


Note You need to log in before you can comment on or make changes to this bug.