diff --git a/deployment/nova/nova-compute-container-puppet.yaml b/deployment/nova/nova-compute-container-puppet.yaml index 3aea0ef479..7c9fd00460 100644 --- a/deployment/nova/nova-compute-container-puppet.yaml +++ b/deployment/nova/nova-compute-container-puppet.yaml @@ -147,20 +147,22 @@ parameters: default: '' tags: - role_specific - NovaVcpuPinSet: + NovaComputeCpuSharedSet: description: > - A list or range of physical CPU cores to reserve for virtual machine - processes. - Ex. NovaVcpuPinSet: ['4-12','^8'] will reserve cores from 4-12 excluding 8 + A list or range of host CPU cores to which emulator threads can be scheduled, + if NovaVcpuPinSet is set, or to which both emulator threads and processes for + unpinned instance CPUs (VCPUs) can be scheduled, if NovaVcpuPinSet is unset. + Ex. NovaComputeCpuSharedSet: [4-12,^8,15] will reserve cores from 4-12 + and 15, excluding 8. type: comma_delimited_list default: [] tags: - role_specific - NovaComputeCpuSharedSet: + NovaComputeCpuDedicatedSet: description: > - A list or range of physical CPU cores will be used for best-effort guest - vCPU resources (e.g. emulator threads in libvirt/QEMU). - Ex. NovaComputeCpuSharedSet: [4-12,^8,15] will reserve cores from 4-12 + A list or range of host CPU cores to which processes for pinned instance + CPUs (PCPUs) can be scheduled. + Ex. NovaComputeCpuDedicatedSet: [4-12,^8,15] will reserve cores from 4-12 and 15, excluding 8. type: comma_delimited_list default: [] @@ -337,6 +339,31 @@ parameters: tags: - role_specific + # DEPRECATED: the following options are deprecated and are currently maintained + # for backwards compatibility. They will be removed in future release. + NovaVcpuPinSet: + description: > + A list or range of host CPU cores to which processes for unpinned instance + CPUs (VCPUs) can be scheduled, if NovaCpuSharedSet is set, or to which + both emulator threads and processes for unpinned instance CPUs (VCPUs) + can be scheduled, if NovaCpuSharedSet is unset. + Ex. NovaVcpuPinSet: ['4-12','^8'] will reserve cores from 4-12 excluding 8 + type: comma_delimited_list + default: [] + tags: + - role_specific + +parameter_groups: +- label: deprecated + description: | + The following parameters are deprecated and will be removed. They should not + be relied on for new deployments. If you have concerns regarding deprecated + parameters, please contact the TripleO development team on IRC or the + Openstack mailing list. + parameters: + - NovaVcpuPinSet + + resources: ContainersCommon: @@ -382,6 +409,7 @@ resources: - map_replace: - nova::compute::vcpu_pin_set: NovaVcpuPinSet nova::compute::cpu_shared_set: NovaComputeCpuSharedSet + nova::compute::cpu_dedicated_set: NovaComputeCpuDedicatedSet nova::compute::reserved_host_memory: NovaReservedHostMemory nova::compute::neutron_physnets_numa_nodes_mapping: NeutronPhysnetNUMANodesMapping nova::compute::neutron_tunnel_numa_nodes: NeutronTunnelNUMANodes @@ -409,6 +437,7 @@ resources: - values: NovaVcpuPinSet: {get_param: NovaVcpuPinSet} NovaComputeCpuSharedSet: {get_param: NovaComputeCpuSharedSet} + NovaComputeCpuDedicatedSet: {get_param: NovaComputeCpuDedicatedSet} NovaReservedHostMemory: {get_param: NovaReservedHostMemory} NeutronPhysnetNUMANodesMapping: {get_param: NeutronPhysnetNUMANodesMapping} NeutronTunnelNUMANodes: {get_param: NeutronTunnelNUMANodes} diff --git a/releasenotes/notes/cpu-resources-f8b511d39c6e0cfe.yaml b/releasenotes/notes/cpu-resources-f8b511d39c6e0cfe.yaml new file mode 100644 index 0000000000..d3c0902d42 --- /dev/null +++ b/releasenotes/notes/cpu-resources-f8b511d39c6e0cfe.yaml @@ -0,0 +1,13 @@ +--- +features: + - | + Add new role parameter ``NovaComputeCpuDedicatedSet`` to specify + list or range of physical CPU cores to reserve to be used for + allocating PCPU resources to virtual machines. + Defaults to [] +deprecations: + - | + The ``NovaVcpuPinSet`` parameter is deprecated and superseded by + ``NovaComputeCpuSharedSet`` and ``NovaComputeCpuDedicatedSet`` + parameters, which are used to define list or range of VCPU and PCPU + resources for virtual machine processes.