diff --git a/deployment/nova/nova-compute-container-puppet.yaml b/deployment/nova/nova-compute-container-puppet.yaml index f3c1a38594..7e6f65bb30 100644 --- a/deployment/nova/nova-compute-container-puppet.yaml +++ b/deployment/nova/nova-compute-container-puppet.yaml @@ -1129,6 +1129,44 @@ outputs: - name: If instance HA is enabled on the node activate the evacuation completed check file: path=/var/lib/nova/instanceha/enabled state=touch when: iha_nodes.stdout|lower is search('"'+ansible_hostname|lower+'"') + - name: Is irqbalance enabled + set_fact: + compute_irqbalance_disabled: {get_attr: [RoleParametersValue, value, compute_disable_irqbalance]} + - name: disable irqbalance service on compute + when: compute_irqbalance_disabled|bool + service: + name: irqbalance.service + state: stopped + enabled: no + deploy_steps_tasks: + - name: validate nova-compute container state + podman_container_info: + name: nova_compute + register: nova_compute_infos + failed_when: + - nova_compute_infos.containers.0.Healthcheck.Status is defined + - "'healthy' not in nova_compute_infos.containers.0.Healthcheck.Status" + retries: 10 + delay: 30 + tags: + - opendev-validation + - opendev-validation-nova + when: + - container_cli == 'podman' + - not container_healthcheck_disabled + - step|int == 6 #FIXME: there is no step6 + - name: manage PMEM namespaces for vPMEM + include_role: + name: tripleo_nvdimm + vars: + tripleo_nvdimm_pmem_namespaces: {get_attr: [RoleParametersValue, value, nova_pmem_namespaces]} + when: + - step|int == 1 + - tripleo_nvdimm_pmem_namespaces != '' + - name: enable/disable ksm + when: + - step|int == 1 + block: - name: is KSM enabled set_fact: compute_ksm_enabled: {get_attr: [RoleParametersValue, value, compute_enable_ksm]} @@ -1191,40 +1229,6 @@ outputs: with_items: - ksm.service - ksmtuned.service - - name: Is irqbalance enabled - set_fact: - compute_irqbalance_disabled: {get_attr: [RoleParametersValue, value, compute_disable_irqbalance]} - - name: disable irqbalance service on compute - when: compute_irqbalance_disabled|bool - service: - name: irqbalance.service - state: stopped - enabled: no - deploy_steps_tasks: - - name: validate nova-compute container state - podman_container_info: - name: nova_compute - register: nova_compute_infos - failed_when: - - nova_compute_infos.containers.0.Healthcheck.Status is defined - - "'healthy' not in nova_compute_infos.containers.0.Healthcheck.Status" - retries: 10 - delay: 30 - tags: - - opendev-validation - - opendev-validation-nova - when: - - container_cli == 'podman' - - not container_healthcheck_disabled - - step|int == 6 #FIXME: there is no step6 - - name: manage PMEM namespaces for vPMEM - include_role: - name: tripleo_nvdimm - vars: - tripleo_nvdimm_pmem_namespaces: {get_attr: [RoleParametersValue, value, nova_pmem_namespaces]} - when: - - step|int == 1 - - tripleo_nvdimm_pmem_namespaces != '' external_post_deploy_tasks: {get_attr: [NovaComputeCommon, nova_compute_common_deploy_steps_tasks]} upgrade_tasks: - name: Remove openstack-nova-compute and python-nova package during upgrade diff --git a/releasenotes/notes/nova_compute_ksm-444f1cc51ceafb66.yaml b/releasenotes/notes/nova_compute_ksm-444f1cc51ceafb66.yaml new file mode 100644 index 0000000000..4fb680f6f5 --- /dev/null +++ b/releasenotes/notes/nova_compute_ksm-444f1cc51ceafb66.yaml @@ -0,0 +1,8 @@ +--- +fixes: + - | + When using RHSM Service (deployment/rhsm/rhsm-baremetal-ansible.yaml) based + registration of the overcloud nodes and enabling the KSM using + NovaComputeEnableKsm=True the overcloud deployment will fail because the + RHSM registration and the ksm task run as host_prep task. The handling + of enable/disable ksm is now handled in deploy step 1.