VMware Edu & Cert Community
shahed_hasib
Enthusiast
Enthusiast
Jump to solution

Very important storage terminologies for VCAP-DCD

I compiled this post from different posts (Duncan Epping), Vipin V.K Enthusiast vExpert, vmware KB, etc. So total credit goes to them.

I think this post will help the VCAP-DCD candidates for both Design items and drag-n-drop items.

vmware introduced a new storage architecture for vsphere named PSA (Pluggable Storage Architecture). this architecture uses plug-ins. This (PSA) is just the name of the new concept.

Let’s start with the native VMware plugins.

The Native Multipathing(NMP) module is the default module that ESX(as of vSphere) uses. It contains both SATP (storage array type plug-in) and PSP (path selection plug-in) plug-ins.

If your array is listed on the hardware compatibility list then VMware ESXi pre-decides (with the help of PSP plugins: VMW_PSP_FIXED, VMW_PSP_MRU, VMW_PSP_RR) which multipathing “algorithm” will be used. ESX will natively do: Fixed, MRU, Round-Robin.

Note: ***vmware native Multipathing algorithm => Fixed, MRU, Round-Robin***

The NMP uses rules to decide which Storage Array Type Plugin(SATP) will be used and which Path Selection Plugin(PSP) will be used. If you want to edit these rules you can use “esxcli”, and you can find the rules in the “/etc/vmware/esx.conf”. For instance the default PSP for the EMC Symmetrix array is Fixed:

/storage/plugin/NMP/config[VMW_SATP_SYMM]/defaultpsp = "VMW_PSP_FIXED"

What does SATP do?

The SATP handles path fail-overs, it’s as simple as that. This of course will be reported back to the NMP, because the NMP is responsible for the i/o flow. The SATP will monitor the health of a path and take the required action depending on the type of array. Nothing more, nothing less.

What does PSP do?

The PSP determines which path will be used for an I/O request, in other words the PSP deals with the Fixed, MRU and Round-Robin algorithms.

Keep in mind that the type of PSP that will be used has already been pre-configured, it’s not the PSP that decides if it will do Fixed or MRU, it’s the NMP that decides this based on pre-defined rules stated above.

MPP

What’s next? That would be a Multipathing Plugin(MPP). vmware NMP is build by vmware, on the other hand  MPP’s are developed by the vendors of the arrays. EMC is one of the vendors that already demonstrated their MPP. Example: EMC’s MPP is known as Powerpath for ESX.

-------------------------------------------------------------------------------------------------

Different types of storage and multipathing policy:

Active-Active  :-  The storage system have two controllers and LUN(Virtual disk or storage device) can be accessed or host can perform I/O via both the controllers.

Active-Passive :- Host can have I/O to and from one LUN via one controller only (via the active controller- owner - of the LUN and not via the other )

ALUA             :- Asymmetric Logic Unit Access is where the storage system simulates the active-active feature (LUN can be accessed via both controllers but only one will be the owner of it)

Example: EMC VNX 5300 is not truly active/active array. It just a asymmetric logical unit access array.

For that reason ESX detect this EMC VNX 5300 as a ALUA storage and uses VMW_SATP_ALUA_CX  SATP plug-in.

Whether a storage system is active/active, active/passive or ALUA, the vmware PSP can be FIXED, MRU or RR based on array type. The thumb rule is:

1.For an Active/Passive array you would need to set the path policy (PSP) to “Most Recently Used“.(The default PSP for active/passive storage devices is VMW_PSP_MRU). There is no preferred path setting with the MRU policy.

2.An Active/Active array should have the path policy set to “Fixed“. (The default PSP for active-active storage devices is VMW_PSP_FIXED.)

Important: VMware does not recommend you use VMW_PSP_FIXED for devices (array) that have the VMW_SATP_ALUA storage array type policy assigned to them. This is because (As per my understanding) ALUA is not truly Active/active storage, so in this case VMW_PSP_MRU should be used.

3.For both active/active and active/passive array we can choose “round robin (RR)”

The host uses an automatic path selection algorithm that rotates through all active paths when connecting to active-passive arrays, or through all available paths when connecting to active-active arrays. Automatic path selection implements load balancing across the physical paths available to your host. Load balancing is the process of spreading I/O requests across the paths. The goal is to optimize throughput performance such as I/O per second, megabytes per second, or response times.

