Windows Server

10 things you should know about Hyper-V

Hyper-V is getting good reviews, even from some Microsoft critics, and the release of the standalone version has made it even more attractive. Deb Shinder looks at the most important aspects of the Hyper-V platform.

Hyper-V is getting good reviews, even from some Microsoft critics, and the release of the standalone version has made it even more attractive. Deb Shinder looks at the most important aspects of the Hyper-V platform.


Hypervisor technology is software on which multiple virtual machines can run, with the hypervisor layer controlling the hardware and allocating resources to each VM operating system. Hyper-V is the virtualization platform that is included in Windows Server 2008. Microsoft also recently released a standalone version, called Hyper-V Server 2008, that's available as a free download from the Microsoft Web site.

As server virtualization becomes more important to businesses as a cost-saving and security solution, and as Hyper-V becomes a major player in the virtualization space, it's important for IT pros to understand how the technology works and what they can and can't do with it.

In this article, we address 10 things you need to know about Hyper-V if you're considering deploying a virtualization solution in your network environment.

Note: This information is also available as a PDF download.

#1: To host or not to host?

Hyper-V is a "type 1" or "native" hypervisor. That means it has direct access to the physical machine's hardware. It differs from Virtual Server 2005, which is a "type 2" or "hosted" virtualization product that has to run on top of a host operating system (e.g., Windows Server 2003) and doesn't have direct access to the hardware.

The standalone version of Hyper-V will run on "bare metal" -- that is, you don't have to install it on an underlying host operating system. This can be cost effective; however, you lose the ability to run additional server roles on the physical machine. And without the Windows Server 2008 host, you don't have a graphical interface. The standalone Hyper-V Server must be administered from the command line.


Note

Hyper-V Server 2008 is based on the Windows Server 2008 Server Core but does not support the additional roles (DNS server, DHCP server, file server, etc.) that Server Core supports. However, since they share the same kernel components, you should not need special drivers to run Hyper-V.


Standalone Hyper-V also does not include the large memory support (more than 32 GB of RAM) and support for more than four processors that you get with the Enterprise and DataCenter editions of Windows Server 2008. Nor do you get the benefits of high availability clustering and the Quick Migration feature that are included with the Enterprise and DataCenter editions.

#2: System requirements

It's important to note that Hyper-V Server 2008 is 64-bit only software and can be installed only on 64-bit hardware that has Intel VT or AMD-V virtualization acceleration technologies enabled. Supported processors include Intel's Pentium 4, Xeon, and Core 2 DUO, as well as AMD's Opteron, Athlon 64, and Athlon X2. You must have DEP (Data Execution Protection) enabled (Intel XD bit or AMD NX bit). A 2 GHz or faster processor is recommended; minimum supported is 1 GHz.


Note

Although Hyper-V itself is 64-bit only, the guest operating systems can be either 32-bit or 64-bit.


Microsoft states minimum memory requirement as 1 GB, but 2 GB or more is recommended. Standalone Hyper-V supports up to 32 GB of RAM. You'll need at least 2 GB of free disk space to install Hyper-V itself, and then the OS and applications for each VM will require additional disk space.

Also be aware that to manage Hyper-V from your workstation, you'll need Vista with Service Pack 1.

#3: Licensing requirements

Windows Server 2008 Standard Edition allows you to install one physical instance of the OS plus one virtual machine. With Enterprise Edition, you can run up to four VMs, and the DataCenter Edition license allows for an unlimited number of VMs.

The standalone edition of Hyper-V, however, does not include any operating system licenses. So although an underlying host OS is not needed, you will still need to buy licenses for any instances of Windows you install in the VMs. Hyper-V (both the Windows 2008 version and the standalone) support the following Windows guest operating systems: Windows Server 2008 x86 and x64, Windows Server 2003 x86 and x64 with Service Pack 2, Windows 2000 Server with Service Pack 4, Vista x86 and x64 Business, Enterprise, and Ultimate editions with Service Pack 1, and XP Pro x86 and x64 with Service Pack 2 or above. For more info on supported guests, see Knowledge Base article 954958.

Hyper-V also supports installation of Linux VMs. Only SUSE Linux Enterprise Server 10, both x86 and x64 editions, is supported, but other Linux distributions are reported to have been run on Hyper-V. Linux virtual machines are configured to use only one virtual processor, as are Windows 2000 and XP SP2 VMs.

#4: File format and compatibility

