Merge "Add NovaLibvirtMaxQueues role parameter to set [libvirt]/max_queues"

This commit is contained in:
Zuul 2021-01-31 04:10:01 +00:00 committed by Gerrit Code Review
commit fd89a8e0af
2 changed files with 30 additions and 0 deletions

@ -548,6 +548,17 @@ parameters:
default: []
tags:
- role_specific
NovaLibvirtMaxQueues:
type: number
description: >
Add parameter to configure the libvirt max_queues. The maximum number
of virtio queue pairs that can be enabled when creating a multiqueue guest.
The number of virtio queues allocated will be the lesser of the CPUs
requested by the guest and the max value defined.
Default 0 corresponds to not set
default: 0
tags:
- role_specific
# DEPRECATED: the following options are deprecated and are currently maintained
# for backwards compatibility. They will be removed in future release.
@ -744,6 +755,8 @@ resources:
NovaImageTypeExcludeList: {get_param: NovaImageTypeExcludeList}
NovaLiveMigrationPermitPostCopy: {get_param: NovaLiveMigrationPermitPostCopy}
NovaLiveMigrationPermitAutoConverge: {get_param: NovaLiveMigrationPermitAutoConverge}
NovaLibvirtMaxQueues: {get_param: NovaLibvirtMaxQueues}
conditions:
enable_instance_ha: {equals: [{get_param: EnableInstanceHA}, true]}
@ -804,6 +817,12 @@ conditions:
- equals: [{get_param: [RoleParameters, NovaLiveMigrationPermitAutoConverge]}, '']
- equals: [{get_param: NovaLiveMigrationPermitAutoConverge}, '']
nova_libvirt_max_queues_set:
not:
or:
- equals: [{get_param: NovaLibvirtMaxQueues}, 0]
- equals: [{get_param: [RoleParameters, NovaLibvirtMaxQueues]}, 0]
outputs:
role_data:
description: Role data for the Nova Compute service.
@ -921,6 +940,11 @@ outputs:
- libvirt_file_backed_memory_enabled
- '1.0'
- {get_attr: [RoleParametersValue, value, 'nova::ram_allocation_ratio']}
-
if:
- nova_libvirt_max_queues_set
- nova::compute::libvirt::max_queues: {get_attr: [RoleParametersValue, value, nova_libvirt_max_queues]}
- {}
service_config_settings:
rsyslog:
tripleo_logging_sources_nova_compute:

@ -0,0 +1,6 @@
---
features:
- |
Add NovaLibvirtMaxQueues role parameter to set [libvirt]/max_queues in
nova.conf of the compute. Default 0 corresponds to not set meaning the
legacy limits based on the reported kernel major version will be used.