Virtualization is one of today’s hottest IT technologies, and
Windows Server 2008’s new native virtualization feature,
Hyper-V, is a significant new competitor that has the potential
to change the market. VMware ESX Server is the current market
favorite. To make an informed decision about Hyper-V, you
need to understand how the architectures of the two products
compare. In addition, Hyper-V introduces some important new
features, and you’ll want to
see how Hyper-V and the
older Virtual Server 2005 R2
relate to each other. Finally, to
enrich your understanding of
Hyper-V I’ll show you how to set
it up and use it.
Prerequisites for
Hyper-V
Unlike Microsoft’s Virtual Server
2005 R2, which runs on both
32-bit and 64-bit systems, Hyper-V
requires an x64-based system that
has either Intel-VT or AMD-V support.
In addition, the host system’s
CPU must have data execution
protection enabled (the Intel XD
bit or the AMD NX bit). Microsoft
will provide Hyper-V virtualization
technology with the following versions of the Windows Server 2008.
- Server 2008, Standard: $999 with five Client Access Licenses (CALs)
- Server 2008, Enterprise: $3,999 with 25 CALs
- Server 2008, Datacenter: $2,999 per processor
Like the Windows Server 2003 R2, Enterprise and Datacenter Editions,
the Server 2008, Enterprise Edition allows up to four virtual Windows instances with no additional licensing
costs, and Server 2008 Datacenter Edition
allows an unlimited number of virtual Windows
instances with no additional licensing
costs. You can use Hyper-V with both the full
Server 2008 installation, or with Server Core
for any of the Server 2008 editions. In addition
Microsoft will offer a standalone version called
Hyper-V Server for $29.
Windows Server Hyper-V
Architecture
Designed to compete with VMware’s ESX
Server, Hyper-V has been built from scratch
based on a new microkernel architecture. Figure
1, shows an overview of the new
Server 2008 Hyper-V architecture. For a quick
comparison of ESX Server and Hyper-V, see
the sidebar “Feature for Feature: VMware ESX
Server vs. Microsoft Hyper-V.”
Unlike Virtual Server’s hosted virtualization
model, which requires installing the virtualization
software on top of a host OS, Hyper-V is
a virtualization layer that runs directly on the
system hardware with no intervening host OS.
The Hyper-V architecture consists of the bare
metal microkernel hypervisor and parent and
child partitions.
All Hyper-V implementations have one
parent partition. This partition manages the
Hyper-V installation. The Windows Server
Virtualization console runs from the parent
partition. In addition, the parent partition is
used to run thread-supported legacy hardware
emulation virtual machines (VMs). These
older emulation-based VMs are essentially
the same as the VMs that run under a hosted
virtualization product such as Virtual Server.
Guest VMs run on Hyper-V child partitions.
Hyper-V’s child partitions support two types of
VM: high performance VMBus-based VMs or
hosted emulation VMs. VMBus VMs include
Windows Server 2003, Windows Vista, Server
2008, and Xen-enabled Linux. The new VMBus
architecture is essentially a high performance
in-memory pipeline that connects Virtualization
Service Clients (VSCs) in the guests
with the host’s Virtual Service Provider (VSP).
Hosted emulation VMs support guest OSs that
don’t support the new VMBus architecture.
These OSs include, Windows NT, Windows
2000, and non-Xen enabled Linux, like SUSE
Linux Server Enterprise 10.
Hyper-V and Virtual Server
Server 2008
Hyper-V introduces capabilities
that aren’t available with Virtual Server 2005
R2. Running exclusively on the x64 platform,
Hyper-V supports host systems with up to 1TB
of RAM, and Hyper-V doesn’t limit the number
of active VMs; the only limitation comes from
the capabilities of the host server hardware. In
addition, the Hyper-V VMs are more scalable
than Virtual Server VMs. Hyper-V supports
both 32-bit and 64-bit guest OSs. Not only can
guest VMs take advantage of Hyper-V’s higher
performing VMBus architecture, but guest
VMs also can use more RAM and CPU than
Virtual Server offers. Virtual Server 2005 R2
has no support for virtual SMP and is limited
to 3.6GB of RAM per VM. Hyper-V supports up
to 4 virtual processors per VM and up to 32GB
of RAM per VM. To take full advantage of this
support, the host system must have at least 4
cores and more than 32GB of physical RAM.
Hyper-V provides new storage features.
Storage Area Network (SAN) support lets
you boot VMs and implement guest-to-guest
failover clustering, as well as virtual server host
failover clustering. Hyper-V also introduces the
pass-through VM access storage feature. With Hyper-V, you can access virtual
hard disk (VHD) images without
mounting the VHD image in a
running VM. Hyper-V can also take
advantage of Volume Shadow Copy
Service (VSS) for live VM backup.
On the networking side, Hyper-V
includes a new virtual switch with
support for Windows Network
Load Balancing (NLB) across VMs
on separate servers. In addition,
Hyper-V allows multiple snapshots
of running VMs with the ability
to revert back to any of the saved
snapshots.
Installing Hyper-V
Hyper-V is not installed in Server
2008 by default. To install Hyper-V,
you use the Server 2008 Server Manager. Click
Start, Programs, Administrative Tools, and
then select the Server Manager option. In
Server Manager, add the virtualization role
by clicking Add Roles, which displays the Add
Roles Wizard shown in Figure 2.
In the Add Roles Wizard, check the Windows
Server virtualization role. Then click Next and
step through the wizard’s screens to learn about
and configure Hyper-V. The wizard first explains
that you might need to configure your BIOS for
virtualization support, and it provides links to
Windows Server Virtualization Online Help files.
Next, the wizard prompts you for the Local Area
Connections that you want to associate with
your virtual networks. By default, the wizard
creates one virtual network for each physical
network adapter that’s installed. Next, you’re
asked to confirm your selections and prompted
to restart your system.
AMD-V systems have virtualization support
enabled by default. In contrast, if your
system uses Intel-VT virtualization, check your
system’s BIOS configuration during the boot
process and make sure that virtualization is
enabled. For systems with Intel motherboards,
press F2 during the boot process to see the
BIOS configuration. You can set the Enable VT
option to enable virtualization support in the
processor.
After the system reboots, the Resume Configuration
Wizard screen appears. Use it to
finish installing the Windows Server Virtualization
role. The new Windows Server Virtualization
role will then be listed under Server
Manager’s installed roles node.
Hyper-V’s Management
Console
After the virtualization role is installed, you’re
ready to fire-up some new VMs. Unlike Virtual
Server 2005 R2, which you manage through
a Web-based console, Hyper-V is managed
through a Microsoft Management Console
(MMC) 3.0-based Windows GUI. You start
Hyper-V’s Virtualization Management Console
by clicking Start, Administrative Tools,
and then selecting Windows Virtualization
Management. Figure 3 shows the Hyper-V
management console.
You can manage multiple Hyper-V server
instances in the management console’s left
pane. Selecting a server instance displays that
server’s VMs in the center Virtual Machines
pane. You can manage the VMs by rightclicking
them and selecting from among the following commands on
the context menu:
- Connect–Allows you to
connect to a running
VM, which starts the Virtual
Machine
Connection window
- Settings–Enables you to
edit the VM properties
- Turn Off–Powers down
the VM
- Revert–Applies a saved
snapshot to the VM
returning it to prior
saved state
- Shut Down–Shuts down
the VM’s guest OS
- Save State–Saves the
current state as a running
VM
- Pause–Halts the execution of a VM
- Snapshot–Saves a snapshot of the current
VM state
Use the Actions pane on the right side of the
Virtualization Management Console to perform
common actions such creating new VMs,
editing VM properties, editing virtual hard
disk configurations, starting and stopping the
virtualization service, and removing servers
from the console.
Use the Wizard to Create
and Migrate VMs
Creating VMs is easy using Hyper-V’s New
Virtual Machine Wizard. To start the wizard,
click New in the Virtualization Management
Console Action pane.
As Figure 4 shows, the first screen prompts
you for the VM name and the location where
the VM will be created. By default, Hyper-V
creates new VMs in the C:\ProgramData Microsoft\Windows\Virtualization directory.
To change the default location, you can use Virtualization
Settings in the Virtualization Management
Console. Next the wizard prompts
you for the amount of memory allocated to the
VM. The default value is 256MB, but you can
allocate from 8MB to 32MB of RAM per VM
(limited by your system’s physical RAM).
Next, the wizard asks you about networking
the VM. You can choose no network or select
a virtual network. The wizard created virtual
networks when you first added the virtualization
role. To create virtual networks, you can
also use Virtual Network Switch Management
in the Virtualization Management Console.
You can configure the virtual network switch to
allow internal networking so that VMs can connect
with other VMs or to the Windows Server
host. You also can create a virtual network that
connects to one or more of the host’s physical
network adapters for external network connectivity.
The New Virtual Machine Wizard gives you
the option of creating a VHD, connecting to
an existing VHD, or attaching to a VHD later.
By default, VHDs are created in the C:\Users Public\Documents\Virtual Hard Disks directory.
To change this default directory, you can
use Virtualization Setting in the Virtualization
Management Console. Hyper-V uses the same
on-disk VHD format as Virtual Server 2005 R2.
This common format makes it easy to migrate
existing Virtual Server 2005 R2 and Virtual PC
VMs to Server 2008 Hyper-V: Select the option
to use an existing VHD and then provide the
wizard with the path to the VHD file. This
attaches the existing VHD to the new Hyper-V
VM. If you chose to use a new VHD, then the
next screen offers OS installation options. You
can install the OS later or install the OS from
either the host’s CD/DVD drive or from an ISO
image file. The last screen presented by the
wizard prompts you to confirm your VM configuration
settings. Finishing the wizard creates
the new VM automatically. You have the option
to start it right away or you can manually start
it later.
After a VM is created you have the option
to install the new Integration Services on the
guest. (Before you install Integration Services
it’s a good idea to uninstall the Virtual Server
R2 Tools; Integration Services replaces the
older Virtual Machine Additions.) Integration
Services provides improved mouse support
and host time synchronization. You can install
Integration Services on the guest OS by starting
a Virtual Machine Connection from the
Virtualization Management Console. From
the Virtual Machine Connection Action menu,
choose Insert Integration Services Disk. In
using the new Hyper-V VM, I definitely noted
the brisk performance for the running VMs.
What’s Next for Hyper-V?
Microsoft shipped a beta version of Hyper-V
in December. A prerelease version of Hyper-V
will ship with the initial release of Server 2008.
Microsoft has stated that the final Hyper-V
code will ship within 180 days of the Windows
Server 2008 release to manufacturing (RTM).
The final Hyper-V code will be released via
Windows Update, so you won’t need to go
through additional downloads or installation
processes to get the RTM Hyper-V code.
Microsoft’s Hyper-V is an evolutionary
technology that can complement or go
beyond the virtualization approach of Virtual
Server 2005 R2. Hyper-V’s new microkernel,
hypervisor-based solution delivers better performance,
more features and functionality,
and improved scalability over Virtual Server
2005 R2. These advances level the playing field
with VMware’s market leader, ESX Server. The
fact that Server 2008 introduces Windowsnative
virtualization in the form of Hyper-V
is sure to drive the adoption of virtualization
in organizations of all sizes. And Hyper-V will
help drive the adoption of Server 2008. The
price and easy accessibility make moving to
Hyper-V virtualization especially attractive
for small and medium businesses (SMBs).
Plus ESX Server’s more difficult Linux-style
administration and higher price deters many
SMBs. For more information about Windows
Server Hyper-V, see the Learning Path that
accompanies this article.
"These advances level the playing field with VMware’s market leader, ESX Server" - I don't think so. Perhaps you should have a chat with your colleuge Paul Thurrott see Instant Doc #97838
http://www.windowsitpro.com/Article/ArticleID/97838/97838.html
The features you describe for Hyper-V come nowhere near to 'leveling the playing field' with VMWare. The feature set sounds very similar to Virtual Server 2005, only built into the OS and with the ability to run on a Windows Server Core installation.
Once again, an application platform running on a secondary OS platform that has proven its inability to manage memory, offer security, require patches too frequently, and run its "family" of applications does not mean much to the average client. Too little too late. Maybe MS can strongarm their vendors into forcing it down the throats of their clients. But, they never do that.
Readers, thanks for your comments. Michael Otey responds: "It’s understandable that readers would like ESX Server. It is an excellent product. hesssco: While Hyper-V is currently delivered with Windows Server 2008, it does not run on top of Windows Server. A standalone version of Hyper-V (no Windows OS at all) is expected to be released later this year. JustinC71: If you review the feature list in the "Feature for Feature" sidebar (link is at the top of the article), you will see the Hyper-V feature set is much more like ESX Server than Virtual Server 2005."
If you look at how paravirtulization works you will see that it is not the virtulization engine running on windows but windows runs as vm1 (also called domain 0 in Xen Virtulization) on Hyper-V. Hyper-V is a true hypervisor