By Greg Schulz, Server and StorageIO @storageio
There are many enhancements and new features that are part of VMware vSphere V5.0 from a storage and I/O perspective (See VMware vSphere v5 and Storage DRS posts). One of those enhancements is a new Application Programming Interface (API) called VASA (vSphere Aware Storage API) which joins other VMware vSphere APIs some of which are shown in table 1. Note that there is a three letter acronym (TLA) shown in Table 1 that is part of the VMware vSphere 5.0 release that can be confused with VASA called VSA (VMware Storage Appliance) however for now, let’s leave VSA for a future discussion.
What it stands for
VMware vSphere API for Array Integration
APIs which if supported by a block or NAS array (e.g. storage system) can offload different functions from the vSphere hypervisor and virtual machine (VM).
VMware vSphere API for Data Protection
APIs that assist with data protection including change block tracking (CBT) that replace the functionally of VMware Consolidated Backup (VCB) among other capabilities.
VMware vSphere Aware Storage API
API to provide insight and awareness to VMware and vSphere about the capabilities of a storage system, how it is configured and performing.
VMware vSphere API for Multi-Pathing
API to support multi-pathing of storage and I/O networking paths between servers (VMs and PMs) and storage systems
VMware Storage Appliance
Functionality to enable a virtual storage server using internal dedicated server storage device
Having situational awareness is important to avoid flying blind and for making informed decisions. Situational awareness requires having timely information and metrics pertaining to what is being managed either by hand or via automated tools. In a cloud, virtual and data storage networking environment having situational awareness includes knowing how resources are deployed as well as being used to support applications to a given level of service. This means having timely insight into server, storage, I/O and networking resource or space utilization as well as performance, response time, and activity in addition to availability or reliability metrics.
An important enabler for enabling automation of routine tasks in virtualized environment is having defined rules along with having management metrics or data that a policy manager can use for making informed decisions and taking action. What this all has to do with VASA (vSphere Aware Storage API) in your cloud, virtualization and data storage networking house (e.g. Casa or environment) is to gain end to end (E2E) insight and awareness across heterogeneous technologies and vendors solutions or services.
If VASA is important, what is it?
VASA or VMware vStorage APIs for Storage Awareness are a new set of APIs that compliment and coexist with the existing vSphere API for Array Integration (VAAI) offload capabilities. Where VAAI has a focus of providing APIs to enable offloading of storage related functions from VMs to storage systems that support those capabilities, VASA has a focus around providing insight and information. For example VASA enables storage systems that support the API to provide vCenter with visibility into storage configuration, health status and functional capabilities.
Functional capabilities include things such as support for thin provision or other data footprint reduction (DFR) features to optimize storage space capacity as well as performance optimization characterizes. What this means is that a storage system can inform vCenter of how it is configured along with its RAID levels, thin or thick provisioning, replication and other functionalities that can be used for effective management. For vCenter, being able to gain additional insight into how a storage system is configured and its capabilities is used for enabling automated, policy based and profile driven storage management. In vSphere 5.0, Storage Distributed Resource Scheduler (SDRS) makes recommendations on performance and capacity load balancing leveraging insight obtained from VASA.
VASA can be used by system administrators to aid in planning, configuration and troubleshooting tasks involving VMs and storage. For system administrators, VASA capabilities means eliminating or reducing decencies on excel worksheets or other configuration documents to track how LUNs (for block) and file systems (for NAS) are configured to meet performance, availability and capacity service level objectives (SLOs). Where VASA comes into play is to help admins rapidly and effectively provision VMs and their associated storage in a more productive manner. By having VASA enabled insight into the performance, availability and capacity characteristics of a given storage volume (LUN or file system), administrators can allocate the applicable type of storage to meet SLO requires to a given VM.
How VASA works and who is supporting it
vCenter server uses the VASA provider to access topology, status and other capabilities information from supported storage system enabling E2E insight, situational awareness and management. VASA is enabled by having a third party storage vendors provider plug-in for vCenter (vCenter Server V5 and ESX hosts V4 or higher) that works with a storage systems that supports the API. The storage vendor provider presents three pieces of information to vCenter including storage topology of the physical arrays or storage system, storage capabilities supported that can be used in establishing storage profiles, and storage state or health status including configuration changes or other events and alarms.
To see which storage vendors have VASA providers refer to the VMware compatibility chart tool found here http://www.vmware.com/resources/compatibility/search.php?deviceCategory=vasa and view vendors’ specific release notes for specific functionality and configuration details. Note that it is up to the individual third party storage vendors as to what capabilities they present via their VASA provider to vCenter. As with any first release of an API or feature, look for future enhancements in addition to other tools being enabled to leverage those capabilities.
Some general questions and thoughts around VASA
How will independent software vendors (ISVs) or third party tools vendors utilize VASA?
In short I see ISVs leveraging VASA in similar ways that they have used SNMP MIBs, agents, collectors, SMIS and other providers for gathering data in both virtualized, cloud and physical environments in the past. As more VASA providers are added along with their functionality enhanced meaning conveying more detailed information for insight into performance, availability, capacity and effectiveness, the APIs value will increase. If however a broad market base of VASA providers along with associated depth of functionality or information presented is lacking, then there will not be wide spread VASA adoption. For VASA to extend its reach beyond VMware supplied tools, it needs more storage systems providers to attract interest of ISVs. Keep in mind that the golden rule with virtualization is that whoever controls the management including collection of information controls the gold!
What does the future hold for VASA?
Looking at previous VMware and vSphere related APIs, being that it is a first generation release, there is a bright future for both VASA as well as tools that can leverage the information it provides. One question that comes to mind however is how quickly will storage systems vendors deploy VASA providers along with what information will they present. Another question is how quickly will independent or third party software and management tools vendors leverage the VASA API and providers information to enable new capabilities and plug-in.
Does VASA compete with or replace SNIA SMIS?
Yes and no. Yes in the context that instead of relying on the Storage Networking Industry Associations (SNIA) Storage Management Initiative Specification (SMIS) for obtaining information about underlying storage systems, VMware vSphere and vCenter can get that data via VASA. On the other hand, VASA is currently only focused around VMware vSphere so environments that have physical servers and storage along with other hypervisors including Microsoft Hyper-V or Citrix can utilize SMIS. Where things could get interesting is if enough software management and tool vendors as well as storage systems vendors adopt and fully embrace VASA, will vendors such as Microsoft who has thrown its endorsement around SMIS also support VASA. On the cloud front, SNIA also has a set of APIs referred to Cloud Data Management Initiative (CDMI) that could compliment or compete with VASA depending on how deployed and positioned.
Will all storage vendors support VASA?
Most if not all major storage systems vendors will support VASA over time, particular those products that being marketed into VMware environments. However to what extent and with how much information provided will vary. There will be some smaller vendors who may forego VASA support initially similar to their approaches with VAAI.
Could VASA be used for E2E insight beyond VMware and virtualized environments?
In theory that concept and capabilities should be possible, even from a technology standpoint it could be doable; however in my opinion the barrier will not be technology related. Instead I see the challenge being industry adoption by third party software and management tool providers who have solutions that span both virtual and physical deployments. Likewise there is an opportunity for those independent software developers to leverage VASA enabled devices in addition to, or as an alternative to other industry mechanisms for gathering storage and systems information. Thus the barrier comes down to where and what does VMware want or need to focus on for now while building consensus and avoiding unnecessary standards skirmishes. With Microsoft having announced that they are leveraging SNIA SMIS as a mechanisms for gathering storage management information and the most popular guest on VM being Microsoft Windows products, plus VMware parent EMC having a large presence in SNIA which is involved with both SMIS and CDMI, let’s see how this all plays out in the evolving E2E cross technology domain management space and enablement.
What’s different between VAAI and VASA?
VASA provides the insight and VAAI enables the off load processing of storage related activities. VASA is focused on providing information and insight into how a storage system is configured, its capabilities, health and status. VAAI is focused on providing off load functionally from VMs to storage systems that support those capabilities.
For most if not all VMware vSphere environments, the question will not be if VASA will be in your casa, rather, when it will be enabled using what or whose vendor profiles to support different policy automation. In addition, another question around VASA will be how can you utilize it in new or different ways ranging from routine service catalog and provisioning tasks, to analysis and planning for service optimization, forecasting, service level monitoring and health status reporting.
What’s your take on VASA, how and when will you be leveraging it, or what opportunities and challenges do you see with having VASA in your VMware storage casa?