vVols are VMDK granular storage entities exported by storage arrays. vVols are exported to the ESXi host through a small set of protocol end-points (PE). Protocol Endpoints are part of the physical storage fabric, and they establish a data path from virtual machines to their respective vVols on demand. Storage systems enable data services on vVols. The results of these data services are newer vVols. Data services, configuration and management of virtual volume systems is exclusively done out-of-band with respect to the data path. vVols can be grouped into logical entities called storage containers (SC) for management purposes. The existence of storage containers is limited to the out-of-band management channel.
vVols and Storage Containers (SC) form the virtual storage fabric. Protocol Endpoints (PE) are part of the physical storage fabric.
By using a special set of APIs called vSphere APIs for Storage Awareness (VASA), the storage system becomes aware of the vVols and their associations with the relevant virtual machines. Through VASA, vSphere and the underlying storage system establishes a two-way out-of-band communication to perform data services and offload certain virtual machine operations to the storage system. For example, operations such as snapshots and clones can be offloaded.
For in-band communication with vVols storage systems, vSphere continues to use standard SCSI and NFS protocols. This results in support with vVols for any type of storage that includes iSCSI, Fibre Channel, Fibre Channel over Ethernet (FCoE), and NFS.
- vVols represent virtual disks of a virtual machine as abstract objects identified by 128-bit GUID, managed entirely by Storage hardware.
- Model changes from managing space inside datastores to managing abstract storage objects handled by storage arrays.
- Storage hardware gains complete control over virtual disk content, layout and management.
Many storage partners have added vVols support in their arrays. For end-to-end vVols support, HBA drivers need to support vVols-based devices. This necessitates availability of an API to get the second-level LUN ID (SLLID) and use by the SCSI drivers.
When checking the I/O Devices section of the
VMware Compatibility Guide, you will see a new entry called Secondary LUNID. (Enables vVols). The ESXCLI infrastructure has the provision to display SSLID capability output of the HBA with this command
esxcli storage core adapter list