- Data Center Virtualization Certification:VCP6.5-DCV Exam Guide
- Andrea Mauro Paolo Valsecchi
- 516字
- 2025-03-01 05:40:56
Comparing and contrasting array thin provisioning and virtual disk thin provisioning
VMware vSphere supports two models of storage provisioning:
- Thick provisioning: The entire storage is reallocated, as well as if it is not used
- Thin provisioning: Only the used storage is allocated
Thin provisioning helps to minimize storage under utilization problems by allocating storage space in a flexible on-demand manner. But, in this case, it's very important to have an effective disk reclaim feature to free deleted blocks at the underlying level (more details will be provided in Objective 3.4).
VMware vSphere supports two models of thin provisioning: at array level (datastore) and at virtual disk level (VMDK).
For the thin-provisioned virtual disk, you have VMDKs that grow dynamically depending on the used space. VMware will report the provisioned space (that is, the "configured" space) and the used space (that is, the size of the thin VMDK).
It's possible to over allocate the datastore space and potentially block the growth of other thin-provisioned VMDKs if the datastore fills.
You can easily check the type of a VMDK in the VM properties or summaries:

Note that VM snapshot files are also "thin-provisioned" (the real format could be different, depending on the datastore type and the size of the VMDK), so VMs with an active snapshot will be affected by a full datastore.
For thin-provisioned datastores, when a LUN is thin-provisioned, the storage array reports the LUN's logical size (and not the real used size). Note that you risk over-allocating your storage with not enough free space to permit the proper growth of the thin-provisioned LUNs.
Using VAAI (described in Objective 3.4), ESXi can be aware of underlying thin-provisioned LUNs.
To check if a LUN is thin-provisioned, you need to use the esxcli command:
esxcli storage core device list -d vml.xxxxxxxxxxxxxxxx
And check the thin provisioned status row of the report.
And what's happened to the VMDK provisioning if you are using the thin-provisioned datastore? The following table summarizes the different cases:
Storage provisioning VM virtual disk provisioning Resulting provisioning
Thin provisioning Thin provisioning Thin provisioning
Thin provisioning Thick provision lazy zeroed Thin provisioning
Thin provisioning Thick provision eager zeroed Thick provisioning (unless there's specific storage optimization, such as compression)
Thick provisioning Thin provisioning Thin provisioning at VM level
Thick provisioning Thick provision lazy zeroed Thick provisioning
Thick provisioning Thick provision eager zeroed Thick provisioning
For more information, see the vSphere 6.5 Storage guide (https://docs.vmware.com/en/VMware-vSphere/6.5/com.vmware.vsphere.storage.doc/GUID-AC8E9C20-C05F-4FB5-A5DA-11D0A77A291B.html).