When running vSphere 6.5, 6.7, or 7.0 (or later) and utilizing a VMFS6 datastore, we now have access to automatic LUN reclaim (this unmaps unused blocks on your LUN), which automatically unmaps unused storage on your LUNs. This is very handy for thin provisioned storage.
Essentially when you unmap blocks, it “tells” the storage (SAN) that unused (deleted or moved data) blocks aren’t being used anymore and to unmap them, which decreases the allocated size on the storage layer and frees up storage space. Your storage LUN must support VAAI and the “Delete” function.
Now taking this a step further, most of you have noticed that storage reclaim in the vSphere client has two settings for priority in the web client; none, or low.
For those of you who feel daring or want to spice life up a bit, you can manually increase the priority of the automated space reclamation through the esxcli command. While I can’t recommend this (obviously VMware chose to hide these options due to performance considerations), you can follow these instructions to change the priority higher.
Manually Configure Storage Reclaim (UNMAP) Priority
To view the current settings:
esxcli storage vmfs reclaim config get --volume-label=DATASTORENAME
To set ESXi reclaim/unmap priority to medium:
esxcli storage vmfs reclaim config set --volume-label=DATASTORENAME --reclaim-priority=medium
To set ESXi reclaim/unmap priority to high:
esxcli storage vmfs reclaim config set --volume-label=DATASTORENAME --reclaim-priority=high
You can confirm these settings took effect by running the first “get” command to view the settings, or view the datastore in the storage section of the vSphere client. While the vSphere client will reflect the higher priority setting, if you change it lower and then want to change it back higher, you’ll need to use the esxcli command to bring it up to a higher priority again.
Happy Virtualizing! Leave a comment!