Network Computing is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

VMware vSphere Storage APIs: A Guide

VMware vSphere 5.5 has a rich and complex storage system that offers several features to improve performance and availability. Unfortunately, like most things in information technology, these great features are usually referred to by an alphabet soup of acronyms. This guide will help clarify the functionality these features bring to the overall virtual storage system.

VMware provides these features via a set of storage system application programming interfaces (APIs) that vendors can leverage to extend vSphere's native functionality. While vSphere API for Array Integration (VAAI) provides storage array integration, vSphere API for Storage Awareness (VASA) supplies storage awareness, and vSphere Storage APIs-Data Protection (VSA-DP) enable clientless guest backup and recovery. Let's take a detailed look at all three.

Beginning with vSphere 4.1, VMware exposed VAAI so that storage systems could offload tasks usually handled by the vSphere storage system. Initially, this only applied to block-based storage (Fiber Channel attached and iSCSI). With vSphere 5, these capabilities were expanded, and support for NFS was added. These functionalities are collectively known as primitives. Here are the primitives for block storage and what they enable.

  • Atomic Test and Set (ATS): It locks VMFS volumes at the file level, instead of the entire volume. It allows faster access by multiple hosts, since they no longer require a SCSI reservation for metadata changes.
  • Clone Blocks: This leverages the array to copy or migrate data when the source and destination are both located within the array. It dramatically improves copy times.
  • Write Same: This primitive is also known as "Zero Blocks." When creating an eager zeroed thick provisioned disk, the array writes all the zeros. This saves the vSphere storage system from physically writing all the zeros and conserves storage network bandwidth. The disk also is created much faster. This is especially useful when enabling fault tolerance protection for VMs.
  • Thin Provisioning: This allows vSphere to notify an array when a VM has been deleted or migrated to new storage. It allows the thin provisioned LUN to reclaim the space.
  • Block Delete: This allows reclamation of space using the SCSI UNMAP command.

Here are the NFS storage primitives and what they enable.

  • Full File Clone: Similar to clone blocks, it enables VM clone operations to be offloaded to the array.
  • Native Snapshot Support: This allows snapshot creation to be offloaded to the array.
  • Extended Statistics: This primitive reports array space usage to vCenter.
  • Reserve Space: This allows thick provisioned disks on NFS datastores.

Two things are required to leverage VAAI. First, the hosts must be licensed with vSphere Enterprise or Enterprise Plus. Second, the array must support the functionality. For this support, a plug-in usually needs to be installed. Check with the array manufacturer to see if this is available.

When vSphere 5 was announced, several industry pundits referred to it as the "storage release." Two of its most exciting storage features are Storage Profiles and Storage Distributed Resource Scheduler (DRS). VASA is a way to extend the functionality of both.

VASA provides visibility to characteristics -- such as features, health, and performance -- of supported arrays through a "provider." The provider is a third-party vSphere Installation Bundle (VIB) driver that is installed in the hosts.

Using the exposed array information, you can create Storage Profiles that directly address specific array functionality, including deduplication, replication, and snapshots. Status information also can be leveraged by Storage DRS to hone the accuracy of its recommendations.

To enable VASA, the third-party driver must be installed. Check with the storage vendor for availability and installation instructions. vSphere Enterprise Plus licensing also is required.

The ability to back up guest VMs without a client is one of the great features of vSphere. VSA-DP enables third-party backup vendors to leverage this feature and have complete visibility into the guest file system.

The following is a list of extra functionality that VSA-DP provides for guest VM backup and restore.

  • Change Block Tracking: This allows for faster incremental and differential backups.
  • File Level Backup and Restore: Granular file system access is provided on supported Linux and Windows guests.
  • Microsoft Volume Shadow Copy Service (VSS) Support: This provides improved data consistency and Microsoft application awareness.

All third-party backup software for vSphere makes use of VSA-DP, which is supported on every license level of vSphere.

vSphere Storage APIs provide incredible extended functionality to the virtual storage system. Check with third-party vendors as to their requirements to enable these great features. Firmware upgrades to enable storage API support also are available on several older models. Make sure you're getting the most out of your storage systems by leveraging tools that you may already own.