VMware Integrated OpenStack supports NUMA aware placement on the underlying vSphere platform. This feature provides low latency and high throughput to Virtual Network Functions (VNFs) that run on Telco environments.

For more information about NUMA, see Using NUMA Instances with ESXi.

To achieve low latency and high throughput, it is important that vCPUs, memory, and physical NICs that are used for VM traffic are aligned on same NUMA node. You must create a specific teaming policy that depends on the type of deployment that you have.

Selecting a physical NIC for placement is a manual configuration.

Procedure

  1. Login to the ESXi hosts in your data center and run the following command to gather information about the current NUMA configuration.

    vsish -e get /net/pNics/vmnic<id>/properties | grep 'Device NUMA Node'

  2. If you use overlay networks, all VTEPs are associated to a dvportgroup and you must group all physical NICs on a given NUMA node and create a teaming policy that includes only the physical NICs on that NUMA node.
  3. If you use VLAN based network backed by dvportgroup, create teaming policy that uses only physical NICs from the given NUMA node and create a Neutron portgroup type provider network.

    neutron net-create --provider:network_type portgroup <numa_network_name>

  4. Specify the numa.nodeAffinity metadata in a VMware Integrated OpenStack flavor.

    nova flavor-key <uuid> set vmware:extra_config='{"numa.nodeAffinity": "node_ID"}'

  5. Boot the instance on OpenStack with this flavor and select a Neutron network where the physical NICs are from same NUMA node.