The Big [re]Build

A while ago I talked about how I use Hyper-V in my house, and more recently I talked about trying to backup my Hyper-V server.  This discussion of backup was actually in preparation for a significant rebuild of my home Hyper-V server, that I undertook a week and a half ago.  There were several goals that I had with this rebuild:

  • Upgrade the system disk from an old stand alone disk to a newer RAID1 disk
  • Add a new disk to my Windows Home Server virtual machine
  • Pull my Domain Controller / DNS / DHCP server out of my parent partition and put it in a virtual machine

The challenges that I had with this process included:

  • I did not have a second equivalent server handy to just migrate to.  Instead my goal was to utilize the machines sitting around my house as temporary staging locations while I did the rebuild (in fact I used my desktop as a file server and ran Hyper-V on my Mac Mini to act as my backup Hyper-V server).
  • If this server is down – Internet is down in my house.  Any father / husband out there will tell you that you do not want to be responsible for breaking the household internet connection.
  • My Windows Home Server virtual machine contains all of my families digital memories.  8 years of kid photos, videos of my children’s first steps, etc…  Losing this data is simply not an option.

It took over a week of planning and research but I ended off successfully rebuilding the system in the space of a weekend.  The process that I used looked something like this:

  • Identify non-critical server virtual machines, shut them down and export them to a file share (on my desktop)
  • Use SCVMM to move critical server virtual machines to Hyper-V on my Mac Mini
  • Perform a configuration-only export of my Windows Home Server
  • Do a bare metal backup of my physical computer
  • Restore the bare metal backup into a virtual machine on my Mac Mini
  • Shutdown my physical computer
  • Get my Domain Controller / DNS / DHCP server running on the Mac Mini
  • Swap in the new disks into the physical computer
  • Install Windows and Hyper-V on the new disks
  • Move all virtual machines back to the physical computer

To pull this off I used pretty much every trick that I know – so I thought it would be good to do a blog series on the process.

Before I get going – there are a few questions that I have been asked that I would like to answer upfront:

  • Why are you using RAID1?!?  RAID10 would be much faster!

    To this I have two answers.  The first one is that I have a personal preference for minimizing the number of disks in my system (details that I prefer to not go into right now).  The second one is that you do not realize how bad the performance of my old system disk was.  I did some benchmarking on my old and new disk configuration to highlight the difference here:

    image

  • Why are you running your domain controller in a virtual machine?

    Read this post for my thoughts on this: https://blogs.msdn.com/virtual_pc_guy/archive/2008/11/24/the-domain-controller-dilemma.aspx

  • Why don’t you just get some nice high end hardware?

    I know of people who do this, but I have many other things that I like to spend my money on.  Plus there is some level of satisfaction in getting results on a shoestring budget :-)

Cheers,
Ben