Auto shrink dynamic VHD while online in VMWare, HyperV, or Xenserver
Posted on 2011-03-15
Currenty I have been implementing HyperV on a small scale (1 or 2 servers max). In this currenty senario I have two physical servers running Windows 2008 x64 both with the HyperV Role. On one server I have a SBS 2008 VHD & a Windows 2003/SQL 2005 VHD. On the other server I have a Windows 2003 x64 VHD for Terminal Services.
Disk speed is not a huge issue so all VHD are set up as dynamic expanding. I have Backup Assist on each physical server that backs up to a rotation of USB drives that are plugged into each physical server.
So, here is my problem. I have defrag set to run every Sunday on all VHD. We have a daily backup that runs at night.
A) These VHD keep growing in size even though the actual disk space usage in the VHD is just a fraction of the VHD size. I understand how dynamic VHDs work, so I defrag, precompact, take offline, and then shrink. A brutal all night process of downtime for each server. The reason we don't use fixed VHD sizes is because I don't want to backup a 300GB VHD when only 150GB is being used.
Would migrating to a VMWare vSphere or Xenserver help fix this problem? I dont mind scipting something that will auto shrink the VHD while the server is "online".
B) My Backups seem to take a long time using Backup Assist (6-7 hours for 500GB of information) on the server with SBS 2008 and SQL. I have shadow copies enabled and setup for incremental windows imaging backups on the physical host.
Would migrating to a VMWare vSphere or Xenserver help fix this problem using deduplication or some other method?
The budget is slim but I think I can squeeze some money for a migration if it resolves the issues above ($1000-2000) area.