VMware Integrated OpenStack supports non-uniform memory access (NUMA)-aware placement of OpenStack instances on the underlying vSphere environment.

Important: This feature is offered in VMware Integrated OpenStack Carrier Edition only. For more information, see VMware Integrated OpenStack Licensing.

NUMA links small, cost-effective nodes using a high-performance connection to provide low latency and high throughput. This performance is often required for virtual network functions (VNFs) in telecommunications environments. For information about NUMA in vSphere, see Using NUMA Instances with ESXi in vSphere Resource Management.

To obtain information about your current NUMA configuration, run the following command on your ESXi hosts:

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

Prerequisites

  • Ensure that vCPUs, memory, and physical NICs intended for virtual machine traffic are placed on same node.
  • In vSphere, create a teaming policy that includes all physical NICs on the NUMA node. See Teaming and Failover Policy in vSphere Networking.

Procedure

  1. Log in to the OpenStack Management Server as viouser.
  2. Switch to the root user and load the cloud administrator credentials file.
    sudo su -
    source ~/cloudadmin.rc
  3. Create a Neutron network on which all physical NICs are located on a single NUMA node.
  4. Create an OpenStack flavor that includes the numa.nodeAffinity property.
    nova flavor-key flavor-id set vmware:extra_config='{"numa.nodeAffinity": "numa-node-id"}'
  5. Launch an OpenStack instance using the flavor and network created in this procedure.