diff --git a/manifests/workarounds.pp b/manifests/workarounds.pp index eaf171c45..3e2f320e2 100644 --- a/manifests/workarounds.pp +++ b/manifests/workarounds.pp @@ -21,6 +21,16 @@ # to update network switches in the post live migration phase on the destination. # Defaults to $facts['os_service_default'] # +# [*qemu_monitor_announce_self_count*] +# (Optional) The total number of times to send the announce_self command to +# the QEMU monitor when enable_qemu_monitor_announce_self is enabled. +# Defaults to $facts['os_service_default'] +# +# [*qemu_monitor_announce_self_interval*] +# (Optional) The number of seconds to wait before re-sending the announce_self +# command to the QEMU monitor. +# Defaults to $facts['os_service_default'] +# # [*wait_for_vif_plugged_event_during_hard_reboot*] # (Optional) If set Nova will wait for the Neutron ML2 backend to sent vif # plugged events when performing hard reboot. @@ -48,6 +58,8 @@ class nova::workarounds ( $never_download_image_if_on_rbd = $facts['os_service_default'], $ensure_libvirt_rbd_instance_dir_cleanup = $facts['os_service_default'], $enable_qemu_monitor_announce_self = $facts['os_service_default'], + $qemu_monitor_announce_self_count = $facts['os_service_default'], + $qemu_monitor_announce_self_interval = $facts['os_service_default'], $wait_for_vif_plugged_event_during_hard_reboot = $facts['os_service_default'], $disable_compute_service_check_for_ffu = $facts['os_service_default'], $skip_hypervisor_version_check_on_lm = $facts['os_service_default'], @@ -69,6 +81,10 @@ class nova::workarounds ( value => $ensure_libvirt_rbd_instance_dir_cleanup; 'workarounds/enable_qemu_monitor_announce_self': value => $enable_qemu_monitor_announce_self; + 'workarounds/qemu_monitor_announce_self_count': + value => $qemu_monitor_announce_self_count; + 'workarounds/qemu_monitor_announce_self_interval': + value => $qemu_monitor_announce_self_interval; 'workarounds/wait_for_vif_plugged_event_during_hard_reboot': value => join(any2array($wait_for_vif_plugged_event_during_hard_reboot), ','); 'workarounds/disable_compute_service_check_for_ffu': diff --git a/releasenotes/notes/qemu_monitor_announce_self-tunables-8c18e1b7d6cc1ec5.yaml b/releasenotes/notes/qemu_monitor_announce_self-tunables-8c18e1b7d6cc1ec5.yaml new file mode 100644 index 000000000..d90a6e47c --- /dev/null +++ b/releasenotes/notes/qemu_monitor_announce_self-tunables-8c18e1b7d6cc1ec5.yaml @@ -0,0 +1,8 @@ +--- +features: + - | + The ``nova::workarounds`` class now supports the following two new + parameters. + + - ``qemu_monitor_announce_self_count`` + - ``qemu_monitor_announce_self_interval`` diff --git a/spec/classes/nova_workarounds_spec.rb b/spec/classes/nova_workarounds_spec.rb index 77e01caf0..46e055574 100644 --- a/spec/classes/nova_workarounds_spec.rb +++ b/spec/classes/nova_workarounds_spec.rb @@ -13,6 +13,8 @@ describe 'nova::workarounds' do it { is_expected.to contain_nova_config('workarounds/never_download_image_if_on_rbd').with_value('') } it { is_expected.to contain_nova_config('workarounds/ensure_libvirt_rbd_instance_dir_cleanup').with_value('') } it { is_expected.to contain_nova_config('workarounds/enable_qemu_monitor_announce_self').with_value('') } + it { is_expected.to contain_nova_config('workarounds/qemu_monitor_announce_self_count').with_value('') } + it { is_expected.to contain_nova_config('workarounds/qemu_monitor_announce_self_interval').with_value('') } it { is_expected.to contain_nova_config('workarounds/wait_for_vif_plugged_event_during_hard_reboot').with_value('') } it { is_expected.to contain_nova_config('workarounds/disable_compute_service_check_for_ffu').with_value('') } it { is_expected.to contain_nova_config('workarounds/skip_hypervisor_version_check_on_lm').with_value('') } @@ -25,6 +27,8 @@ describe 'nova::workarounds' do :never_download_image_if_on_rbd => true, :ensure_libvirt_rbd_instance_dir_cleanup => true, :enable_qemu_monitor_announce_self => true, + :qemu_monitor_announce_self_count => 3, + :qemu_monitor_announce_self_interval => 1, :wait_for_vif_plugged_event_during_hard_reboot => ['normal', 'direct'], :disable_compute_service_check_for_ffu => true, :skip_hypervisor_version_check_on_lm => true, @@ -35,6 +39,8 @@ describe 'nova::workarounds' do it { is_expected.to contain_nova_config('workarounds/never_download_image_if_on_rbd').with_value('true') } it { is_expected.to contain_nova_config('workarounds/ensure_libvirt_rbd_instance_dir_cleanup').with_value('true') } it { is_expected.to contain_nova_config('workarounds/enable_qemu_monitor_announce_self').with_value(true) } + it { is_expected.to contain_nova_config('workarounds/qemu_monitor_announce_self_count').with_value(3) } + it { is_expected.to contain_nova_config('workarounds/qemu_monitor_announce_self_interval').with_value(1) } it { is_expected.to contain_nova_config('workarounds/wait_for_vif_plugged_event_during_hard_reboot').with_value('normal,direct') } it { is_expected.to contain_nova_config('workarounds/disable_compute_service_check_for_ffu').with_value(true) } it { is_expected.to contain_nova_config('workarounds/skip_hypervisor_version_check_on_lm').with_value(true) }