Virtual machine vmnic switches after vmnic port link down/up even when Failback is set to No in distributed port group settings
search cancel

Virtual machine vmnic switches after vmnic port link down/up even when Failback is set to No in distributed port group settings

book

Article ID: 413107

calendar_today

Updated On:

Products

VMware vSphere ESX 7.x VMware vSphere ESX 8.x

Issue/Introduction

When configuring a distributed port group with multiple active uplinks and setting Failback to No, a virtual machine’s vmnic may still switch after a vmnic port link goes down and comes back up.

Example:
The following settings are configured:

  • Load balancing: Route based on original virtual port
  • Network failure detection: Link status only
  • Notify switches: Yes
  • Failback: No
  • Failover order: Active uplinks -> Uplink1 (vmnic2), Uplink2 (vmnic3)

The virtual machine’s uplink (vmnic) is checked using the esxtop command under TEAM-PNIC.

(1) vmnic2 link is brought down.
(2) vmnic2 link is brought back up.

Result:

Initial state  : TEAM-PNIC:vmnic2
After step (1) : TEAM-PNIC:vmnic3
After step (2) : TEAM-PNIC:vmnic2

Environment

ESXi 7.0U3 and later

Cause

When the system advanced setting TeamingNUMAAware is enabled, vmnics belonging to the same NUMA node are prioritized in teaming.
TeamingNUMAAware was introduced in ESXi 7.0 Update 3 and is enabled by default.

Note:
In a NUMA system, multiple CPUs are grouped into "nodes" each with its own dedicated local memory. Processors can access their own local memory (local access) faster than memory from another node (remote access), resulting in non-uniform memory access times.

Resolution

Workaround :
Disable TeamingNUMAAware.

Example:

Check current setting:
# esxcfg-advcfg --get /Net/TeamingNUMAAware
Value of TeamingNUMAAware is 1
#
Disable the setting:
# esxcfg-advcfg --set 0 /Net/TeamingNUMAAware
Value of TeamingNUMAAware is 0
#