vVols User Guide: vVol Binding
vVol Binding
A primary goal of the vVol architecture is scale—increasing the number of virtual disks that can be exported to ESXi hosts concurrently. With previous approaches, each volume would require a separate LUN. In large environments, it is quite possible to exceed the ESXi limit of 512 LUNs. vVols introduces the concept of protocol endpoints (PEs) to significantly extend this limit.
ESXi hosts bind and unbind (connect and disconnect) vVols dynamically as needed. Hosts can provision VMs and power them on and off even when no vCenter is available if they still have valid sessions to the FlashArray's VASA Provider.
When an ESXi host needs access to a vVol:
- ESXi issues a bind request to the VASA provider whose array hosts the vVol
- The VASA provider binds the vVol to a PE visible to the requesting host and returns the binding information (the sub-lun) to the host
- The FlashArray issues a Unit Attention (UA) to the host notifying them that a new volume has been connected to the host ( SCSI rescans are unnecessary with vVols)
- The host issues a SCSI REPORT LUNS command to the PE to make the newly-bound vVol accessible.
vVols are bound to specific ESXi host(s) for as long as they are needed. Binds (sub-lun connections) are specific to each ESXi host-PE-vVol relationship. A vVol bound to a PE that is visible to multiple hosts can only be accessed by hosts that request binds. The following Table lists the most common scenarios in which ESXi hosts bind and unbind and vVols.
What causes the bind? |
Bound Host |
|
When is it unbound? |
vVol type |
---|---|---|---|---|
Power-on |
Host running the VM |
Power-off or vMotion |
Config, data, swap |
|
Folder navigated to in vVol Datastore via GUI |
Host selected by vCenter with access to vVol datastore |
When navigated away from or session ended |
Config |
|
Folder navigated to in vVol Datastore via SSH or console |
Host logged into |
When navigated away from or session ended |
Config |
|
vSphere vMotion |
Target host |
Power-off or vMotion |
Config, data, swap |
|
VM Creation |
Target host |
Creation completion |
Config, data |
|
VM Deletion |
Target host |
Upon deletion completion |
Config |
|
VM Reconfiguration |
Target host |
Reconfiguration completion |
Config |
|
VM or Template Clone |
Target host |
Clone completion |
Config, data |
|
VM Managed Snapshot |
Target host |
Snapshot completion |
Config |
Notes:
Binding and unbinding is automatic There is never a need for a VMware or FlashArray administrator to manually bind a vVol to an ESXi host.
FlashArrays only bind vVols to ESXi hosts that make requests; they do not bind them to host groups.
If multiple PEs are presented to an ESXi host, the host selects a PE that the VASA provider listed as available to satisfy each bind request. Array administrators cannot control which PE is used for a bind.
This blog post contains a detailed description of ESXi host to PE to vVol binding.
The end user should never need to manually connect a vVol to a FlashArray Host or Hostgroup. Without the bind request coming from vSphere issued to VASA, the VASA provider and vSphere environment will not recognize the volume is connected.
A vVol with no sub-lun connection is not “orphaned”. No sub-lun connection simply indicates that no ESXi host has access to the vVol at that time.