The most exciting enhancements in VMware vSphere 4.1 is the addition of vStorage API for Array Integration (VAAI). This new API allows VMware ESX to offload storage processing functions to capable storage arrays, reducing the workload on the server hardware in introducing new and exciting possibilities for performance and efficiency. VAAI in ESX 4.1 includes three separate capabilities: block zeroing, full copy, and hardware assisted locking.
Note: This information was based on the “VMware Storage/SAN Compatibility Guide” and is being regularly updated. Please add comments here and I will add products and change and update listings as soon as they appear in the guide!
Where, Why, and What is VAAI?
I’ve previously discussed the fact that VMware’s excellent ESX hardware compatibility list (HCL) is so comprehensive than obscures basic facts about supported products. This is especially true for VAAI, since compatibility is only noted as a footnote in individual storage array listings. It does not help matters that not all VAAI plugins support all three capabilities.
Like my previous posts regarding FCoE CNA’s, SATA and PATA chipsets, and home/lab network cards, I’ll attempt to boil down the VMware ESX HCL into plain English. This data will also be part of my Storage for Virtual Servers seminar presentation, the first of which will be given on March 10 in Philadelphia.
I’m not going to spend too much time on “what is VAAI” in this post. Instead, I suggest you read the following blog posts and VMware’s excellent guide, “What’s New in VMware vSphereTM 4.1 – Storage“?
- What is VAAI, and how does it add spice to my life as a VMware admin?
- vStorage APIs for Array Integration aka VAAI
- If You Ever Needed Convincing About VAAI…
- VMware VAAI pros and cons and the hidden fourth primitive
The Three VAAI Primitives
You ought to read the updated Complete List of VMware VAAI Primitives since it’s much more thorough and informative!
In ESX 4.1, that vStorage API for Array Integration includes three basic capabilities or primitives:
- Blocks zeroing is a communication method for thin provisioning capable storage arrays, allowing them to quickly zero out storage capacity for later reclamation.
- Full copy commands the storage array to make a mirror or snapshot of data without any I/O on the server hardware.
- Hardware assisted locking enables more granular control of shared storage resources in ESX clusters
In order to support VAAI, a storage array requires two things:
- Hardware capable of supporting one or more of the three primitives listed above
- A software plug in for ESX enabling communication and integration
VAAI Plug In Support
Creating a VAAI plug in is not a trivial task, and not all storage arrays are yet supported. I have heard grumbling from storage vendors that EMC (the storage vendor that owns VMware) has been given early access to VAAI information, allowing them to support this feature set before their competitors. However, this has not stopped a diverse set of other unrelated storage vendors from quickly producing and releasing effective and complete VAAI plugins.
As of this writing, there are 11 array-specific plugins and one general-purpose plug in available for ESX 4.1. EMC, NetApp, 3PAR (HP), HDS, FalconStor, Fujitsu, IBM, Dell (EqualLogic), and HP (LeftHand, P9000, P2000) have produced VAAI plugins supporting all three primitives. Additionally, a cloud in supporting the T10 blocks zeroing methods is available, enabling other arrays to support this one primitive. Note that the T10 primitive should support nearly any capable array, but not all have been tested and qualified for use with it.
VAAI Support Matrix
Products | Plugin | Fibre Channel | iSCSI | Block Zeroing | Full Copy | Hardware Assisted Locking |
---|---|---|---|---|---|---|
EMC Symmetrix VMAX | VMW_VAAI_SYMM vmw_vaaip_symm |
Y | Y | Y | Y | Y |
EMC Clariion CX4, Celerra NS, CNS | vmw_vaaip_cx | Y | Y | Y | Y | Y |
FalconStor NSS | unknown | Y | N | Y | Y | Y |
HP/3PAR E200, F-Class, S400, S800, T-Class | 3PAR_vaaip_InServ | Y | Y | Y | Y | Y |
HP P9500 | hp-vaaip-p9000 | Y | N | Y | Y | Y |
HP MSA P2000 | hp-vaaip-p2000 | Y | Y | Y | Y | Y |
HDS AMS 2040, 2100, 2300, 2500, BR1600, USP V/VM, VSP, NSC 55, USP 100/1100/600 | vmw_vaaip_hds | Y | Y | Y | Y | Y |
IBM XIV, SVC, Storwize V7000, Fujitsu VS850, Actifio | IBM_VAAIP_MODULE | Y | Y | Y | Y | Y |
NetApp FAS2000, FAS3000, FAS6000, N3000, N5000, N6000, N7000 | VMW_VAAIP_NETAPP | Y | Y | Y | Y | Y |
Fujitsu Eternus 4000, 8000, DX410/440, DX8100/8400/8700 | fjt_vaaip_module | Y | Y | Y | Y | Y |
Dell Compellent Storage Center 6.0 | vmw_vaaip_eql | Y | Y | Y | Y | Y |
Dell/EqualLogic PS4000, PS5000, PS5500, PS6000 | vmw_vaaip_eql | N | Y | Y | Y | Y |
HP/LeftHand P4000, P4300, P4500, P4800, VSA | vmw_vaaip_lhn | N | Y | Y | Y | Y |
Actifio, Bull Optima2000, Dell Compellent, iStorage D3/D4, IBM Storwize V7000, IBM SVC , Fujitsu Eternus VS850 | vmw_vaaip_t10 | Y | Y | Y | N | N |
Note that similar OEM versions (for example, Fujitsu’s FibreCAT CLARiiONs, and the Gateway/Lenovo/Acer AMS line) are also supported the same as the manufacturer’s offerings. I’ve simplified and eliminated similar models (the Dell EqualLogic PS6000E, PS6000S, PS6000X, PS6000XV, and PS6000XVS are all listed simply as PS6000).
Updates:
- IBM recently added full VAAI for the XIV, SVC, and similar Storwize V7000. I’m sure they’re also working on complete VAAI plugins for the big DS8000 systems!
- EMC certified the new VNX line for VAAI (FC only for now) and the V-Max just gained iSCSI VAAI support.
- FalconStor added VAAI for NSS, enabling any storage array to be used.
- HP created VAAI plugins for the P9500 and MSA P2000 lines as well.
Stephen’s Stance
VAAI is an exciting new capability for VMware ESX, and demonstrates the enterprise readiness of vSphere 4.1. Although not all storage arrays are yet supported, the diverse assortment listed above should cover the majority of enterprise storage environments. I fully expect that the obvious holes will be filled in soon, and I look forward to updating this list when I hear news of those product releases. I also look forward to learning of additional capabilities added as VAAI primitives in the future!
The Exhaustive List
I am attempting to keep this list up to date. My authoritative source of information is the VMware Storage Compatibility Guide. This is the only source of information I will use, since only official and supported implementations belong in production. But I welcome pointers, suggestions, and referrals for updates!
This list is complete as of February 21, 2011
Full VAAI (All 3 primitives)
- Dell
- EqualLogic
- iSCSI (vmw_vaaip_eql)
- Dell EqualLogic PS4000E (Dell EqualLogic PS4000X; Dell EqualLogic PS4000XV)
- Dell EqualLogic PS5000E (Dell EqualLogic PS5000X; Dell EqualLogic PS5000XV)
- Dell EqualLogic PS5500E
- Dell EqualLogic PS6000E (Dell EqualLogic PS6000S; Dell EqualLogic PS6000V; Dell EqualLogic PS6000XV; Dell EqualLogic PS6000XVS)
- Dell EqualLogic PS6010E (Dell EqualLogic PS6010S; Dell EqualLogic PS6010X; Dell EqualLogic PS6010XV; Dell EqualLogic PS6010XVS)
- Dell EqualLogic PS6500E (Dell EqualLogic PS6500X)
- Dell EqualLogic PS6510E (Dell EqualLogic PS6510X)
- EqualLogic PS100E
- EqualLogic PS200E
- EqualLogic PS300E
- EqualLogic PS3600X
- EqualLogic PS3700X
- EqualLogic PS3800XV
- EqualLogic PS3900XV
- EqualLogic PS400E
- EqualLogic PS50E
- EqualLogic PS70E
- iSCSI (vmw_vaaip_eql)
- EqualLogic
- EMC
- FC (vmw_vaaip_cx)
- EMC CLARiiON CX4-120 (EMC CLARiiON CX4-120 C8/C8X; Dell/EMC CLARiiON CX4-120; Fujitsu FibreCAT CX4-120)
- EMC CLARiiON CX4-240 C8/C8X
- EMC CLARiiON CX4-480 (EMC CLARiiON CX4-480 C8/C8X; Dell/EMC CLARiiON CX4-480)
- EMC CLARiiON CX4-960 (EMC CLARiiON CX4-960 C8/C8X; Dell/EMC CLARiiON CX4-960)
- EMC Celerra NS-120
- EMC Celerra NS-480
- EMC Celerra NS-960
- EMC VNX5100
- EMC VNX5300
- EMC VNX5500
- EMC VNX5700
- EMC VNX7500
- FC/iSCSI/FCoE (VMW_VAAI_SYMM)
- EMC Symmetrix VMAX
- iSCSI (vmw_vaaip_cx)
- EMC Celerra CNS
- EMC Celerra NS-120
- EMC Celerra NS-480
- EMC Celerra NS-960
- EMC CLARiiON CX4-120 C8
- EMC CLARiiON CX4-240 C8
- EMC CLARiiON CX4-480 (EMC CLARiiON CX4-480 C8)
- EMC CLARiiON CX4-960 (EMC CLARiiON CX4-960 C8)
- FC (vmw_vaaip_cx)
- FalconStor
- FC (unknown)
- CDP Gateway
- CDP SA
- CDP VS
- CDPx Gateway
- IPStor Enterprise
- NSS Gateway
- NSS SA
- NSS VS
- Fujitsu
- FC (fjt_vaaip_module)
- Fujitsu Eternus DX410
- Fujitsu Eternus DX440
- Fujitsu Eternus DX8100
- Fujitsu Eternus DX8400
- Fujitsu Eternus DX8700
- iSCSI (fjt_vaaip_module)
- Fujitsu Eternus DX410
- Fujitsu Eternus DX440
- Fujitsu Eternus DX8100
- Fujitsu Eternus DX8400
- Fujitsu Eternus DX8700
- FC (fjt_vaaip_module)
- Hitachi
- FC (vmw_vaaip_hds)
- Hitachi AMS 2100 (Acer AMS2100; Gateway AMS2100; HDS AMS 2100; Lenovo-HDS AMS2100)
- Hitachi AMS 2300 (Acer AMS2300; Gateway AMS2300; HDS AMS 2300; Lenovo-HDS AMS2300)
- Hitachi AMS 2500 (HDS AMS 2500)
- Acer AS2040; Gateway GS2040
- Hitachi AMS 2010
- Hitachi BR1600/BR1600E/BR1600S
- Hitachi Virtual Storage Platform (Hitachi VP9500; HP StorageWorks P9500)
- Nihon-Unisys Sanarena 1910
- Nihon-Unisys Sanarena 1930
- Nihon-Unisys Sanarena 1970
- Nihon-Unisys Sanarena 1990
- iSCSI (vmw_vaaip_hds)
- Hitachi AMS 2010
- Hitachi AMS 2100 (HDS AMS 2100; Lenovo-HDS AMS2100)
- Hitachi AMS 2300 (HDS AMS 2300; Lenovo-HDS AMS2300)
- Hitachi AMS 2500 (HDS AMS 2500)
- Hitachi BR1600E
- Nihon-Unisys Sanarena 1930
- Nihon-Unisys Sanarena 1970
- Nihon-Unisys Sanarena 1990
- Hitachi Virtual Storage Platform
- FC (vmw_vaaip_hds)
- HP
- 3PAR
- FC (3PAR_vaaip_InServ)
- InServ E200
- InServ F-Class
- InServ S400
- InServ S800
- T-Class
- iSCSI (3PAR_vaaip_InServ)
- InServ E200
- InServ F-Class
- InServ S400
- InServ S800
- T-Class
- FC (3PAR_vaaip_InServ)
- P9500
- FC (hp-vaaip-p9000)
- HP P9500
- P2000
- FC/iSCSI (hp-vaaip-p2000)
- HP MSA P2000
- LeftHand
- iSCSI (vmw_vaaip_lhn)
- HP LeftHand P4500
- HP LeftHand P4000 VSA
- HP LeftHand P4000sb
- HP LeftHand P4300 (HP LeftHand P4300 G2)
- HP LeftHand P4500 (HP LeftHand P4500 G2)
- HP LeftHand P4800
- HP ProLiant DL380
- Dell 2950
- IBM x3650
- LeftHand NSM 160
- LeftHand NSM 185
- LeftHand NSM 2060 (LeftHand NSM 2060 G2)
- LeftHand NSM 2120 (LeftHand NSM 2120 G2)
- LeftHand NSM 260
- LeftHand NSM 320
- LeftHand NSM 326
- LeftHand NSM 3650
- LeftHand NSM 380
- LeftHand NSM 4150
- LeftHand VSA
- iSCSI (vmw_vaaip_lhn)
- 3PAR
- IBM
- FC/iSCSI (IBM_VAAIP_MODULE)
- IBM XIV
- IBM SVC
- IBM V7000
- Fujitsu VS850
- Actifio
- FC/iSCSI (IBM_VAAIP_MODULE)
- NetApp
- FC (VMW_VAAIP_NETAPP)
- NetApp N3000 Series
- NetApp N5000 Series
- NetApp N6000 Series
- NetApp N7000 Series
- NetApp FAS2000 Series
- NetApp FAS3000 Series
- NetApp FAS3100 Series
- NetApp FAS3200 Series
- NetApp FAS6000 Series
- NetApp FAS6200 Series
- FCoE (VMW_VAAIP_NETAPP)
- NetApp FAS3000 Series
- NetApp FAS3100 Series
- NetApp FAS3200 Series
- NetApp FAS6000 Series
- NetApp FAS6200 Series
- iSCSI (VMW_VAAIP_NETAPP)
- NetApp N3000 Series
- NetApp N5000 Series
- NetApp N6000 Series
- NetApp N7000 Series
- NetApp FAS2000 Series (Fujitsu Eternus NR1000F Series Model F2040)
- NetApp FAS3000 Series
- NetApp FAS3100 Series (Fujitsu Eternus NR1000F Series Model F3160)
- NetApp FAS3200 Series
- NetApp FAS6000 Series
- NetApp FAS6200 Series
- FC (VMW_VAAIP_NETAPP)
T10 Block Zero Only
- Bull
- FC (vmw_vaaip_t10)
- Bull Optima2000
- iSCSI (vmw_vaaip_t10)
- Bull Optima2000c
- Bull Optima2000i
- FC (vmw_vaaip_t10)
- NEC
- FC (vmw_vaaip_t10)
- NEC iStorage D3-30
- NEC iStorage D4-30
- iSCSI (vmw_vaaip_t10)
- NEC iStorage D3-30/D3-30i
- NEC iStorage D4-30/D4-30i
- FC (vmw_vaaip_t10)
- Fujitsu
- iSCSI (vmw_vaaip_t10)
- Fujitsu Eternus VS850
- iSCSI (vmw_vaaip_t10)
- IBM
- iSCSI (vmw_vaaip_t10)
- IBM Storwize V7000
- IBM SVC
- iSCSI (vmw_vaaip_t10)
Carli McKinney says
Interesting read, but not up to date in terms of your support matrix. Might want to double check that. Happy to talk to you once Tech Field Day is over.
sfoskett says
Please let me know what’s missing and I will add it!
I’m missing the VSP and XIV and also NetApp. I based it on the VMware Storage/San Compatibility Guide as of January 21, 2011. Not sure how I overlooked NetApp especially!
Michael Heffernan says
Steve great summary, it would be great to see another column with External Storage Devices “SVD” support across all vendors with supported primitives. Cheers Heff
the storage anarchist says
Did a bit of research, and I can now confirm that VMAX also supports VAAI over iSCSI, so please add us to the All Green Team!
John Dias says
This is a great service, I have referred customers here for updates – please keep it going, thanks!
calvinz says
Hey Stephen – nice job! We have a couple of arrays that will have VAAI soon. In the mean time, here’s a couple of posts I did that talk about VAAI on the P4000 – one includes a demo (using a bundled bit.ly link so you have both of them here): http://bit.ly/eK9L7W
Nice job!
Qurt says
will it or is it already a central website preferable from vmware to download the different plugins ?
calvinz says
Hey Stephen – as I alluded to in my comment a few months back, we now have support for XP/P9500 as well as the P2000 MSA G3. So for HP that means we have VAAI for 3PAR, P4000 LeftHand, XP/P9500 and P2000 G3. This is a great resource for customers and the industry (hope you’re signed up to keep it up-to-date).
sfoskett says
I just noticed that the P9000 and P2000 are (finally) listed in the HCL. I added them above. Good work, HP!
Sebastian says
HP EVA 4400/6400/8400 and P6300/P6500 finally support 7 out of 8 VAAI primitives with XCS 1010.0000.
Regards,
Sebastian
Adam Wolfson says
Hi Sebastian, I’m trying to find any official information on VAAI support for the EVA4400 and can’t seem to find anything. Do you have any official notes you can provide, or a link on how to complete the installation as I have several clients pining to get this support asap. Thanks!
Sasha Odarchuk says
hello! How I can turn on VAAI on my EMC VNX5100 ??