Merge "Add ability to collocate pinned and unpinned instance on same host"

This commit is contained in:
Zuul 2019-10-16 17:54:07 +00:00 committed by Gerrit Code Review
commit 842611379c
2 changed files with 50 additions and 8 deletions

View File

@ -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}

View File

@ -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.