This series will take you through building a Hyper-V cluster using Windows 2008 R2 Core and an iSCSI SAN.
Part 1: Configuring the iSCSI SAN
With the release of Windows 2008 R2, things in the Hyper-V world got a lot better. Unlike R1, a shared VM storage LUN is now supported, and the CLI functionalities on Core have improved greatly.
This article will walk you through the process of building up a highly available, and performance balanced Hyper-V server configuration.
The areas I will cover include:
- Windows 2008 Enterprise R2 — Core installation
- Managing and Configuring R2 Core
- Setup and configuration of two iSCSI LUNs on an MD3000i iSCSI SAN
- Installation and configuration of Windows clustering
- Configuring CSV on the cluster
- Configuring Hyper-V
- Using SCVMM and Live Motion
- Creating a highly available VM on the Hyper-V cluster
- Configuring Hardware Shadow Copy providers to support backups (MS DPM 2010)
What you will need to start:
- A minimum of two similar (ideally identical) servers
- Must use the same architecture of x64 CPUs and support Hyper-V (either AMD or Intel)
- A minimum 4 network ports on each server
- An iSCSI SAN (The Dell MD3000i is used in this walkthrough)
- Windows 2008 R2 installation media and licenses or Windows Hyper-V Server 2008 R2
Recommended optional components:
- A minimum of 3 GB ethernet switches that support jumbo frames
- Microsoft SCVMM 2008 R2
- Microsoft DPM 2010 RTM
Part 1: Habanero_Hyper-V_Part 1 [PDF | 5 Pages | 225 KB]
Installing Windows 2008 R2 Enterprise — Core
The next step will involve installing Windows 2008 R2 Enterprise Core Edition on your servers.
Alternatively you can use Windows Hyper-V Server 2008 R2 (free) instead, as either will support the ability to create a Hyper-V cluster, but this article is written with Core R2 in mind.
The important point to note is that all machines in the cluster must run the exact same version of Windows. In other words if you use 2008 R2 Core, all machines you intend on adding to the cluster must also be 2008 R2 core. You cannot mix full and core versions, nor Hyper-V servers and Core R2 servers.
In my environment, I am setting up 5 servers to become nodes in my Hyper-V cluster. Ideally all servers have identical hardware; however in my case (and for many companies) I am using what I have on hand. This will also demonstrate that limited variations are not an issue.
My cluster will use 3 Dell PE1955 blades, 1 Dell PE2950 2U server, and 1 Dell PE1950 1U server. Each sever is:
- using various 51xx series Xeon Processors (Dual and Quad core models)
- have a minimum of 2 local drives which are mirrored (Raid-1)
- have from 16GB to 32GB of RAM
- have a minimum 2 local Broadcom, and 2 Intel gigabit network ports
- have the latest BIOS, and virtualization enabled in the BIOS
Part 2: Habanero_Hyper-V_Part 2 [PDF | 9 Pages | 225 KB]
Mapping SAN shared virtual disks
Now that all the servers we plan on using for our Hyper-V cluster are built and configured, we need to grant access to the SAN, put all the hosts in a group, and share our two previously created virtual disks to the host group.
Part 3: Habanero_Hyper-V_Part 3 [PDF | 3 Pages | 188 KB]
Configuring MS Failover and Hyper-V clustering
At this stage you should now have the following setup where all servers destined to be nodes in your cluster have:
- Windows 2008 R2 Professional — Core
- At least one static IP on the LAN (two preferred)
- Are successfully attached to your SAN
- Have the Hyper-V role installed
- Have the failover clustering feature installed
- Have all the latest critical updates installed (this is important as there are several Hyper-V R2 related updates.
The SAN will have:
- All desired server nodes configured for access and are part of the host group you created
- Both virtual disks you created are shared to the created host group
- Each virtual disk has a separate RAID module set as preferred owner (optional)
- A management workstation / server from where you can run utilities and management tools
- A minimum Windows 2008 R2 Enterprise or Windows 7 Enterprise with Remote admininstration tools installed and the appropriate administrative features implemented
If licensing is not an issue, I prefer Windows 2008 over Windows 7 as I tend to run into fewer issues in overall systems management.
Part 4: Habanero_Hyper-V_Part 4 [PDF | 13 Pages | 762 KB]
Monitoring and tuning performance
Complex environments such as this there are numerous variables which affect performance. You will find that there are many different ways to monitor and tune the performance of your specific environments.
Here are some of the methods I use. The greatest influencing factors to a machine's performance are:
- Disk performance
- Network performance
- Processor performance
- Memory allocation
Keep in mind, what may be an important recource factor for one VM may be of little priority to another and each server's function will dictate what factors affect performance most. A good method of determining performance is to use application specific monitoring tools within the specific VMs, however, since there are far too many applications and variables in the real world, I will stick with the core basics of the subsystem itself, and leave application specific performance tuning to you!
Part 5: Habanero_Hyper-V_Part 5 [PDF | 7 Pages | 217 KB]