Hyper-V saves each virtual machine to a file with the .VHD extension. This is the same format used by Microsoft Virtual Server 2005 and Virtual PC 2003 and 2007. The .VHD files created by Virtual Server and Virtual PC can be used with Hyper-V, but there are some differences in the virtual hardware (specifically, the video card and network card). Thus, the operating systems in those VMs may need to have their drivers updated.

If you want to move a VM from Virtual Server to Hyper-V, you should first uninstall the Virtual Machine Additions from the VM while you're still running it in Virtual Server. Then, shut down the VM in Virtual Server (don't save it, because saved states aren't compatible between VS and Hyper-V).

VMware uses the .VMDK format, but VMware images can be converted to .VHD with the System Center Virtual Machine Manager (referenced in the next section) or by using the Vmdk2Vhd tool, which you can download from the VMToolkit Web site.


Note

Citrix Systems supports the .VHD format for its XenServer, and Microsoft, Citrix, and HP have been collaborating on the Virtual Desktop Infrastructure (VDI) that runs on Hyper-V and utilizes both Microsoft components and Citrix's XenDesktop.


#5: Hyper-V management

When you run Hyper-V as part of x64 Windows Server 2008, you can manage it via the Hyper-V Manager in the Administrative Tools menu. Figure A shows the Hyper-V console.

Figure A: The Hyper-V Management Console in Server 2008

hyper-v console

The Hyper-V role is also integrated into the Windows Server 2008 Server Manager tool. Here, you can enable the Hyper-V role, view events and services related to Hyper-V, and see recommended configurations, tasks, best practices, and online resources, as shown in Figure B.

Figure B: Hyper-V is integrated into Server Manager in Windows Server 2008.

hyper-v

The Hyper-V management tool (MMC snap-in) for Vista allows you to remotely manage Hyper-V from your Vista desktop. You must have SP1 installed before you can install and use the management tool. You can download it for 32-bit Vista or 64-bit Vista.


Tip

If you're running your Hyper-V server and Vista client in a workgroup environment, several configuration steps are necessary to make the remote management tool work. See this article for more information.


Hyper-V virtual machines can also be managed using Microsoft's System Center Virtual Machine Manager 2008, along with VMs running on Microsoft Virtual Server and/or VMware ESX v3. By integrating with SCCM, you get reporting, templates for easy and fast creation of virtual machines, and much more. For more information, see the System Center Virtual Machine Manager page.

Hyper-V management tasks can be performed and automated using Windows Management Instrumentation (WMI) and PowerShell.

#6: Emulated vs. synthetic devices

Users don't see this terminology in the interface, but it's an important distinction when you want to get the best possible performance out of Hyper-V virtual machines. Device emulation is the familiar way the virtualization software handles hardware devices in Virtual Server and Virtual PC. The emulation software runs in the parent partition (the partition that can call the hypervisor and request creation of new partitions). Most operating systems already have device drivers for these devices and can boot with them, but they're slower than synthetic devices.

The synthetic device is a new concept with Hyper-V. Synthetic devices are designed to work with virtualization and are optimized to work in that environment, so performance is better than with emulated devices. When you choose between Network Adapter and Legacy Network Adapter, the first is a synthetic device and the second is an emulated device. Some devices, such as the video card and pointing device, can be booted in emulated mode and then switched to synthetic mode when the drivers are loaded to increase performance. For best performance, you should use synthetic devices whenever possible.

#7: Integration Components

Once you've installed an operating system in a Hyper-V virtual machine, you need to install the Integration Components. This is a group of drivers and services that enable the use of synthetic devices by the guest operating system. You can install them on Windows Server 2008 by selecting Insert Integration Services Setup Disk from the Action menu in the Hyper-V console. With some operating systems, you have to install the components manually by navigating to the CD drive.

#8: Virtual networks

There are three types of virtual networks you can create and use on a Hyper-V server:

  • Private network allows communication between virtual machines only.
  • Internal network allows communication between the virtual machines and the physical machine on which Hyper-V is installed (the host or root OS).
  • External network allows the virtual machines to communicate with other physical machines on your network through the physical network adapter on the Hyper-V server.
To create a virtual network, in the right Actions pane of the Hyper-V Manager (not to be confused with the Action menu in the toolbar of the Hyper-V console or the Action menu in the VM window), click Virtual Network Manager. Here, you can set up a new virtual network, as shown in Figure C.

Figure C: Use the Virtual Network Manager to set up private, internal, or external networks.

