Bug 1893896

Summary: [FFU 13-16.1][Validation] pre-upgrade validation for flavor and profile is failing
Product: Red Hat OpenStack Reporter: MD Sufiyan <msufiyan>
Component: openstack-tripleo-validationsAssignee: Martin Schuppert <mschuppe>
Status: CLOSED ERRATA QA Contact: Pavan <pkesavar>
Severity: high Docs Contact:
Priority: high    
Version: 16.1 (Train)CC: cjeanner, dhill, jhajyahy, jjoyce, jpretori, jschluet, mschuppe, pkesavar, sbaker, slinaber, tvignaud
Target Milestone: z4Keywords: Patch, Triaged
Target Release: 16.1 (Train on RHEL 8.2)   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: openstack-tripleo-validations-11.3.2-1.20200916153439.el8ost Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-03-17 15:33:21 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: 1891389, 1912879    
Bug Blocks:    

Description MD Sufiyan 2020-11-02 22:15:09 UTC
Description of problem:

Pre-upgarde validation[1] is for "collect-flavors-and-verify-profiles" is failing after running the command[2]

+--------------------------------------+-------------------------------------+--------+-----------------------+----------------+---------------------+-------------+
| UUID                                 | Validations                         | Status | Host Group(s)         | Status by Host | Unreachable Host(s) | Duration    |
+--------------------------------------+-------------------------------------+--------+-----------------------+----------------+---------------------+-------------+
| 5254000f-87a1-4f3e-bcbc-000000000006 | collect-flavors-and-verify-profiles | FAILED | undercloud            | undercloud     |                     | 0:00:03.475 |
+--------------------------------------+-------------------------------------+--------+-----------------------+----------------+---------------------+-------------+


