vSekar Blog

Getting Hands Dirty With Technology

  • About vSekar
  • Get in Touch
  • Facebook
  • Twitter
  • LinkedIn
Posts and Views are my Own
You are here: Home / storage / Storage Plugins – PSA, NMP

Storage Plugins – PSA, NMP

February 19, 2019 By v

This article is Part of Becoming a VMware Storage Expert series 

Storage Plugins – When you use ESXi with a block device presented using iSCSi or FC, you might have seen or heard terms like PSP, SATP, PSA, NMP and ALUA

While we have already discussed a few basics of ALUA, This post will be discussing what are the Plugins involved how they work. This post is a part of Becoming a VMware Storage Expert series

Pluggable Storage Architecture (PSA)

Starting ESXi 3.5 VMware uses Pluggable Storage Architecture (PSA). PSA enables Storage Vendors to build their own Multipathing Plugin(MPP) using API’s under PSA. This will allow 3rd party vendors to develop their Load balancing, failover mechanisms and plug it into the Architecture.

Availability is critical and redundant paths to storage are essential. One of the key functions of the storage component in vSphere is to provide multipathing (that is, which path a given I/O should use if there are multiple paths) and failover (that is, I/O switching to using another path when a path goes down).

VMware, by default, provides a generic multipathing plug-in (MPP) called the Native Multipathing Plug-in (NMP).

Native Multipathing Plug-in (NMP)

Native Multipathing Plug-in (NMP)NMP works with SATP and PSP to handle Failover and Multipathing and it takes care of

  • Registering logical devices with the PSA framework
  • Receiving input/output (I/O) requests for logical devices it registered with the PSA framework
  • Completes the I/Os and posts completion of the SCSI command block with the PSA framework, which includes the following operations:
  • Selecting the physical path to which it sends the I/O requests
  • Handling failure conditions encountered by the I/O requests
  • Handles task management operations, such as aborts/reset

PSA communicates with NMP for the following operations:

  • Opening/closing logical devices
  • Starting I/O to logical devices
  • Aborting an I/O to logical devices
  • Getting the name of the physical paths to logical devices
  • Getting the SCSI inquiry information for logical devices”

The below image explains how they fit together

PSA NMP Storage Plugins

SATP, PSP and MMP are explained in this article.

Share this:

  • Click to share on Twitter (Opens in new window)
  • Click to share on Facebook (Opens in new window)
  • Click to share on LinkedIn (Opens in new window)

Related

Filed Under: Availability, storage