For the past few years (longer than I can remember) I've been running Microsoft's Virtual Server 2005 R2, an application that installs on their Server operating systems, to allow you to host multiple Virtual Machines on the one Physical Server. So for Slickhouse, the mail; web; database; and domain controller servers are all located on the one physical box.
However, Virtual Server 2005 does have its drawbacks - it's not a pure Virtualisation platform, as it installs on top of an operating system layer. It also doesn't perform as well as other solutions on the market - namely VMWare. Microsoft released Hyper-V as an add-on to Server 2008 and as a free standalone hypervisor - Hyper-V Server 2008 R2. The compatability with Virtual Server is there, but it is a better competitor to VMWare's ESX platform.
Hyper-V does have a few advantages compared to VMWare's ESX/ESXi platform, which I was also looking into. Firstly, the hardware requirements are a lot less strict and you'll find that Hyper-V runs on many modern 64-bit servers that Server 2008 successfully installs on. There are specific CPU requirements, but most AMD/Intel CPUs on the market now support Virtualisation at a hardware level. Secondly, it fits into an existing Microsoft network very well and supports migration from Virtual Server 2005.
I chose to upgrade my main server to Hyper-V at the same time as consolodating the storage for the network. Previously, I had the virtual servers housed on one box, with 4 x 250GB drives in a RAID array within another, acting as a NAS. As with most computer technology, the price of storage has decreased as the capacity has increased over the years. Whereas back in 2005 the 250GB drives cost ~£50 each (~£200 per TB), in 2010 I've purchased a 2TB drive for ~£100 (~£50 per TB), so it made sense to drop the NAS for 24/7 use and put the 2TB drive on the server housing the virtual machines.
I opted for another Samsung Spinpoint HDD, as I've had 9 running smoothly for a few years now, so it made sense to add a tenth. Their 2TB F3 Eco Green drive runs at a slower 5400rpm speed, but I'd say it performs as well as the older generation 250GB SATA Spinpoints, running at 7200rpm. A copy of around 630GB of data (various file sizes) took hours rather than days over a gigabit connection from the original NAS.
The 2TB drive itself is purely for holding all of the data served via the NAS. I was originally intending to connect it to the host and setup shares on it, but Hyper-V Server 2008 R2 only offers Hyper-V, no other Windows Server Services (hence the free price). Server Fault's community suggested that I setup a VM as a NAS and that I wouldn't notice any performance hits.
As for Hyper-V, the installation is very straight forward - much the same as their Server 2008/Vista/Windows 7 installation process, with all the prompts located at the start, rather than strewn throughout during previous Windows installations. Once the install is complete, you can configure the server using the command line interface once the server completes a reboot. This screen remains the same throughout use of Hyper-V Server 2008 R2 with the actual management occuring on a client machine via the Hyper-V Management snap-in.
In usual setups, managing Hyper-V should be fairly straight forward. Install the Remote Administration Tools for Windows 7, then connect to the Hyper-V Server and away you go. However, as all my main servers are now virtualised, including the domain controller - I could only run the Hyper-V Server in Workgroup mode, not as part of the Active Directory domain. As my Windows 7 machines are part of the domain, it meant that I spent 3 evenings back-to-back pulling my hair out to try and get it all working. Virtual PC Guy has a great tool, HVRemote that cuts out many of the headaches involved with the initial setup. I finally managed to successfully connect to the host after plugging in the 2nd NIC, which picked up a dynamic IP via DHCP - so it appears to have been a DNS/routing issue.
Once Hyper-V Server 2008 R2 has been installed and configured, it's a case of either migrating VMs across, or building new ones. Migrating from Virtual Server 2005 proved to be a fairly easy procedure with Server 2003 VMs - uninstall the Virtual Server additions and shutdown the VM before copying the VHD across to the Hyper-V host and creating a new machine (using the copied VHD). When it came to migrating my Server 2008 Web Server across though, things were a little different. The Integration Services wouldn't fully install and a quick check of Device Manager warned me that the Virtual Machine Bus could not find enough resources. As with 99% of IT related problems though, Google netted me a solution.
Hyper-V Server 2008 R2 console view
Once all the virtual machines had been migrated across, full network connectivity and services were restored. Performance appears to have improved from the upgrade: VMs are a lot more responsive after booting or logging on; the sites also appear to load much quicker and SQL Server queries are instant - though I don't have raw figures to back up my claims, but if you have a Virtual Server host, Hyper-V is definately worth looking into, especially if your existing server supports it.