I often chat to people about how I use Hyper-V in my house – so I figured that I should write it down for all to read.
At the moment I have a single server in my house. It is a single processor quad-core system (Q6600 processor) with 8GB of memory. This server is kept in the mezzanine space under the stairs in my house. I have gone a little crazy with this space and have setup a basic raised floor with cooling and a beefy UPS. It is a very small space (I cannot stand up in there) so I try to do as much remote management as possible.
At the moment the system configuration looks something like this:
I used to run this system with Windows Server core in the parent partition, but I am currently using a full installation of Windows Server.
The main reason for this change was to make it easier to troubleshoot the system when I break something.
As this is the only server in my house – it fills the roles of Domain Controller, DHCP server and DNS server. This means that when it is having problems I often cannot authenticate to it from a remote computer, which in turn means that most of my troubleshooting is done from the physical console. This is much easier when the physical console has a full graphical user interface, and not just a command line.
I also used to run my Domain Controller / DHCP Server / DNS Server in a virtual machine, but I know run them in the parent partition (you can read a discussion about Domain Controller configuration options here).
The reason for this change is that I want to be able to do remote troubleshooting if something is wrong. But as I have already alluded to – I cannot do this if the Domain Controller is down. If something does go wrong with the system (either in hardware or software) that stops virtual machines from running – the parent partition is usually still functional. Putting the Domain Controller there means that I have a higher chance of being able to do remote troubleshooting.
All that said – my setup is by no means utopian. The main issues that I have at the moment are:
- I have yet to get the behavior out of System Center Operations Manager that I want.
So far, my experience with System Center Operations Manager has been one of fixing a long parade of error events that I do not particularly care about. At the moment it is telling me that my Hyper-V server is “red” because I have a bunch of drives that are almost out of space. This is expected in my case, because these drives are filled up with fixed size virtual hard disks.
Not a show stopper – but it means that I am constantly having to double check error events.
I have not given up on System Center Operations Manager yet – but so far it has been more irritating than useful for me.
- Monitoring my parent partition remotely is a pain, because it is a Domain Controller.
The biggest thing that I want to be able to monitor remotely is the state of my hardware. I have set this up before when my parent partition was not a Domain Controller. But now that it is a Domain Controller I am finding many cases where it is either impossible to do remote management, or you need to follow different (poorly documented) steps to do so.
At the moment I find that I often fall back on just using Remote Desktop to connect to the parent partition, and checking things manually from there. I really do not like doing this.
This one issue is making me reconsider the whole decision to put the Domain Controller in the parent partition.
- C:\ is a performance bottle neck in my server.
I have a bunch of virtual machines running on my system drive – which is a general performance (and best practice) no no. It does not bother me too much – but I have noticed performance issues with this configuration.
I am debating about what to do about this.
Top on my list of ideas is to move C:\ to a set of mirrored disks. This will help read performance, and would also help with the next point too.
- C:\ and D:\ are single points of failure in my system.
I love Windows Home Server for many reasons. The biggest one is how it manages data redundancy to protect me from disk failure. Over the last couple of years I have had a number of disks failures – and thanks to Home Server I have not lost any data.
Unfortunately, if either the C:\ or the D:\ were to fail, I would be in a lot of pain.
I could recover from D:\ failing with no data loss, but it would be a pain to recover from. Losing C:\ would involve data loss (did I mention that C:\ is the oldest disk in the system?).
- I do not have a good backup story.
Leading on from the previous point – I do not have a good backup story for this system. In fact, I do not have a backup story at all.
I really need to do something about that.
- I have to bring everything down to do anything with the hardware.
Every time that I need to reconfigure the hardware in this system, I have to bring everything down. This does not happen too often, but when it does happen it is a big pain. This also keeps me from putting my media center files on my home server – as I do not want to have the rest of the family mad at me if I need to reconfigure the server for other reasons.
- I do not have enough storage space on my home server.
Yup. Need more storage 🙂