June 05, 2015

vSphere Storage Terminologies - VVOL


"The VVols architecture is part of the VMware VASA 2.0 specification, which defines a new architecture for VM-level storage array abstraction. VASA 2.0 includes new interfaces to query storage policies to enable VMware’s Storage Policy Based Management (SPBM) to make intelligent decisions about virtual disk placement and compliance."

"VMware Virtual Volumes (VVols) provides VM-level granularity by introducing a 1:1 mapping of VM objects to storage volumes and supports policy-based management to simplify storage management in virtualized server environments.

Prior to VVols, storage arrays integrated with vSphere at the datastore level using VMware’s Virtual Machine File System (VMFS). With Vvols, there is no need for a file system and going forward, users can choose to use VMFS or VVols (or both).

  • Virtualizes SAN and NAS devices
  • Virtual disks are natively represented on arrays
  • Enables VM granular storage operations using array-based data services
  • Storage policy-based management enables automated consumption at scale
  • Industry-wide initiative supported by major storage vendors
  • Included with vSphere
  • Five types of VVols (objects): Config, Data, Swap, Snapshot, Memory
  • NO filesystem needed (VMFS is history)
  • Virtual machine objects are stored natively on the array
With Virtual Volumes each VM object gets its own virtual datastore, with its own policies, and the storage administrator is only responsible for creating the storage container and is freed from managing LUNs.

Since a virtual machine is made up of a number of different files (VMDKs, configuration, snapshots, etc.) and each of these data objects is stored as a separate vVol, a VM is made up of multiple vVols.

With VVOLs enabled, creation of a new VM also creates multiple new VVOLs on the Storage Container:
  • On creation – two VVOLs, one for config and one for each virtual disk
  • On power on – one VVOL for swap
  • Additional – VVOLs for snapshot VM and snapshot memory if enabled
With VVOLs, storage processing such as cloning and snapshots are offloaded to the storage arrays, facilitating faster, more efficient storage processing at the vSphere layer.

VVOL functions:
  • Enables VMware to offload per VMDK-level operations to storage systems
  • Enables storage systems to provide data services to individual applications and VM’s
  • Enables application profile-based provisioning, monitoring and management of VM Volumes via vSphere and VASA
  • Enables protocol-agnostic management of VM objects, regardless of the protocol front-end (FC, iSCSI, NFS) used
Virtual volumes allow the storage and management of a larger number (hundreds, thousands) of VM objects to reside on an array and it enables detailed visibility into the storage environment.

"VVOLs let block storage vendors provide per-VM data services like snapshots and replication by essentially storing each VM, or VMDK, in its own logical volume.”

Without VVOLs, managing separate LUNs per VM or VM data object would take up lots of resources and effort and would quickly run up agains the vSphere (and FC/SCSI protocol) LUN limit of 256.

Without VVOL, think of the VMDK as existing at the ESXi hypervisor layer.

With VVOL, the VMDK is in effect pushed down into the storage system. As a result, ESXi is able to offload more of the processing to the storage system as storage now has more insight into the context of what the blocks of data holding the virtual machine objects mean. Cloning, snapshots, replication, etc. are handled more efficiently and operations are more granular, being VM based as opposed to LUN based.

Customer and Provider
The diagram below shows an interaction between the Customer and Provider. Array says this is what I can offer in step #1 (e.g. RAID types, capacity, format, etc.). The customer says here is what I need in step #2 (e.g. IOPS, format, etc.). Array responds with what the storage resource requested by customer or “no, I cannot meet your needs.
A vVol is a “data object” identified by a GUID. vVol is more than just a datastore, more like a storage pool with a set of capabilities. It is a Datastore + Services + Metadata.

Vendor provider acts as a server in the vSphere environment to which vCenter will connect to get information about the available array topology and capabilities and reports information about one or more storage arrays and can support connections with one or more vCenter Servers.


No comments:

Post a Comment