From fa98d508ff28bb26b9db583ea3c49b19e047b958 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Sat, 20 Jan 2024 01:33:38 +0900 Subject: [PATCH] Add support for [libvirt] live_migration_bandwidth Change-Id: I6b066d1b8cb23fcfdd435c934821f2a47f09fea5 --- manifests/migration/libvirt.pp | 10 ++++++++-- .../live_migration_bandwidth-a1c4e2f778cc542d.yaml | 5 +++++ spec/classes/nova_migration_libvirt_spec.rb | 3 +++ 3 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/live_migration_bandwidth-a1c4e2f778cc542d.yaml diff --git a/manifests/migration/libvirt.pp b/manifests/migration/libvirt.pp index b3d11c4f0..ad1aacc9b 100644 --- a/manifests/migration/libvirt.pp +++ b/manifests/migration/libvirt.pp @@ -41,9 +41,13 @@ # in place, and are validated. # Defaults to $facts['os_service_default'] # +# [*live_migration_bandwidth*] +# (optional) Maximum bandwidth(in MiB/s) to be used during migration. +# Defaults to $facts['os_service_default'] +# # [*live_migration_downtime*] -# (optional) Target maximum period of time Nova will try to keep the instance paused -# during the last part of the memory copy, in miliseconds. +# (optional) Target maximum period of time Nova will try to keep the instance +# paused during the last part of the memory copy, in miliseconds. # Defaults to $facts['os_service_default'] # # [*live_migration_downtime_steps*] @@ -162,6 +166,7 @@ class nova::migration::libvirt( $migration_inbound_addr = $facts['os_service_default'], $live_migration_inbound_addr = $facts['os_service_default'], $live_migration_with_native_tls = $facts['os_service_default'], + $live_migration_bandwidth = $facts['os_service_default'], $live_migration_downtime = $facts['os_service_default'], $live_migration_downtime_steps = $facts['os_service_default'], $live_migration_downtime_delay = $facts['os_service_default'], @@ -229,6 +234,7 @@ class nova::migration::libvirt( 'libvirt/live_migration_uri': value => $live_migration_uri; 'libvirt/live_migration_tunnelled': value => pick($live_migration_tunnelled, $facts['os_service_default']); 'libvirt/live_migration_with_native_tls': value => $live_migration_with_native_tls; + 'libvirt/live_migration_bandwidth': value => $live_migration_bandwidth; 'libvirt/live_migration_downtime': value => $live_migration_downtime; 'libvirt/live_migration_downtime_steps': value => $live_migration_downtime_steps; 'libvirt/live_migration_downtime_delay': value => $live_migration_downtime_delay; diff --git a/releasenotes/notes/live_migration_bandwidth-a1c4e2f778cc542d.yaml b/releasenotes/notes/live_migration_bandwidth-a1c4e2f778cc542d.yaml new file mode 100644 index 000000000..62a96e712 --- /dev/null +++ b/releasenotes/notes/live_migration_bandwidth-a1c4e2f778cc542d.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + The new ``nova::migration::libvirt::live_migration_bandwidth`` parameter + has been added. diff --git a/spec/classes/nova_migration_libvirt_spec.rb b/spec/classes/nova_migration_libvirt_spec.rb index 7e9d13143..fbde6e214 100644 --- a/spec/classes/nova_migration_libvirt_spec.rb +++ b/spec/classes/nova_migration_libvirt_spec.rb @@ -40,6 +40,7 @@ describe 'nova::migration::libvirt' do it { is_expected.to contain_nova_config('libvirt/migration_inbound_addr').with_value('')} it { is_expected.to contain_nova_config('libvirt/live_migration_tunnelled').with_value('') } it { is_expected.to contain_nova_config('libvirt/live_migration_with_native_tls').with_value('') } + it { is_expected.to contain_nova_config('libvirt/live_migration_bandwidth').with_value('') } it { is_expected.to contain_nova_config('libvirt/live_migration_downtime').with_value('') } it { is_expected.to contain_nova_config('libvirt/live_migration_downtime_steps').with_value('') } it { is_expected.to contain_nova_config('libvirt/live_migration_downtime_delay').with_value('') } @@ -123,6 +124,7 @@ describe 'nova::migration::libvirt' do let :params do { :live_migration_tunnelled => true, + :live_migration_bandwidth => 1024, :live_migration_downtime => 800, :live_migration_downtime_steps => 15, :live_migration_downtime_delay => 5, @@ -131,6 +133,7 @@ describe 'nova::migration::libvirt' do } end it { is_expected.to contain_nova_config('libvirt/live_migration_tunnelled').with(:value => true) } + it { is_expected.to contain_nova_config('libvirt/live_migration_bandwidth').with_value(1024) } it { is_expected.to contain_nova_config('libvirt/live_migration_downtime').with_value(800) } it { is_expected.to contain_nova_config('libvirt/live_migration_downtime_steps').with_value(15) } it { is_expected.to contain_nova_config('libvirt/live_migration_downtime_delay').with_value(5) }