Candidates for Virtualization
When
you are considering server deployment options, it will be advantageous
in some situations to deploy a virtualized server rather than the real
thing. One factor is cost: a Windows Server 2008 Enterprise license
includes the licenses for four hosted virtual instances. Although you
need to consider many other costs when making a comparison, from a
licensing perspective, one Windows Server 2008 Enterprise license will
cost less than five standard licenses. Also remember that server-grade
hardware will always cost significantly more than a Windows Server 2008
Enterprise license, especially if your organization has a licensing
agreement with Microsoft.
Although each situation
will be different, in certain archetypical situations, you would plan a
virtualized server rather than a traditional installation, including the
following:
You want to use WDS
at a branch office location for a rollout that will last several days,
but you do not have the resources to deploy extra hardware to that
location. In this case, you could virtualize a WDS server and turn on
the VM only when it was needed. If more operating systems need to be
rolled out later, the VM could be turned on.
You
have two applications hosted on the same server that conflict with each
other. Because custom applications do not always work together well,
sometimes you need to place each application in its own VM. Applications
hosted on separate computers are unlikely to conflict with each other!
Another solution is to virtualize the application itself. Virtualizing
applications is covered later in this lesson.
You
are working with developers who need to test an application. If you
have worked as a systems administrator in an environment with
developers, you know that some projects are not stable until they are
nearly complete, and, until that time, they have a nasty habit of
crashing the server. Giving developers their own VM to work with allows
them to crash a server as often as they like without your worrying about
the impact on anyone outside the development group.
Some server
deployments make poor candidates for virtualization. Servers that have
high I/O requirements or high CPU requirements make poor candidates. A
server that monopolizes CPU, memory, and disk resources on a single
computer will require the same level of resources when virtualized, and a
traditional server installation will provide better performance than
running that same server virtualized on the same hardware. In general,
you are reasonably safe in deciding to deploy virtual servers if the
server does not have a large performance footprint. When a server is
expected to have a significant performance footprint, you will need to
develop further metrics to decide whether virtualization offers any
advantage.
Note: Number of licenses
Remember that Windows
Server 2008 Datacenter (x64) has unlimited licenses for virtual hosts
and that Windows Server 2008 Enterprise (x64) has only four.
Planning for Server Consolidation
When
you plan the deployment of Windows Server 2008 at a particular site
that has an existing Windows server infrastructure, you will be making
an assessment about which of the existing servers can be virtualized,
which need to be migrated, and which need to be upgraded. If you have
deployed System Center Operations Manager in your environment, you can
use the product to generate a Virtualization Candidates report, which
will give you a list of servers in your environment that make excellent
candidates for virtualization given their current usage levels.
When you have
determined the need to virtualize a server, the next step is to move
that server from its existing hardware to a virtualized partition
running under Windows Server 2008. You can use two tools to virtualize a
server installed on traditional hardware: the Virtual Server Migration
Toolkit (VSMT) and SCVMM. Both tools are compatible not only with
Hyper-V but also with Virtual Server 2005 R2.
Virtual Server Migration Toolkit
VSMT is the best tool to
use when you have a small number of servers that need to be virtualized.
The tool is command line–based and uses Extensible Markup Language
(XML) files to store configuration data that is used during the
migration process. You cannot use the VSMT tool to manage virtualized
servers—it is purely a tool for migrating existing servers to a
virtualized environment.
Unlike the SCVMM
2007 migration tools, it is not possible to use the VSMT to perform
migrations without downtime. The VSMT was primarily designed to migrate
servers to the Virtual Server 2005 platform. It is because Virtual
Server 2005 virtualized operating systems are compatible with Hyper-V
that you can use this tool to perform migrations to Windows Server 2008
virtual hosts.
System Center Virtual Machine Manager 2007
You should plan to use
SCVMM 2007 when you have a large number of VMs to manage in a single
location. SCVMM requires a significant infrastructure investment and is
primarily designed to manage enterprise-sized virtual server deployments
rather than to be something that you would plan to use to migrate a
couple of branch office servers into a virtual environment. If you are
planning to virtualize a large number of servers, you will find the
extra functionality of SCVMM 2007 manager valuable. Unlike VSMT, SCVMM
is fully integrated with Windows PowerShell, giving you more flexibility in migrating servers from physical to virtualized environments.
You should note
that deployment of SCVMM requires a connection to a SQL Server database.
The Express Edition of SQL Server 2005 SP2 is included with the SCVMM
2007 installation files, or you can use an existing SQL Server 2005 SP2
or SQL Server 2008 instance. SCVMM 2007 uses this database to store VM
configuration information.
In addition to virtualizing traditional server installations, you can use SCVMM to do the following:
Monitor all of the virtualized servers in your environment. A single SCVMM server can be used to manage up to 8,000 VMs.
Monitor
all Hyper-V hosts in your environment. A single SCVMM server can be
used to manage up to 400 Hyper-V or Virtual Server 2005 R2 host
computers.
When connected to a Fibre Channel SAN environment, move virtualized servers from one Hyper-V host to another.
Move virtualized servers to and from libraries.
Delegate permissions so that users with nonadministrative privileges are able to create and manage their own VMs.
Migrate servers from physical to virtual without any downtime.
SCVMM 2007
includes capacity planning technology that allows you to assign VMs to
the virtual hosts in your environment that have the appropriate
available resources to support them based on VM performance data. For
example, if you have 10 Windows Server 2008 computers that each host
multiple VMs, the capacity planning technology in SCVMM 2007 can make
recommendations about where each VM should be deployed based on
performance data observations.
SCVMM 2007 increases
your operating system virtualization planning options because it
includes tools that allow you to make the most efficient use of your VM
and virtual host infrastructure. As Figure 4
shows, the capacity planning tools available in SCVMM 2007 can be
heavily customized, allowing administrators to prioritize the importance
of specific resources. For example, you can configure the capacity
planning tools to prioritize servers that have available memory over
those that have lower CPU utilization.
Components of a System Center Virtual Machine Manager 2007 Deployment
An
SCVMM 2007 deployment consists of several components that can all be
installed on the one server or that can be installed on several servers
throughout the enterprise. SCVMM 2007 components include the following:
SCVMM server
This is the server on which the SCVMM software is installed. You should
install this component first. Except under unusual circumstances, there
is usually only one SCVMM server in an environment, so you should plan
redundancy using failover clustering rather than the deployment of
multiple servers. Although it is possible to deploy multiple SCVMM
servers in a forest, each SCVMM server requires a separate SCVMM
database, although these databases can be hosted on the same SQL Server
instance. An SCVMM server cannot be installed in a forest that has a
disjointed DNS namespace (multiple separate domain trees within the same
forest).
SCVMM agent
This component is installed on a VM host running Virtual Server 2005 R2
or Hyper-V and SCVMM library servers. To be automatically managed, all
VM hosts must be members of the same forest as the SCVMM server. It is
possible to install the SCVMM agent on a computer that is not a member
of the same forest and configure a connection manually to the SCVMM
server. This is usually done when a virtual host is deployed on a
perimeter network. A single SCVMM server can manage a maximum of 400
servers running Hyper-V or Virtual Server 2005 R2 SP1, or both. A
Hyper-V or Virtual Server 2005 R2 SP1 host can be managed only by a
single SCVMM server.
SCVMM database
The SCVMM database can be hosted either on SQL Server 2005 or SQL
Server 2008. If no SQL Server instance is specified, the setup routine
installs SQL Server Express on the local SCVMM server. The drawback of
using SQL Server Express is that the advanced reporting functionality
will be unavailable. In addition to using SQL Server 2005 or SQL Server
2008, if you plan to use the advanced reporting functionality of the
product, you must also deploy System Center Operations Manager 2007 in
the same forest. If the SCVMM database is remote from the SCVMM server,
you should secure the connection between the two servers using Secure
Sockets Layer (SSL).
SCVMM Administrator console
Like all management consoles, the SCVMM administrator console can be
installed on an administrator workstation to manage SCVMM remotely or
used to directly manage the server on which SCVMM components are
installed.
SCVMM self-service portal
This portal allows users who are not SCVMM administrators to manage VMs
to which they have been delegated permissions. The portal is Web-based
and should be installed on a server that has IIS 6.0 or later and is a
member of the same forest as the SCVMM server.
SCVMM library server
The library is a catalog of resources that are used to create VMs using
SCVMM. These resources include ISO images, scripts, hardware profiles,
VM templates, virtual hard disks, and stored VMs. A VM template includes
a guest operating system profile, a hardware profile, and virtual hard
disks. These resources are hosted on a set of shares that are managed
through the SCVMM console. The library can be stored across multiple
physical servers in an enterprise deployment. If the SCVMM library is
not deployed on the VM host server, the network connection between a VM
host server and the library it uses should be as fast as possible. A
default library share called VMMLibrary is created on the SCVMM server
during the installation process unless an administrator determines
otherwise. An SCVMM Library server can only be managed by one SCVMM
server. You cannot directly share resources between different SCVMM
environments.
SCVMM 2007 in the Branch Office
SCVMM
2007 is usually deployed in a datacenter environment, with all
components, including VM hosts, located at the same site. If SCVMM 2007
is going to be used to create, run, and manage VMs at branch and
satellite offices, you should deploy a VMM library server and a VM host
at the branch office site. This will allow you to deploy new VMs
directly from the library to the VM hosts without having to transfer
gigabytes of data across the organizational wide area network (WAN)
link.
In branch office
deployments, the SCVMM library is usually deployed on the same server
that functions as the VM host. This allows for rapid deployments because
the files used to build new VMs do not need to be copied across the
network. The drawback of this type of deployment is that it requires a
significant amount of hard disk drive space to store both the library
data and the deployed VMs.