(undercloud) [stack@undercloud-0 ~]$ openstack tripleo validator show run 5254000f-87a1-4f3e-bcbc-000000000006
{
    "task": {
        "hosts": {
            "undercloud": {
                "_ansible_no_log": false,
                "action": "check_flavors",
                "changed": false,
                "failed": true,
                "invocation": {
                    "module_args": {
                        "flavors": {
                            "baremetal": {
                                "disk": 8,
                                "ephemeral": 0,
                                "id": "29b049dc-5ad1-439a-8f81-d704f051c058",
                                "is_public": true,
                                "keys": {
                                    "resources:CUSTOM_BAREMETAL": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "baremetal",
                                "ram": 4096,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            },
                            "block-storage": {
                                "disk": 40,
                                "ephemeral": 0,
                                "id": "4d0e414d-d26e-4232-b80c-f850fe8b1ae8",
                                "is_public": true,
                                "keys": {
                                    "capabilities:profile": "block-storage",
                                    "resources:CUSTOM_BAREMETAL": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "block-storage",
                                "ram": 4096,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            },
                            "ceph-storage": {
                                "disk": 40,
                                "ephemeral": 0,
                                "id": "5fdb3b4d-2867-4f7b-943d-e80ccb24fd08",
                                "is_public": true,
                                "keys": {
                                    "capabilities:profile": "ceph-storage",
                                    "resources:CUSTOM_BAREMETAL": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "ceph-storage",
                                "ram": 4096,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            },
                            "compute": {
                                "disk": 17,
                                "ephemeral": 0,
                                "id": "2e09e8ef-d5f9-45af-9abe-03b04b31775a",
                                "is_public": true,
                                "keys": {
                                    "capabilities:profile": "compute",
                                    "cpu_arch": "x86_64",
                                    "resources:CUSTOM_COMPUTE": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "compute",
                                "ram": 6144,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            },
                            "control": {
                                "disk": 40,
                                "ephemeral": 0,
                                "id": "5fcb2924-9b3f-4904-a45a-48cbdb49a383",
                                "is_public": true,
                                "keys": {
                                    "capabilities:profile": "control",
                                    "resources:CUSTOM_BAREMETAL": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "control",
                                "ram": 4096,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            },
                            "controller": {
                                "disk": 27,
                                "ephemeral": 0,
                                "id": "e65fc02c-9144-4710-b087-78540af71564",
                                "is_public": true,
                                "keys": {
                                    "capabilities:boot_option": "local",
                                    "capabilities:profile": "controller",
                                    "cpu_arch": "x86_64",
                                    "resources:CUSTOM_CONTROLLER": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "controller",
                                "ram": 16384,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            },
                            "swift-storage": {
                                "disk": 40,
                                "ephemeral": 0,
                                "id": "30ecbf84-e5ed-4a41-9f02-bdce9b3d5a6a",
                                "is_public": true,
                                "keys": {
                                    "capabilities:profile": "swift-storage",
                                    "resources:CUSTOM_BAREMETAL": "1",
                                    "resources:DISK_GB": "0",
                                    "resources:MEMORY_MB": "0",
                                    "resources:VCPU": "0"
                                },
                                "name": "swift-storage",
                                "ram": 4096,
                                "rxtx_factor": 1.0,
                                "swap": "",
                                "vcpus": 1
                            }
                        },
                        "roles_info": [
                            {
                                "count": 3,
                                "flavor": "controller",
                                "name": "Controller"
                            },
                            {
                                "count": 1,
                                "flavor": "compute",
                                "name": "Compute"
                            },
                            {
                                "count": 0,
                                "flavor": null,
                                "name": "BlockStorage"
                            },
                            {
                                "count": 0,
                                "flavor": null,
                                "name": "ObjectStorage"
                            },
                            {
                                "count": 0,
                                "flavor": null,
                                "name": "CephStorage"
                            }
                        ]
                    }
                },
                "msg": "Flavor controller has a resource class that is not offering exactly 1 resource\nFlavor controller has to have scheduling based on standard properties disabled by setting resources:VCPU=0 resources:MEMORY_MB=0 resources:DISK_GB=0 in the flavor property\nFlavor compute has a resource class that is not offering exactly 1 resource\nFlavor compute has to have scheduling based on standard properties disabled by setting resources:VCPU=0 resources:MEMORY_MB=0 resources:DISK_GB=0 in the flavor property"
            }
        },
        "name": "Collect and check the flavors",
        "status": "FAILED"
    }
}

Please note that flavor properties are seems to be correct as the stack is deployed using same properties.

~~~
(undercloud) [stack@undercloud-0 ~]$ openstack flavor show compute --fit-width
+----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+
| Field                      | Value                                                                                                                                       |
+----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+
| OS-FLV-DISABLED:disabled   | False                                                                                                                                       |
| OS-FLV-EXT-DATA:ephemeral  | 0                                                                                                                                           |
| access_project_ids         | None                                                                                                                                        |
| disk                       | 17                                                                                                                                          |
| id                         | 2e09e8ef-d5f9-45af-9abe-03b04b31775a                                                                                                        |
| name                       | compute                                                                                                                                     |
| os-flavor-access:is_public | True                                                                                                                                        |
| properties                 | capabilities:profile='compute', cpu_arch='x86_64', resources:CUSTOM_COMPUTE='1', resources:DISK_GB='0', resources:MEMORY_MB='0',            |
|                            | resources:VCPU='0'                                                                                                                          |
| ram                        | 6144                                                                                                                                        |
| rxtx_factor                | 1.0                                                                                                                                         |
| swap                       |                                                                                                                                             |
| vcpus                      | 1                                                                                                                                           |
+----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+
(undercloud) [stack@undercloud-0 ~]$ openstack flavor show control --fit-width
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------+
| Field                      | Value                                                                                                                              |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------+
| OS-FLV-DISABLED:disabled   | False                                                                                                                              |
| OS-FLV-EXT-DATA:ephemeral  | 0                                                                                                                                  |
| access_project_ids         | None                                                                                                                               |
| disk                       | 40                                                                                                                                 |
| id                         | 5fcb2924-9b3f-4904-a45a-48cbdb49a383                                                                                               |
| name                       | control                                                                                                                            |
| os-flavor-access:is_public | True                                                                                                                               |
| properties                 | capabilities:profile='control', resources:CUSTOM_BAREMETAL='1', resources:DISK_GB='0', resources:MEMORY_MB='0', resources:VCPU='0' |
| ram                        | 4096                                                                                                                               |
| rxtx_factor                | 1.0                                                                                                                                |
| swap                       |                                                                                                                                    |
| vcpus                      | 1                                                                                                                                  |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------+
(undercloud) [stack@undercloud-0 ~]$ 
~~~

Additionally, validation is also trying to validate other available in the environment even though those flavor are not geeting used in any existing role.

~~~
(undercloud) [stack@undercloud-0 ~]$ openstack flavor list --fit-width
+--------------------------------------+---------------+-------+------+-----------+-------+-----------+
| ID                                   | Name          |   RAM | Disk | Ephemeral | VCPUs | Is Public |
+--------------------------------------+---------------+-------+------+-----------+-------+-----------+
| 29b049dc-5ad1-439a-8f81-d704f051c058 | baremetal     |  4096 |    8 |         0 |     1 | True      | - not using for any role
| 2e09e8ef-d5f9-45af-9abe-03b04b31775a | compute       |  6144 |   17 |         0 |     1 | True      | - using for compute role
| 30ecbf84-e5ed-4a41-9f02-bdce9b3d5a6a | swift-storage |  4096 |   40 |         0 |     1 | True      | - not using for any role
| 4d0e414d-d26e-4232-b80c-f850fe8b1ae8 | block-storage |  4096 |   40 |         0 |     1 | True      | - not using for any role
| 5fcb2924-9b3f-4904-a45a-48cbdb49a383 | control       |  4096 |   40 |         0 |     1 | True      | - using for controller role
| 5fdb3b4d-2867-4f7b-943d-e80ccb24fd08 | ceph-storage  |  4096 |   40 |         0 |     1 | True      | - not using for any role
| e65fc02c-9144-4710-b087-78540af71564 | controller    | 16384 |   27 |         0 |     1 | True      | - not using for any role
+--------------------------------------+---------------+-------+------+-----------+-------+-----------+
~~~

[1] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.1/html-single/framework_for_upgrades_13_to_16.1/index?validating-red-hat-openstack-platform-oldvernum-before-the-upgrade#validating-the-pre-upgrade-requirements
[2] openstack tripleo validator run --group pre-upgrade

Comment 1 Cédric Jeanneret 2020-11-03 08:57:21 UTC
Note: it might get a link with this other BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1891389.
Adding a Depends-On in order to re-test after the patch is merged. Maybe it will fix things?

Comment 2 Steve Baker 2020-11-17 20:44:17 UTC
It sounds like the validation needs to be fixed, and nova flavors isn't really related to HardProv anyway.

Comment 3 Cédric Jeanneret 2020-11-18 07:44:54 UTC
*** Bug 1898744 has been marked as a duplicate of this bug. ***

Comment 17 errata-xmlrpc 2021-03-17 15:33:21 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 (Red Hat OpenStack Platform 16.1.4 director bug fix 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-2021:0817