virtual network manager

Note that you can't use a wireless network adapter to set up networking for virtual machines, and you can't attach multiple virtual networks to the same physical NIC at the same time.

#9: Virtual MAC addresses

In the world of physical computers, we don't have to worry much about MAC addresses (spoofing aside). They're unique 48-bit hexadecimal addresses that are assigned by the manufacturer of the network adapter and are usually hardwired into the NIC. Each manufacturer has a range of addresses assigned to it by the Institute of Electrical and Electronics Engineers (IEEE). Virtual machines, however, don't have physical addresses. Multiple VMs on a single physical machine use the same NIC if they connect to an external network, but they can't use the same MAC address. So Hyper-V either assigns a MAC address to each VM dynamically or allows you to manually assign a MAC address, as shown in Figure D.

Figure D: Hyper-V can assign MAC addresses dynamically to your VMs or you can manually assign a static MAC address.

MAC addresses

If there are duplicate MAC addresses on VMs on the same Hyper-V server, you will be unable to start the second machine because the MAC address is already in use. You'll get an error message that informs you of the "Attempt to access invalid address." However, if you have multiple virtualization servers, and VMs are connected to an external network, the possibility of duplicate MAC addresses on the network arises. Duplicate MAC addresses can cause unexplained connectivity and networking problems, so it's important to find a way to manage MAC address allocation across multiple virtualization servers.

#10: Using RDP with Hyper-V

When you use a Remote Desktop Connection to connect to the Hyper-V server, you may not be able to use the mouse or pointing device within a guest OS, and keyboard input may not work properly prior to installing the Integration Services. Mouse pointer capture is deliberately blocked because it behaves erratically in this context. That means during the OS installation, you will need to use the keyboard to input information required for setup. And that means you'll have to do a lot of tabbing.

If you're connecting to the Hyper-V server from a Windows Vista or Server 2008 computer, the better solution is to install the Hyper-V remote management tool on the client computer.

Additional resources

Hyper-V is getting good reviews, even from some pundits who trend anti-Microsoft. The release of the standalone version makes it even more attractive. IT pros who want to know more can investigate the Microsoft Learning resources related to Hyper-V technology, which include training and certification paths, at the Microsoft Virtualization Learning Portal.

About

Debra Littlejohn Shinder, MCSE, MVP is a technology consultant, trainer, and writer who has authored a number of books on computer operating systems, networking, and security. Deb is a tech editor, developmental editor, and contributor to over 20 add...

18 comments
clindell
clindell

This info needs to be updated as it is no longer correct.

pworlton
pworlton

You obviously need a Windows machine to run Hypervisor, but you should also be aware that it was not intended for hosting a Linux virtual machine either. While you may get Linux to work on HyperV (as I did), you will find yourself infinitely frustrated by the lack of configuration options and tools for anything non-Windows. More importantly, I could never get the mouse to work correctly on my SUSE 10 trial in spite of trying every mouse driver and setting available. The mouse cursor just shoots across the screen no matter how slowly you go or how you set the tracking speed. But as long as your virtual machines stay within the MS family, HyperV is a good solution. By the way, VMWare Server wasn't so hot with SUSE 10 either. The video in the virtual window was completely hosed. But the new VMWare Server 2.0 worked like a charm - no special configuration needed. I'm a little annoyed at the extra mouse clicks required to get to the console (versus the old VMWare Server), but the remote desktop-like window more than makes up for it.

ChrisHyche@AlabamaOne.Org
ChrisHyche@AlabamaOne.Org

I am kind of interested in using Hyper-V on my home machine but I am unclear on how well it supports the hardware in "synthetic" mode. Will it support full DirectX (video and sound esp.)... Will it support full USB... Will it support full Firewire... Can I load hardware specific drivers or is it just basically a faster version of emulation? I have seen very little on this part of the capabilities. Usually a server only requires basic hardware support outside of the drive controllers. A desktop requires quite a bit more.

Justin James
Justin James

