VMware Telco Cloud Automation configurations to support Enhanced Data Path or ENS.
Enhanced data path or ENS provides superior network performance. It targets NFV workload and uses the DPDK capabilities to enhance the network performance. To support ENS on VMware Telco Cloud Automation, make the following changes in the Infrastructure Requirements Designer.
Prerequisites
- Ensure that all the hosts in the cluster are homogeneous.
- Install latest ENS NIC drivers compatible with NIC Model and remove the older drivers. For details, see Enhanced Data Path.
- Ensure that you create a new DVS for ENS workloads and prepare the DVS with NSX-T ENS.
- If you want to use multiple NICs as Uplinks in NSX-T, VMware Telco Cloud Automation recommends to set the NIC Teaming policy to
Load Balance Source
.
Note:
- When you create DVS for ENS, all connected Portgroups or NSX-T segments start leveraging Enhanced Datapath.
- VMware Telco Cloud Automation does not recommend the use of ENS DVS for VMotion and vSAN traffic.
Procedure
- Do not set
isNumaConfigNeeded
in CSAR as NSX-T can automatically aligns the VNIC of Node Pool with NUMA, PNIC, and ENS L-cores. However if you set isNumaConfigNeeded = True
in CSAR, then VMware Telco Cloud Automation tries to align the Node Pool with NUMA and ENS L-cores.
infra_requirements:
node_components:
latency_sensitivity: high
isNumaConfigNeeded: [true | false] <---- if True, TCA will send only memory pinning to VMConfig operator if underlying network ENS enabled.
- Set the CTX value.
infra_requirements:
node_components:
network:
devices:
- deviceType: vmxnet3 <-- vmxnet3
networkName: F1U
resourceName: vmxnet3res <-- resourceName
targetDriver: [igb_uio | vfio-pci] <-- driver name
additionalProperties: <-- ENS related config i.e.., Setting multi context for device
ctxPerDev: [1|2|3]
Note:
i. If ‘targetDriver’ is not provided, then providing interfaceName for the device is mandatory.
ii. If ctxPerDev is set, map the device to ENS capable network while instantiating CNF.
iii. ctxPerDev property is applied per interface level to the Node pool and can be seen in VM vmx file as ethernetX.ctxPerDev (where X is the interface number).
- Set Key-Value List to enable Receive Side Scaling function
infra_requirements:
node_components:
network:
devices:
- deviceType: vmxnet3 <- vmxnet3
networkName: F1U
resourceName: vmxnet3res <--
resourceName
targetDriver: [igb_uio | vfio-pci] <--
driver name
additionalProperties:
ethernetArgs: <-- ENS
related config
i.e.., Setting multi
context for device
ctxPerDev: 3
pnicFeatures: 4
rssOffload: true
udpRss: 1
Note:
i. If ‘targetDriver’ is not provided, then providing interface Name for the device is mandatory.
ii. If ctxPerDev/pnicFeatures/rssOffload/udpRss are set, map the device to ENS capable network while instantiating CNF.
iii. ctxPerDev/pnicFeatures/rssOffload/udpRss properties are applied per interface level to the Node pool and can be seen in VM vmx file as ethernetX.ctxPerDev/ethernetX.pnicFeatures/
ethernetX.rssOffload/ethernetX.udpRss
(where X is the interfacenumber).