Device aliases, also called device names, are short names associated with I/O adapters in an I/O subsystem.

For example, network uplinks have aliases such as vmnic0, vmnic1, and so on. SCSI adapter objects in the storage subsystem and graphics device objects also have aliases. A hardware device can be presented as multiple I/O adapters in the I/O subsystem. The I/O adapters can be of a different type from the underlying physical device. For example, an FCoE device is a storage I/O adapter that uses NIC hardware. Software iSCSI is a storage adapter using the network stack at the IP layer. Therefore, in the ESXi native driver model, aliases formally refer only to I/O adapters, and not to physical devices such as a PCI NIC or a PCI HBA.

Device Alias Assignment

A stateless ESXi deployment model is one where the ESXi host is not installed on hard disks, and is typically booted by using PXE. A stateful ESXi deployment model is one where the ESXi host is installed on local hard disks. Device alias assignment occurs during a stateless ESXi boot or a fresh installation of stateful ESXi. The ESXi host assigns aliases to I/O adapters in an order which is based on the underlying hardware enumeration order. The ESXi host assigns aliases first to on-board devices and then to add-in cards based on slot order. The ESXi host cannot assign aliases to absent devices or devices without supported drivers.

Аn uplink that uses a NIC that is built into the motherboard receives a vmnicN alias with lower number compared to an uplink of a PCI add-in card. The NIC driver might register more than one uplink. If one of the uplinks does not correspond to an enumerable hardware device, the ESXi host assigns the next available alias to the uplink after the uplink is registered with the system.

Persistence of Device Alias Configuration

After the ESXi host assigns aliases, alias configuration is persisted. The ESXi host attempts to keep the alias of each device the same regardless of the ESXi version updates, or hardware changes, such as adding or removing devices from slots.

The persistence of the alias configuration depends on the deployment model.
  • In stateful systems, the alias configuration is persisted locally on the host.
  • In stateless systems, if you do not manage the stateless system by using host profiles, the alias configuration is not persisted locally on the host.
  • In stateful and stateless systems that you manage by using host profiles, the alias configuration is persisted in the host profile. If you apply a host profile to a stateful host, the host profile overrides any locally persisted alias configuration.

Changes in the Device Alias Configuration

The persistence of alias configuration is based on the bus addresses of devices. If the bus address of a device is altered, the persisted alias configuration becomes inapplicable and the aliases assigned to the device might change.

Changes in the device alias configuration might occur in the following cases:
  • A driver upgrade might enumerate or present an I/O adapter differently to the system compared to how the I/O adapter is presented before the driver upgrade.
  • A stack upgrade might result in changes to parts of a multi-module driver setup, or to the ESXi I/O stack that supports a multi-module driver.
  • BIOS or device firmware upgrades might lead to incomplete port or slot information.
  • Changes in the slot position of a device.
Note: If you remove a device from the system, the alias configuration of the I/O adapters of the device is removed. If you add the same devices back to the system later, the I/O adapters of the device might not receive their previous aliases.

Device Alias Configuration in ESXi Clusters

Initial alias configuration is the same across a cluster of identical systems. However, even on a cluster that is considered homogenous, small differences in hardware or firmware might result in differences in the alias configuration between hosts.

Differences in the processing order during driver binding can also result in differences in alias configuration. For example, a NIC driver registers two uplinks, uplink-1 and uplink-2, for two ports of the same PCI device, where one of the ports is not hardware enumerable by the system. Timing changes in the order of registration of the uplinks might result in differences in how the ESXi hosts assign aliases to the uplinks. One ESXi host might assign the hardware-based alias to uplink-1, and another ESXi host might assign the hardware-based alias to uplink-2.

To match alias configuration across homogeneous hosts, you can use host profiles. The Device Alias Configuration host profile applies alias configuration to an ESXi host by mapping devices in the alias configuration to the ESXi host devices. The mapping operation is based on the hardware information sources that are used as the basis for initial alias assignment. For more information about information sources used for alias assignment, see the Knowledge Base article KB 2091560.

The Device Alias Configuration host profile also flags errors, for example, when a device is present in the host profile but not present on the host.

A heterogenous cluster does not have the same default alias configuration across its hosts. Due to the differences between the devices, a host profile cannot be applied cleanly.