Merge "Enabling vhost-postcopy-support when live_migration_permit_post_copy"

This commit is contained in:
Zuul 2021-08-02 18:18:10 +00:00 committed by Gerrit Code Review
commit a9ca0eb992
2 changed files with 32 additions and 26 deletions

View File

@ -486,9 +486,11 @@ parameters:
type: boolean
NovaLiveMigrationPermitPostCopy:
description: >
Set to "True" to activate the instance on the destination node before migration is complete,
and to set an upper bound on the memory that needs to be transferred.
default: false
If "True" activates the instance on the destination node before migration is complete,
and to set an upper bound on the memory that needs to be transferred. Post copy
gets enabled per default if the compute roles is not a realtime role or disabled
by this parameter.
default: true
type: boolean
tags:
- role_specific
@ -838,18 +840,8 @@ conditions:
and:
- equals: [{get_param: [RoleParameters, NovaReservedHugePages]}, ""]
- equals: [{get_param: NovaReservedHugePages}, []]
live_migration_optimization_set:
and:
- not: {equals: [{get_param: [RoleParameters, TunedProfileName]}, 'realtime-virtual-host']}
- reserved_huge_pages_set
permit_post_copy_set:
or:
- not: {equals: [{get_param: [RoleParameters, NovaLiveMigrationPermitPostCopy]}, '']}
- {get_param: NovaLiveMigrationPermitPostCopy}
permit_auto_converge_set:
or:
- not: {equals: [{get_param: [RoleParameters, NovaLiveMigrationPermitAutoConverge]}, '']}
- {get_param: NovaLiveMigrationPermitAutoConverge}
is_realtime:
equals: [{get_param: [RoleParameters, TunedProfileName]}, 'realtime-virtual-host']
ovs_dpdk_socket_memory_not_set:
and:
- equals: [{get_param: [RoleParameters, OvsDpdkSocketMemory]}, ""]
@ -1121,20 +1113,14 @@ outputs:
nova::compute::live_migration_wait_for_vif_plug: {get_param: NovaLiveMigrationWaitForVIFPlug}
nova::migration::libvirt::live_migration_permit_post_copy:
if:
- permit_post_copy_set
- is_realtime
- false
- {get_attr: [RoleParametersValue, value, nova_permit_post_copy]}
- if:
- live_migration_optimization_set
- true
- false
nova::migration::libvirt::live_migration_permit_auto_converge:
if:
- permit_auto_converge_set
- is_realtime
- false
- {get_attr: [RoleParametersValue, value, nova_permit_auto_converge]}
- if:
- live_migration_optimization_set
- true
- false
# TUNNELLED mode is not compatible with post_copy.
nova::migration::libvirt::live_migration_tunnelled: false
# NOTE: bind IP is found in hiera replacing the network name with the

View File

@ -27,6 +27,16 @@ parameters:
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
NovaLiveMigrationPermitPostCopy:
description: >
If "True" activates the instance on the destination node before migration is complete,
and to set an upper bound on the memory that needs to be transferred. Post copy
gets enabled per default if the compute roles is not a realtime role or disabled
by this parameter.
default: true
type: boolean
tags:
- role_specific
OvsDpdkCoreList:
description: >
List of cores to be used for DPDK lcore threads. Note, these threads
@ -145,7 +155,6 @@ parameters:
type: boolean
tags:
- role_specific
OvsDpdkEnableTSO:
description: |
Enable TSO in OVS DPDK datapath.
@ -154,6 +163,10 @@ parameters:
tags:
- role_specific
conditions:
is_realtime:
equals: [{get_param: [RoleParameters, TunedProfileName]}, 'realtime-virtual-host']
resources:
RoleParametersDpdk:
type: OS::Heat::Value
@ -174,6 +187,7 @@ resources:
pmd_load_threshold: OvsPmdLoadThreshold
pmd_improvement_threshold: OvsPmdImprovementThreshold
pmd_rebal_interval: OvsPmdRebalInterval
nova_postcopy: NovaLiveMigrationPermitPostCopy
- values: {get_param: [RoleParameters]}
- values:
OvsDpdkCoreList: {get_param: OvsDpdkCoreList}
@ -189,6 +203,7 @@ resources:
OvsPmdLoadThreshold: {get_param: OvsPmdLoadThreshold}
OvsPmdImprovementThreshold: {get_param: OvsPmdImprovementThreshold}
OvsPmdRebalInterval: {get_param: OvsPmdRebalInterval}
NovaLiveMigrationPermitPostCopy: {get_param: NovaLiveMigrationPermitPostCopy}
BootParams:
type: ./../kernel/kernel-boot-params-baremetal-ansible.yaml
@ -226,3 +241,8 @@ outputs:
- {get_param: OvsDisableEMC}
- 0
tripleo_ovs_dpdk_enable_tso: {get_attr: [RoleParametersDpdk, value, enable_tso]}
tripleo_ovs_dpdk_vhost_postcopy_support:
if:
- is_realtime
- false
- {get_attr: [RoleParametersDpdk, value, nova_postcopy]}