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 31ce4e9cf..7016b46d9 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, @@ -209,8 +215,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 ? { @@ -218,9 +225,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 {