6.0.1

Table Of Contents
Path Thrashing Causes Slow LUN Access
If your ESXi host is unable to access a LUN, or access is very slow, you might have a problem with path
thrashing, also called LUN thrashing.
Problem
Your host is unable to access a LUN, or access is very slow. The host's log files might indicate frequent path
state changes. For example:
Frequent path state changes are occurring for path vmhba2:C0:T0:L3. This may indicate a storage
problem. Affected device: naa.600600000000000000edd1. Affected datastores: ds1
Cause
The problem might be caused by path thrashing. Path thrashing might occur when two hosts access the
same LUN through different storage processors (SPs) and, as a result, the LUN is never available.
Path thrashing typically occurs on active-passive arrays. Path thrashing can also occur on a directly
connected array with HBA failover on one or more nodes. Active-active arrays or arrays that provide
transparent failover do not cause path thrashing.
Solution
1 Ensure that all hosts that share the same set of LUNs on the active-passive arrays use the same storage
processor.
2 Correct any cabling or masking inconsistencies between different hosts and SAN targets so that all
HBAs see the same targets.
3 Ensure that the claim rules defined on all hosts that share the LUNs are exactly the same.
4 Configure the path to use the Most Recently Used PSP, which is the default.
Increased Latency for I/O Requests Slows Virtual Machine Performance
If the ESXi host generates more commands to a LUN than the LUN queue depth permits, the excess
commands are queued in VMkernel. This increases the latency, or the time taken to complete I/O requests.
Problem
The host takes longer to complete I/O requests and virtual machines display unsatisfactory performance.
Cause
The problem might be caused by an inadequate LUN queue depth. SCSI device drivers have a configurable
parameter called the LUN queue depth that determines how many commands to a given LUN can be active
at one time. If the host generates more commands to a LUN, the excess commands are queued in the
VMkernel.
Solution
1 If the sum of active commands from all virtual machines consistently exceeds the LUN depth, increase
the queue depth.
The procedure that you use to increase the queue depth depends on the type of storage adapter the host
uses.
2 When multiple virtual machines are active on a LUN, change the Disk.SchedNumReqOutstanding
(DSNRO) parameter, so that it matches the queue depth value.
Chapter 7 Troubleshooting Storage
VMware, Inc. 63