When using PowerCLI to query the MultipathPolicy of an NVMe over TCP datastore, the Get-ScsiLun cmdlet may report the policy as "Fixed," whereas the vSphere Client UI correctly displays the actual path selection scheme (e.g., LB-LATENCY or LB-RR).
The Get-ScsiLun cmdlet is designed for standard SCSI devices and does not natively support the VMware High Performance Plug-In (HPP) architecture used by NVMe over TCP. Consequently, it defaults to reporting "Fixed" when it cannot interpret the HPP parameters.
To accurately retrieve the Path Selection Scheme for NVMe over TCP devices via PowerCLI, utilize the ESXCLI HPP namespace directly instead of Get-ScsiLun.
$esxcli.storage.hpp.device.list.Invoke(@{device="<DEVICEUUID>"})This command directly queries the HPP module to provide the correct PathSelectionScheme used by the NVMe over TCP storage.
Example:
CurrentPath : vmhba##:C#:T#:L##
Device : uuid.##############################
DeviceDisplayName : NVMe TCP Disk (uuid.##############################)
IsLocal : false
IsSSD : true
Path :
PathSelectionScheme : LB-RR
PathSelectionSchemeConfig : {iops=1000,bytes=10485760;}
Paths : {vmhba##:C#:T#:L##, vmhba##:C#:T#:L##, vmhba##:C#:T#:L##, vmhba##:C#:T#:L##...}
UseANO : false
WorkingPathSet : {vmhba##:C#:T#:L##, vmhba##:C#:T#:L##, vmhba##:C#:T#:L##, vmhba##:C#:T#:L##..}