I am very much aware that as an when we write to tdev the pages will get allocated but what will happen if i delete half of data on that tdev ( or from the file system made up of those tdevs) will the pages get deallocate and come back to free pool space or it will not happen until we manually run the Pool Reblanace.
Also even if we unmask any luns from server , we need to destroy them to return the allocated storage back to free pool.
When a host writes to a TDEV then 768KB extents will be allocated as needed. So in your example you allocate some space and then you delete half of the space. The OS deletes the files on the inode list of the filesystem (f.e. when you delete files from an NTFS, Windows puts a $ as the first character) but does not zero out the "actual" data of the files. In order to reclaim the space from the storage , storage needs to find extents that contains only zeroes. So you need to to zero out the space that your data consumed. This is why you need the OS LVM to be able to do this. Such LVM is VxVM 5, VMware or with Win2K8 you can run storeclaim or sdelete.
Rebalance will move around extents to all the TDATs of your pool, to evenly balance the extents on the TDATs based on the Rebalance Variance.
Thanks Saurabh . You are right . But that we need to run on host side.
Is there anything can be done on storage side without running any utility on host side to reclaim the storage tracks. Will pool rebalance on vmax can help with same ?
no, pool rebalance will not help you in this problem. Use host based utility (sdelete in case of Windows or Symantec Volume mangaer ) to write zeros on all deleted tracks.
OK understood. We need to fill those data blocks with ZERO's so that storage can reclaim those extents.
Now what's next . What is the command to reclaim the storage or do i need to destroy entire lun ? But in some cases where tdev is half way utilized we cant destroy also.
Kleanthis76
1 Rookie
•
27 Posts
1003
0
Posted January 16th, 2013 23:00
Hi OnlySandy,
When a host writes to a TDEV then 768KB extents will be allocated as needed. So in your example you allocate some space and then you delete half of the space. The OS deletes the files on the inode list of the filesystem (f.e. when you delete files from an NTFS, Windows puts a $ as the first character) but does not zero out the "actual" data of the files. In order to reclaim the space from the storage , storage needs to find extents that contains only zeroes. So you need to to zero out the space that your data consumed. This is why you need the OS LVM to be able to do this. Such LVM is VxVM 5, VMware or with Win2K8 you can run storeclaim or sdelete.
Rebalance will move around extents to all the TDATs of your pool, to evenly balance the extents on the TDATs based on the Rebalance Variance.
Regards,
Kl.