Wednesday, August 20, 2014

Adding VSS ShadowStorage

So most modern backup and imaging suites use VSS to deal with open files. I'm not going to teach you about VSS here, but long story short - the VSS writer will tell the operating system to quiesce the data and the VSS will keep track of changes that are occuring while the backup completes. At the end of that process the VSS writer will write back the changes to the data. So the question for this article is - where is that information stored.

By default the information is stored on the same disk that contains the data. This can be inefficient and creates an interesting aspect to the calculation when scaling a disk for storage.

The recommendation in an enterprise environment is to dedicate a drive for the purpose. A popular recommendation is to make that disk 10% of the size of the data disk. If you use the same disk to be the VSS volume for multiple disks, this estimate should be cumulative.

Disk D: (1 TB)
Disk E: (2 TB)
Disk F: (3 TB)

Total = 6 TB, 10% = ~600 GB

Disk V: (for VSS = 600 GB)

This is configured using the utility VSSADMIN. I am not going to provide a complete brief on VSSADMIN. Here is a complete reference:

Specifically, to create shadow storage for the above examples we would run this:

VSSAdmin Add ShadowStorage /For=d: /On=v: /MaxSize=Unbounded
VSSAdmin Add ShadowStorage /For=e: /On=v: /MaxSize=Unbounded
VSSAdmin Add ShadowStorage /For=f: /On=v: /MaxSize=Unbounded

Ocassionally you will want to point VSS at a volume that does not have a drive letter. In which case you will need the GUID for the drive. From PowerShell run:


This will list every disk and display the GUIDS for the disk. Once armed with the GUID, here is the syntax for creating shadow storage on it:

vssadmin add shadowstorage /for=d: /On=\\?\Volume{insert your guid here} /MaxSize=Unbounded
vssadmin add shadowstorage /for=e: /On=\\?\Volume{insert your guid here} /MaxSize=Unbounded
vssadmin add shadowstorage /for=f: /On=\\?\Volume{insert your guid here} /MaxSize=Unbounded

Finally, check your work thus:

VSSAdmin List ShadowStorage


No comments:

Post a Comment