Bug 1775142

Summary: [OSP16] Deployments with NovaComputeCpuDedicatedSet are failing
Product: Red Hat OpenStack Reporter: Vadim Khitrin <vkhitrin>
Component: puppet-novaAssignee: Rajesh Tailor <ratailor>
Status: CLOSED ERRATA QA Contact: James Parker <jparker>
Severity: high Docs Contact:
Priority: high    
Version: 16.0 (Train)CC: jjoyce, jparker, jschluet, lyarwood, mschuppe, nlevinki, ratailor, skramaja, slinaber, tvignaud
Target Milestone: betaKeywords: Triaged
Target Release: 16.0 (Train on RHEL 8.1)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: puppet-nova-15.4.1-0.20191126042922.b1bb388.el8ost Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-02-06 14:42:51 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: 1700729, 1781356, 1782656    
Bug Blocks:    

Description Vadim Khitrin 2019-11-21 13:12:43 UTC
Description of problem:
Starting from OSP16, TripleO parameters 'NovaVcpuPinSet' is deprecated and superseded by NovaComputeCpuSharedSet and NovaComputeCpuDedicatedSet[1].

When attempting to deploy with 'NovaComputeCpuDedicatedSet' in templates, the following errors are raised:
In /var/log/mistral/overcloud/ansibloe.log:
2019-11-21 12:59:00,303 p=68675 u=mistral |  fatal: [undercloud -> 192.0.90.7]: FAILED! => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "cmd": [
        "podman",
        "exec",
        "nova_compute",
        "nova-manage",
        "cell_v2",
        "discover_hosts",
        "--by-service"
    ],
    "delta": "0:00:00.091187",
    "end": "2019-11-21 12:59:00.266188",
    "invocation": {
        "module_args": {
            "_raw_params": "podman exec nova_compute nova-manage cell_v2 discover_hosts --by-service",
            "_uses_shell": false,
            "argv": null,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "stdin": null,
            "stdin_add_newline": true,
            "strip_empty_ends": true,
            "warn": true
        }
    },
    "msg": "non-zero return code",
    "rc": 125,
    "start": "2019-11-21 12:59:00.175001",
    "stderr": "Error: unable to exec into nova_compute: no container with name or ID nova_compute found: no such container",
    "stderr_lines": [
        "Error: unable to exec into nova_compute: no container with name or ID nova_compute found: no such container"
    ],
    "stdout": "",
    "stdout_lines": []
}

In /var/log/messages of compute node:
Nov 21 12:38:12 computeovsdpdksriov-0 puppet-user[19675]: Warning: Scope(Class[Nova::Compute]): vcpu_pin_set is deprecated, instead use cpu_dedicated_set or cpu_shared_set.
Nov 21 12:38:12 computeovsdpdksriov-0 puppet-user[19675]: Error: Evaluation Error: Error while evaluating a Function Call, vcpu_pin_set is deprecated. vcpu_pin_set and cpu_dedicated_set are mutually exclusive. (file: /etc/puppet/modules/nova/manifests/compute.pp, line: 281, column: 5) on node computeovsdpdksriov-0.localdomain

It appears like both of the values are defined in hieradata:
[root@computeovsdpdksriov-0 hieradata]# grep -E 'vcpu|dedicated' -A2 /etc/puppet/hieradata/service_configs.json
    "nova::compute::cpu_dedicated_set": [
        "4-19,24-39"
    ],
--
    "nova::compute::vcpu_pin_set": [],

Deploying with deprecated 'NovaVcpuPinSet' results in a successful deployment.

---
1 - https://docs.openstack.org/releasenotes/tripleo-heat-templates/train.html#relnotes-11-3-0-stable-train-deprecation-notes


Version-Release number of selected component (if applicable):
RHOS_TRUNK-16.0-RHEL-8-20191112.n.1
[root@computeovsdpdksriov-0 hieradata]# rpm -qa | grep nova
python3-novaclient-15.1.0-0.20190919143437.cd396b8.el8ost.noarch
puppet-nova-15.4.1-0.20191101055927.225baaf.el8ost.noarch

How reproducible:
Always

Steps to Reproduce:
1. Deploy overcloud with 'NovaComputeCpuDedicatedSet'.

Actual results:
Overcloud deployment fails.

Expected results:
Overcloud deployment succeeds.

Additional info:
Will attach SOS report in comment.

Comment 11 errata-xmlrpc 2020-02-06 14:42:51 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/RHEA-2020:0283