The hardest challenge in server virtualization is storage. VMware and the storage vendors have addressed this challenge with an array of features and integration points that add considerable value to end-users. In this article we summarize what is presently available beginning with data protection, which users cite as their number one priority.
VADP – vStorage APIs for Data Protection
VADP are a set of APIs focused on local backup/recovery use cases. They replace VCB, VMware Consolidated Backup, and provide significant performance improvements. With VADP during backups, virtual machine data is not copied to a proxy server prior to moving to the storage media. Rather, vSphere creates a snapshot of the VM’s data directly in the storage array itself. This snapshot is then moved to the backup media directly without requiring any dedicated disk cache on a proxy server. This capability significantly improves backup speed, alleviates large amounts of resources on the proxy server, and allows many more virtual machines to be backed up simultaneously.
Also, incremental backups are enhanced with Change Block Tracking (CBT), which quickly identifies only the data blocks on the virtual machine that have changed since the last backup. This replaces the need to scan the entire virtual machine with complex checksum calculations to determine what data has changed, which results in faster backup time.
Moreover, VMs can be restored directly to the appropriate ESX Server and data store without staging on the proxy server, resulting in much faster restores.
VAAI – vStorage APIs for Array Integration
These APIs essentially take advantage of storage array features to offload, speed up or improve common vSphere operations. These APIs were developed in conjunction with ANSI/INCIT T10 (SCSI) standards body.
Hardware Assisted Locking
During VMFS file system metadata updates, only storage blocks related to a particular VM are locked as opposed to locking an entire LUN. This is very important for increasing VM-to-data-store density and performance. One example is VDI boot storms. If only the blocks relevant to the VM being powered on are locked ,then more VMs can start per data store. The same applies in a dynamic VDI environment to reduce the impact of busy cloning periods where images are being cloned and then spun up.
Similar to xcopy, Full Copy allows the storage array to make a full copy of a data store without hauling the data from disk, through the ESX host, and back to disk. This dramatically reduces I/O traffic and CPU loads. VM cloning takes a fraction of the time and storage; vMotion can be done in the storage array without much ESX host involvement.
This array function offloads the writing of repeated content such as the zeroing of data stores and results in significant reductions in I/O and CPU loads.
Thin Provisioning Stun
Though not officially a part of the vSphere/ESX version 4 release, it appears that the code for Thin Provisioning Stun shipped in version 4.1 as two vendors presently support it and more are likely with version 5.
In previous versions of ESX, when a VM ran out of thinly provisioned disk space, write I/O requests from the VMs would stack up and result in Blue Screens of Death or Kernel Panics. With Thin Provisioning Stun the array notifies ESX of an out-of-space condition and the ESX host will “stun” or pause the affected VMs. Then an administrator can add additional capacity and resume the affected VMs. This sequence is essentially the same as running out of space on a real disk, but now it works for thinly provisioned space as well.
vStorage APIs for Multi-Pathing – aka PSA
vSphere’s PSA or Pluggable Storage Architecture is an open modular framework that enables third-party storage multi-pathing solutions for workload balancing and high availability. vSphere by the default offers its own native multi-pathing, but if array-specific functionality is required, a third-party plug-in using this API can be configured. This allows storage partners to create multi-pathing extensions to deliver storage path failover and storage I/O throughput optimized for partners' storage arrays. Storage partners certify their modules for support with VMware vSphere through the VMware Ready certification program. Most customers find native multi-pathing sufficient, and only a few vendors have implemented third-party plug-ins.
SIOC – Storage I/O Control
SIOC is VMware’s approach to providing QOS for storage. There are no APIs, but one vendor, 3PAR, figured out how to read what SIOC was attempting to do and tries to help it along from the storage array perspective. This makes sense, and more vendors may follow suit.
VASRM – vStorage APIs for Site Recovery Manager
Not new with vSphere, this set of APIs is focused on storage array vendors’ remote replication features such that they can be orchestrated by vSphere’s Site Recovery Manager (SRM). Vendors provide Storage Replication Adaptor (SRA) software that SRM then uses in a standardized and automated fashion to failover to a recovery site.
SRM in vSphere V4 does not provide automated failback, but several vendors essentially automated the process through scripts and lots of testing. Automated failback with SRM is expected in the next release of vSphere.
Many vendors have taken advantage of the vCenter plug-in capability to provide storage-related functions from the vCenter console thereby offering a single point/single pane of glass for administering both storage and VMware servers. These include:
- Discovery and mapping of storage arrays,
- End-to-end discovery of VMs, ESX servers and their storage with mapping both ways,
- Storage Provisioning and management for VMFS, RDM and NFS,
- Monitoring storage,
- Fast clones of VMs with or without VMware View integration,
- Backup reporting,
- Automated virtual infrastructure reporting,
- Mass replication of VMs at a data store level,
- Integration with security software.
Clearly being aware of VMs and their data stores is handy in a VMware vSphere environment, and the storage vendors have responded by ensuring they can do things like:
- Provide VMware consistent snapshots,
- Granularly restore an individual VM or its data store,
- Perform per-VM data compression,
- Offer linked clones.
vMotion Over Distance with Active/Active Data Stores
To address user requirements of a very short Recovery Time Objective (RTO), several vendors have provided specialized hardware and software that essentially keeps two copies of the data stores in two different locations as up-to-date as possible. Failover is near instantaneous.
Action Item: Not every vendor has addressed all these integration points. Some are waiting for the next release of vSphere. Some pressed ahead of VMware with users getting earlier benefits. The vSphere landscape is in flux and both users and vendors will have to keep up or even stay ahead.
Footnotes: See Wikibon's research on VMware Storage Integration Functionality