Reading this blog title may give you a feeling of déjà vu, and rightfully so. Remember vSphere 5.0? VMware first introduced automatic space reclamation in 5.0, and it was a pretty cool feature that used UNMAP commands to free up space on an array when VMs were deleted or moved. Do you also remember vSphere 5.0 update 1? This is when automatic space reclamation went away. Wait, what?
It turns out, this early version of automatic space reclamation did not play well with all storage arrays, resulting in timeouts and disk errors. So in less than a year, a feature that showed such great promise was gone. Administrators had to go back to running their reclamation tasks from the command line, manually.
Well, good news for those still pining away for an automatic process because in vSphere 6.5, automatic space reclamation is back! Automatic space reclamation works on VMFS6 datastores and requires ESXi 6.5+, vCenter 6.5+, in addition to an array that supports UNMAP. Unfortunately, earlier versions still require manual operations.
Automatic space reclamation works in the background and runs at a priority set during configuration. The higher the priority (There are three; low, medium, and high), the more often the UNMAP commands are sent. Because this is a resource hog on the array and running at a medium or high priority could negatively impact your VM performance, VMware only allows the feature to be turned off or set at a low priority in the Web Client. If you want the medium or high priority, you will need to configure this using esxcli. In addition, the new process is asynchronous UNMAP which means it doesn’t run immediately, but rather it’s a background process that will run on each host and may take up to a day to show results. If you’re looking for immediate results, you can still leverage the esxcli storage vmfs unmap command.
With all that said, VMware customers leveraging VVols are already one step ahead. Since VVols provide direct access between the VMs and storage, VASA compatible arrays will already be aware and will reclaim storage space as VMs are deleted without direction from vSphere. But that’s a topic for another day.