This article provides instructions to reclaim unused storage blocks on a VMFS datastore. When files are deleted within a Guest OS, the underlying storage array may not immediately reflect the free space due to the disk provisioning type or VMFS version settings.
Space reclamation (UNMAP) requires the virtual disk (VMDK) to be Thin Provisioned. Thick Provisioned disks (Lazy or Eager Zeroed) are pre-allocated at the VMFS layer. While space is freed inside the Guest OS, the static size of a Thick VMDK prevents the "punching" of holes that triggers UNMAP commands to the storage array.
1. Verify VAAI UNMAP Support Confirm the LUN supports the Delete Status primitive:
Ensure the output shows Delete Status: supported.
2. Convert Thick VMDKs to Thin Provisioning To enable array-level reclamation for Thick Provisioned disks:
vmkfstools command to reclaim zeroed blocks:3. Trigger Manual UNMAP (if using VMFS5 or Manual VMFS6) Identify the volume label and run:
Note: Consult the storage vendor for the optimal --reclaim-unit value.
4. Automatic Reclamation (VMFS6) VMFS6 performs automatic asynchronous UNMAP. If space is not reclaiming:
fstrim for Linux or Optimize-Volume for Windows).