In previous post I covered storage space reclamation in VMware vSphere. This article describes the methods that can be used in Microsoft Windows to reclaim dead space.
In Windows dead space is left behind when you delete a file or shrink a SQL database for example.
How to find dead space?
Compare Windows file system usage to LUN usage in array.
Windows Server 2012/2012 R2
Windows Server 2012/2012 R2 is capable of identifying the provisioning type and the UNMAP and TRIM capability of a disk. Space reclamation can be triggered by file deletion, a file system level trim, or a storage optimization operation.
You can check if your disks are identified as thin or not from “Defragment and Optimize Drives” tool. If your thinly provisioned disk does not identify as thin disk in Windows check with your array vendor. Array firmware update might be needed to enable support.
- You can read more about Windows Server 2012 unmap from here.
- More information about Windows Server 2012/2012 R2 Defrag can be found here.
Windows Server 2003/2008/2008 R2
Older Windows versions does not include automatic UNMAP support. Third party tools can be used to reclaim space.
EMC StorReclaim
EMC StorReclaim is a command line utility to UNMAP allocated but unused space from storage array. It can be used in physical servers and virtual servers for LUNs which are presented directly from storage array. To get a the tool contact your EMC representative.
Supported operating systems:
- Windows Server 2003 x86/x64
- Windows Server 2008 x86/x64
- Windows Server 2008 R2
- Windows Server 2008 R2 with SP1
VMWare Guest Reclaim
VMWare Labs has published a free tool called Guest Reclaim that works in Windows 2003/2008/2008R/XP/7.
Guest Reclaim reclaims dead space from NTFS volumes hosted on a thin provisioned SCSI disk. The tool can also reclaim space from full disks and partitions, thereby wiping off the file systems on it. As the tool deals with active data, please take all precautionary measures understanding the SCSI UNMAP framework and backing up important data. (Source: VMWare)
In my environment I had problems when VM HW version was 8. It worked when VM HW version 9 or higher.
More information and downloads can be found here.
Commercial tool – Raxco PerfectStorage
Raxco PerfectStorage is an intelligent storage management solution for thin-provisioned space reclamation that improves productivity, allows for better storage management and forecasting, and delays future storage purchases. (Source: Raxco)
More information can be found from vendor homepage.
PerfectStorage is a agent based system. Agent is installed to operating system (virtual or physical) and then based on schedule SCSI UNMAP or zero fill tasks are executed. Supported operating system today is Windows only. What makes PerfectStorage interesting is that it identifies the space it can reclaim and issue reclaim operations only to those blocks. Most free tools issue reclaim commands to all free space. This can significantly reduce performance impact of reclaim operation. Everything is managed through central console. Also reporting of reclaimed space can be done in management console.
Conclusion
So those are some of the options how to reclaim dead space from virtual or physical Windows servers. I did not write about zero fill options in this post because this mostly requires some more operations from storage side. I will talk about zero fill options later in the post series.
If anyone knows more tools that can be used to reclaim space in Windows please let me know in the comments sections.
Other space reclaim posts in this series:
Storage reclamation – part 1 – VMWare vSphere
Storage reclamation – part 3 – Linux
Storage reclamation – part 4 – Zero fill and array level reclamation
Thanks for this very useful summary. at time of writing (May/June 2016) I have had great difficulty getting EMC to release StorReclaim for Win 2008 Server. Win2012 worked very well for my VNX/CLARiiON LUNs. We have not tried it with TDEV/VMAX yet. I’ll explore the use of sdelete instead.
EMC StorReclaim went EOSL in Q1’13.