I work remotely from the office, so I use the Hyper-V management tools on my Vista laptop to access my Hyper-V VMs. However, I had a heck of a time getting it to work over the VPN (it's an ISA server). It turns out, the Hyper-V management tool uses DCOM. You need to disable "strict RPC compliance" in ISA server to get this tool to work. Hope this helps someone! J.Ja

dunworthdl
dunworthdl

The tips for configuring workgroup access don't work with the bare metal Hyper-V server. I finally had to disable the firewall in order to manage the server from Vista.

me19562
me19562

This is a really good article. But, there is one thing. I believe the supported processors is incorrect. Only Intel VT or AMD-V processors are supported. Supported Intel processors will be Pentium D and EE, Core Duo, Core 2 Duo and Xeon processors. AMD supported processors will be AMD Phenom X3, X4 and Opteron processors. Processors Intel Pentium 4, AMD Athlon 64 and X2 doesn't support Intel VT or AMD-V.

Justin James
Justin James

I think that you are looking to use Hyper-V in a way that doesn't make sense. I don't think that buying a Windows Server license, plus each OS's license that you are hosting, is a cost effective way of doing things. In addition, anything that is going to be using full DirectX is NOT (repeat NOT) a good candidate to run in a VM, regardless of which hypervisor or supervisor you use. Remember, these things tend to provision dinky little S3 "bare bones" video cards to the VM, not some hot-shot ATI or NVIDIA superstar card. In addition, unless you want to go through the very headache-y "Windows Workstation 2008" conversion, the host machine will be fairly useless to you as a workstation. You questions about external devices make it sound like you are doing multimedia editing with these clients. Again, not a good idea. Are you going to walk across the house just to unplug a USB thumb drive or connect a camcorder to the host machine? And then go through the hassle of configuring the host to attach that device to the VM? Finally, it sounds to me like you are trying to get Hyper-V to replace Terminal Services to provision full desktops to a number of people... remember, for those clients to be looking at the screen, they either need to be using the Hyper-V admin tool, which runs under Vista only, or they need to be using RDP or a similar technology (VNC, etc.) servers in the VMs and clients on their PCs to access them. And those means of control have enough latency in them that I certainly would not be playing video games or doing graphics editing or whatever it is that you are trying to do. Even if you did use Terminal Services, I do not think you'd be happy. J.Ja

kphayes710
kphayes710

Is there any way to manage this from an XP client? We do not use Vista at all and will not move to Vista, so is there a way to get around this to use an XP client? Or do we then need to just manage it from the command line?

StillLearnin
StillLearnin

I was wondering if the stand alone version can be installed in a dual boot configuration? I've been playing with Hyper-V in Server 2008, dual booting it on my Vista machine. Can I format that partition and install the Stand alone on it?

ChrisHyche@AlabamaOne.Org
ChrisHyche@AlabamaOne.Org

...not since MS released Hyper-V Server 2008. The word MS and even VMWare has been putting out is that hypervisors runs very fast...almost native speed. I have used VPC and VM Server and those are a little slow but Hyper-V is supposed to be better. I knew that in emulated mode the drivers would be very limit. Like maybe the S3 you mentioned. What I don't know is in enlightened mode does it still only give you S3 style capabilities just a little faster or will it allow the proper drivers for the card to work? On the USB... I have a number of external hard drives(some of which are firewire), usb keyboard, bluetooth dongle, and a video capture device. No video camera. The machine is just used for me...but it is heavily configured. Ideally it would be a more efficient multi-boot machine. Vista, XP, DOS, Linux, and maybe even a copy of 2008 Server(which I got from a launch event). I personnel do use terminal services outside of some basic RDP from work and my internet connect makes that of very limited usefulness. I am just an IT manager/power user/gamer that wants to do every thing I can with the hardware I have got. And maybe thinking a little out of the box in the process.

Justin James
Justin James

I don't see any reason why you couldn't do this. J.Ja

Justin James
Justin James

... is that Hyper-V Server is a command line ONLY environment. That means that to see the screens of the VM, you MUST install a remote console system (RDP/Terminal Services, VNC, X Window, etc.) on the hosted OS's and access them from another PC. Granted, that other PC does not need to be a powerhouse box since none of the processing is happening on it, but it is still something you should be aware of. J.Ja

Justin James
Justin James

... I think that you stand a fairly good chance of being reasonably happy with the scenario. :) J.Ja

ChrisHyche@AlabamaOne.Org
ChrisHyche@AlabamaOne.Org

It just seems like it would have so much potential if they could only improve the hardware support. I think MS has even talked about virtualization on the desktop and improved hardware support is needed there as well. Stuff like security dongles and computer integrated phone systems(with connected hardware) and other things we probably ain't even thought about yet.

stipe.hodak
stipe.hodak

I think for your purposes, you should stick to multiboot. Virtualisation technology is meant for completely different purposes than what you want to do in your home environment.

Editor's Picks