Pluggable Storage Architecture (PSA) is a modular storage management framework, which was introduced with VMware vSphere 5. It has a plugin framework, which can be used by third party vendors to create Multipathing plugins, which can leverage array-specific Multipathing, load balancing, or failover features. VMware has its own default Multipathing plugin called the Native Multipathing Plugin (NMP):
Since, third party plugins are beyond the scope of this book, we will delve deeper into the components and functions of VMware NMP.
Every storage device detected by the ESXi host will be associated with a Multipathing plugin (MPP). This is achieved with the help of a claim rule. If there aren't any claim rules for a third party MPP, then the VMware NMP will claim the device and associate an SATP and PSP to it.
VMware NMP has two main components:
SATP is responsible for keeping a tab on the status of every storage path it is associated with and capture details of a path failure, whereas PSP determines which physical path has to be chosen to send the I/O to the device. PSP relies on the path status information from the SATP.
VMware NMP uses both SATP and PSP to maintain access to the storage devices presented to the ESXi host. When I/O is issued to a storage device the NMP will instruct the PSP corresponding to the LUN to place the I/O on a path based on the policy (MRU/Fixed/RR) chosen. If for some reason the I/O operation failed to complete, it is reported back to the NMP. The NMP in turn instructs the SATP to determine the cause of the failure and take appropriate action. If the I/O had failed due to a path failure, SATP will mark that path as dead and make another path active. NMP will then call the PSP again to retry the I/O. This time the PSP can choose to use the new active path.
PSA allows storage vendors to code their own SATPs, PSPs, or an entire MPP itself. The vendor SATPs and PSPs can plug into the VMware NMP and be active alongside the VMware bundled SATPs and PSPs.
VMware NMP includes an SATP for every supported storage array. Depending on the array type, every SATP will have a default PSP.
Although every array type will have an SATP associated with it, there can be only three PSPs associated with them, and they are:
Each of these Path Selection Policies (PSP) function uniquely. VMware NMP uses the following names to represent them in the PSA framework:
The Round robin (RR) path selection policy will distribute I/O over active or active optimized paths (in case of ALUA array) in a round robin fashion after every 1000 IOPS per path.
18.224.62.105