VMW_PSP_RR is the default for a number of arrays and can be used with both active-active and active-passive arrays to implement load balancing across paths for different LUNs.

So the rule is for choosing PSP for different array type:

For Active/Active array – FIXED, RR

For Active/Passive array – MRU, RR

For ALUA array (which is really a simulated Active/Active array, not truly active/active) – MRU, RR

In case of ALUA storage,  vmware MRU also takes optimized / unoptimized paths into account.

So in case of a previous optimized path back in operation, I/O is shifted to the optimized path (that was previously using before a failover to a unoptimized path)

MRU fails over to an alternative path when any of the following SCSI sense codes NOT_READY, ILLEGAL_REQUEST, NO_CONNECT and SP_HUNG are received from the array. Keep in mind that MRU doesn’t failback.

For Active/Active SAN’s, the Fixed path policy a fail over only occurs when the SCSI sense code “NO_CONNECT” is received from the array. When the path returns a fail back will occur.

As you can see, four against just one SCSI sense code. You can imagine what happens if you change MRU to Fixed when it’s not supported by the array. SCSI sense codes will be sent out from the array, but ESX isn’t expecting them (NOT_READY, ILLEGAL_REQUEST, SP_HUNG) and will not do a path fail over.

0 Kudos
1 Solution

Accepted Solutions
JPM300
Commander
Commander
Jump to solution

Great write up!

When it comes to the PSP where it can be either MRU or RR it is VERY important on the DCD exam that you pay close attention to what the requirements are and what the instructions tell you to do.

Other then that, fantastic job consolidating this information

View solution in original post

0 Kudos
9 Replies
JPM300
Commander
Commander
Jump to solution

Great write up!

When it comes to the PSP where it can be either MRU or RR it is VERY important on the DCD exam that you pay close attention to what the requirements are and what the instructions tell you to do.

Other then that, fantastic job consolidating this information

0 Kudos
shahed_hasib
Enthusiast
Enthusiast
Jump to solution

Thanks a lot. We are discussing here to help each other. Some of us just doing extra ordinary job like you.

0 Kudos
ssbkang
Enthusiast
Enthusiast
Jump to solution

Well written, nice job!

0 Kudos
vin01
Expert
Expert
Jump to solution

Thanks for posting   Well returned..

Regards Vineeth.K
0 Kudos
hongreg
Contributor
Contributor
Jump to solution

The VMware vSphere Design 2nd page 226 say that

Fixed The default policy for active/active array LUNs. It allows you to set a preferred path,

which the host uses unless the path has failed. If the preferred path fails and then become available

again, the path automatically returns to the preferred one. With a fixed policy, you set the

HBA to LUN mappings, providing basic load-balancing to maximize the bandwidth usage across

the host’s HBAs. Active/passive arrays can suffer from path thrashing if this policy is used.

The data just  works on one SP, How to loadbalance by fixed .  Why Active/Active have to Fixed .

0 Kudos
shahed_hasib
Enthusiast
Enthusiast
Jump to solution

Active/Active don't have to Fixed, it can be Round Robin also.

Fixed does not provide load balancing.

only Round robin can provide load balancing.

round robin can work both active/active and active/passive array (if array vendor supports).

0 Kudos
hongreg
Contributor
Contributor
Jump to solution

I think if active-active and Fixed in sun enviroment, then one esxi fixed to SPA and anthoer esxi fixed to SPB .

They are all access same LUN . This will load balance is there right?

0 Kudos
firestartah
Virtuoso
Virtuoso
Jump to solution

Fixed doesn't do load balancing per se as a path is selected and then traffic is sent down that path to a specific LUN until that path is down. True it means traffic goes down both paths to the LUNs the host has access to ,thereby the traffic is split but the split isn't 50/50 based on amount of traffic being sent so there is a possibility that traffic might be higher on one than another. This is why Round Robin is a good option as if you leave the default setting for it then it will balance traffic on 1k IOPS between the paths.

If you found this or other information useful, please consider awarding points for "Correct" or "Helpful". Gregg http://thesaffageek.co.uk
0 Kudos
hongreg
Contributor
Contributor
Jump to solution

I get it,  Thank your explanation.

0 Kudos