From c966b231146d9ade2fd85a7715e6a93d12528253 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Tue, 21 Mar 2023 21:22:26 +0900 Subject: [PATCH] Test deployment with modular libvirt daemons This enables modular libvirt daemons in CentOS so that we can test both monolithic libvirt and modular libvirt in our CI jobs. Depends-on: https://review.opendev.org/878193 Change-Id: I2588337c013068174f10e4d39092450debece07b --- fixtures/scenario005.pp | 5 ++++- manifests/nova.pp | 21 ++++++++++++++++----- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/fixtures/scenario005.pp b/fixtures/scenario005.pp index 1c3c986b2..8ba98e912 100644 --- a/fixtures/scenario005.pp +++ b/fixtures/scenario005.pp @@ -23,9 +23,11 @@ if $facts['os']['name'] == 'Ubuntu' { case $facts['os']['family'] { 'Debian': { $ipv6 = false + $modular_libvirt = false } 'RedHat': { $ipv6 = true + $modular_libvirt = true } default: { fail("Unsupported osfamily (${facts['os']['family']})") @@ -55,7 +57,8 @@ class { 'openstack_integration::neutron': } include openstack_integration::placement class { 'openstack_integration::nova': - cinder_enabled => true, + cinder_enabled => true, + modular_libvirt => $modular_libvirt, } class { 'openstack_integration::octavia': provider_driver => 'ovn' diff --git a/manifests/nova.pp b/manifests/nova.pp index 55fcae742..46f3692cf 100644 --- a/manifests/nova.pp +++ b/manifests/nova.pp @@ -14,6 +14,11 @@ # Possible values include custom, host-model, none, host-passthrough. # Defaults to 'none' # +# [*modular_libvirt*] +# (optional) Use modular libvirt daemons instead of the monolithic libvirtd +# deamon +# Defaults to false +# # [*volume_encryption*] # (optional) Boolean to configure or not volume encryption # Defaults to false. @@ -30,6 +35,7 @@ class openstack_integration::nova ( $libvirt_rbd = false, $libvirt_virt_type = 'qemu', $libvirt_cpu_mode = 'none', + $modular_libvirt = false, $volume_encryption = false, $notification_topics = $facts['os_service_default'], $cinder_enabled = false, @@ -201,8 +207,9 @@ class openstack_integration::nova ( default => 'tcp' } class { 'nova::migration::libvirt': - transport => $migration_transport, - listen_address => $::openstack_integration::config::host, + transport => $migration_transport, + listen_address => $::openstack_integration::config::host, + modular_libvirt => $modular_libvirt, } $images_type = $libvirt_rbd ? { @@ -210,9 +217,13 @@ class openstack_integration::nova ( false => $facts['os_service_default'] } class { 'nova::compute::libvirt': - virt_type => $libvirt_virt_type, - cpu_mode => $libvirt_cpu_mode, - images_type => $images_type, + virt_type => $libvirt_virt_type, + cpu_mode => $libvirt_cpu_mode, + images_type => $images_type, + manage_libvirt_services => false, + } + class { 'nova::compute::libvirt::services': + modular_libvirt => $modular_libvirt, } class { 'nova::compute::libvirt::networks': } if $libvirt_rbd {