With the release of LeftHand OS 12.0, HP have introduced a Multi-Path Extension Module to replace the previously recommended path selection policy being ‘Round Robin’ and Storage Array Type Plugin VMW_SATP_DEFAULT_AA
By default Round Robin would send 1,000 I/O down each path.
Note: That this can be altered as per my previous article entitled ‘How To Change Default IOP Limit‘ but should normally only be done under the guidance of the manufacturer.
The issue with this is how a volume is created within a StoreVirtual node. Let’s imagine we have two cluster nodes, A and B. When the first volume is created it is ‘owned by a master node’ in this case ‘node A’. When the second volume is created it is owned by ‘node B and so on, as shown below.
- Volume 1 – Node A
- Volume 2 – Node B
- Volume 3 – Node A
- Volume 4 – Node B
Using the recommended bonding method of ‘Adaptive Load Balancing’ SCSI read and write commands are issued on all NIC’s in the bond which can result in data being accessed from a non-authoritative node, which means a trip across the network to the authoritative node. I think a picture is in order!
This was rather inefficient and meant that random reads (which are served from disk) could be accessed from a non-authoritative node. This is where the StoreVirtual Multi-Path Extension Module (MEM) steps in. It has knowledge on where the data resides and ensures that all:
- Read I/O’s are always serviced by the storage node that holds the authoritative data.
- Write I/O’s are always serviced by the storage node that receives a mirror copy of the data ensuring data integrity. Remaining copies are then forwarded to the remaining storage nodes.
This results in the following data flow architecture.
The installation guide for HP StoreVirtual Multipathing Deployment Guide is fairly straight forward. The only issue I ran into was ‘could not find trusted signer’ when trying to install the vib.
This was resolved by adding –no-sig-check to the end of the command esxcli software vib install -v /HPMEM.vib –no-sig-check
Once installed, you will need to change the path selection policy for your datastores to HP_PSP_LH