DELL recently released their new Multipath Extension Module (MEM) for the EqualLogic PS Series of storage array. This updated MEM now supports vSphere 5.0.
I guess I should try to explain what a MEM is before going any further. VMware implements a Pluggable Storage Architecture (PSA) model in the VMkernel. This means that storage array vendors can write their own multipathing modules to plugin to the VMkernel I/O path. These plugins can co-exist alongside VMware’s own default set of modules. There are different modules for different tasks in the PSA. For instance, the specific details of handling path failover for a given storage array are delegated to the Storage Array Type Plugin (SATP). SATP is associated with paths. The specific details for determining which physical path is used to issue an I/O request (load balancing) to a storage device are handled by a Path Selection Plugin (PSP). PSP is associated with logical devices. The SATP & PSP are both MEMs (Multipath Extension Modules).
DELL’s MEM is actually a PSP. This means that it will take care of load balancing of I/O requests across all paths to the PS series arrays. DELL created a good Technical Report (TR) on their MEM which can be found here.
I spoke with Andrew McDaniel, one of DELL’s Lead Architects for VMware based in Ireland, and he was able to supply me with some additional information about this MEM. Firstly, since the MEM is essentially a PSP, devices from the EqualLogic array continue to use the Native Multipath Plugin (NMP) from VMware. This handles basic tasks like loading and unloading of MEMs, path discovery and removal, device bandwidth sharing between VMs, etc.
Any ESXi host with the DELL MEM installed will now have an additional Path Selection Policy. VMware ships ESXi with 3 default PSPs, and the DELL MEM makes up the fourth one. The list of installed PSPs can be shown via the command: esxcli storage nmp psp list
As you can see, the three standard PSPs are shown (VMW_PSP_MRU, VMW_PSP_RR & VMW_PSP_FIXED). The additional PSP is from DELL – DELL_PSP_EQL_ROUTED.
You might ask why would I need this additional PSP on top of the default ones from VMware. Well, the VMware ones are not optimized on a per array basis. Yes, they will work just fine, but they do not understand the behaviour of each of the different back-array. Therefore their behaviour is what could be described as generic.
DELL’s MEM module has been developed by DELL’s own engineering team who understand the intricacies of the EqualLogic array and can therefore design their MEM to perform optimally when it comes to load balancing/path selection.
If we take a look at one of the LUNs from the EqualLogic array using the esxcli storage nmp device list command, we can see which PSP and SATP are associated with that device and its paths:
Here we can see both the SATP and the PSP that the device is using, as well as the number of working paths. The SATP VMW_SATP_EQL is a VMware default one for EqualLogic arrays. And of course the PSP is DELL_PSP_EQL_ROUTED. The ‘ROUTED’ part refers ot DELL’s MEM being able to intelligently route I/O requests to the array path best suited to handle the request.
What are those ‘does not support device configuration’ messages? These are nothing to worry about. Some MEMs support configuration settings like preferred path, etc. These messages simply mean there are no configuration settings for this MEM.