Description of problem: deploying an environment with a mix of Intel64 and PowerPC64 computes. Using role ComputePPC64LE which sets TunedProfileName "virtual-host" and failing as the file does not exist: --------------------------------------- Stack overcloud CREATE_FAILED overcloud.ComputePPC64LE.0.PreNetworkConfig.HostParametersDeployment: resource_type: OS::Heat::SoftwareDeployment physical_resource_id: e4bd51f7-6ac7-4990-8c2a-6e168335d1da status: CREATE_FAILED status_reason: | Error: resources.HostParametersDeployment: Deployment to server failed: deploy_status_code : Deployment exited with non-zero status code: 2 deploy_stdout: | ... TASK [Generate grub config file] *********************************************** changed: [localhost] TASK [Tune-d Configuration] **************************************************** fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "msg": "Destination /etc/tuned/virtual-host-variables.conf does not exist !", "rc": 257} to retry, use: --limit @/var/lib/heat-config/heat-config-ansible/c915d33a-c3c2-44e9-862c-fb5c78e34023_playbook.retry PLAY RECAP ********************************************************************* localhost : ok=4 changed=3 unreachable=0 failed=1 (truncated, view all with --long) deploy_stderr: | Heat Stack create failed. --------------------------------------- Contents of /usr/share/openstack-tripleo-heat-templates/roles/ComputePPC64LE.yaml ------------------------- ############################################################################### # Role: ComputePPC64LE # ############################################################################### - name: ComputePPC64LE description: | Basic Compute Node role for ppc64le servers CountDefault: 0 networks: - InternalApi - Tenant - Storage HostnameFormatDefault: '%stackname%-novacomputeppc64le-%index%' ImageDefault: ppc64le-overcloud-full RoleParametersDefault: TunedProfileName: "virtual-host" . . ------------------------- Version-Release number of selected component (if applicable): RHOSP13 How reproducible: 100% Steps to Reproduce: 1. Deploy a PowerPC64 compute with isolcpu partitioning. 2. 3. Actual results: Expected results: Additional info: With customer we added the following block to /usr/share/openstack-tripleo-heat-templates/extraconfig/pre_network/ansible_host_config.yaml and redeployed successfully ------------------------------ diff --git a/extraconfig/pre_network/ansible_host_config.yaml b/extraconfig/pre_network/ansible_host_config.yaml index 9a0b54a..64b3079 100644 --- a/extraconfig/pre_network/ansible_host_config.yaml +++ b/extraconfig/pre_network/ansible_host_config.yaml @@ -24,6 +24,14 @@ # Tune-d Configuration - block: + - name: Ensure Tune-d Configuration exists + file: + path: /etc/tuned/{{ _TUNED_PROFILE_NAME_ }}-variables.conf + state: touch + owner: root + group: root + mode: 0644 + - name: Tune-d Configuration lineinfile: dest: /etc/tuned/{{ _TUNED_PROFILE_NAME_ }}-variables.conf ------------------------------
Rabi, Can you please help with a hotfix?
A look at the templates would be more helpful. But here is what i infer, ComputePPC64LE role uses virtual-guest tuned profile, but it also tries to apply _TUNED_CORES_ (IsolCpusList) and fails. For virtual-guest profile, IsolCpusList parameter is not required. If this parameter is moved a role-specific as like KernelArgs (only for the role which has cpu-parititioning profile), the issue should have been fixed. To confirm the issue, a look at the templates would be helpful.
Verified on puddle 2019-01-03.1 openstack-tripleo-heat-templates-8.0.7-21.el7ost.noarch
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:0068