A Long, Hard Look at Hyper-V

When writing a new book or designing a new course, I often think at the outset that I know which parts will be most interesting to readers and students—but sometimes I'm wrong. That was the case with my Windows Server 2008 class. When I designed the course, I thought Server Core or read-only domain controllers would be the biggest draws, but I was dead wrong. The number one topic of interest by far is Hyper-V, Microsoft's new hypervisor-based server virtualization technology. So let's take a look at it.

Of the questions that I get, probably the most common one is something like "is it any good?" or, more often the more direct "is it better than VMware ESX Server?" The short answer (to the second question) is "no;" a mildly longer answer would be "not yet, but the next version might be." The whole virtual manager wars remind me of the file server wars of the ‘80s and early ‘90s, when Microsoft struggled (and eventually succeeded) to topple Novell Netware from its premier place among file and print server software. The first attempt, the IBM PC LAN Support Program, was truly laughable—sort of like Virtual PC, Microsoft's first shot at VMware. The next big attempt to bring down Novell was OS/2 LAN Manager, and while that was somewhat limited in function and unimpressive in performance, it was built on a solid foundation (a multitasking, protected mode OS with access to big memory and a security model that eventually led to NT-type domains) and found a fair number of fans around the world. Hyper-V feels like that, as it appears to be a rock solid VM manager, seems quite fast, and was—at least according to the folks at Microsoft—designed from the ground up with security in mind.

So why isn’t it as good as ESX Server yet? You still can't back up a Hyper-V virtual machine (VM) while it's running without buying extra software; it only supports 16 cores on a system (which is odd, given that the OS itself can support up to 64 cores when running in 64-bit mode); and the feature that was supposed to compete with ESX Server's extremely popular VMware VMotion tool was put off until the next version of Windows Server. Leaping back in time, the Microsoft file server software whose market share finally outstripped Netware's was of course NT 4.0. Could the next version of Windows Server be the one that puts Hyper-V ahead of ESX Server? I kind of doubt it, but it's not impossible.

System requirement hurdlesThe best way to learn about a piece of software is, of course, to fire it up and play with it, but that turns out to be a bit tougher with Hyper-V than is usually the case, so permit me to offer a bit of advice in that area. First, you've got to be running a 64-bit version of Server 2008; Hyper-V can't run on a 32-bit processor because it employs some new features only found in Intel and AMD's 64-bit chips. Furthermore, those 64-bit chips need to have the virtualization support that you find in Intel's "VT" chips and AMD's "V" chips, as well as hardware support for Data Execution Prevention, a Windows feature intended to sense.

Now, a casual look at AMD and Intel's current lineup of 64-bit processors seems to make that simple, as it appears that just about every currently-available 64-bit chip is either an Intel VT or an AMD V chip. In reality, however, I've run into a fair number of V/VT-equipped systems that don't work with Hyper-V, so be careful before you buy a system if you want to use Hyper-V. If you're considering buying a system built around an AMD chip, then you're in luck, as AMD has a quite reliable test utility in their free "AMD Virtualization™ Technology and Microsoft® Hyper-V™ System Compatibility Check Utility," available here. It takes a quick look at your system and either gives you the thumbs up or thumbs down about whether it'll run Hyper-V. If your system is built around an Intel processor, however, then the news isn't quite as good. Intel offers a free utility called the "Intel Processor Identification Utility" that you can get here. When run, the utility doesn't give you a simple yea/nay like the AMD utility does; instead, you've got to look to see that the utility shows that you have "Intel Virtualization Technology" and "Execute Disable Bit." Even then, however, your system might not run Hyper-V. In my experience, however, if you've got the virtualization support and the disable bit, and if your system's BIOS has an explicit setting that allows you to enable virtualization, then you'll probably get Hyper-V to run.

It's not all that often that Microsoft gives us a completely new tool like Hyper-V, and at a reasonable price. I highly recommend that you take Hyper-V out for a spin!