20 Days of Server Virtualization: Your Hyper-V Hosts and Clustering an Availability Story (Part 13 of 20)
One of the features in Windows Server 2012 that got greatly enhanced is the Failover Clustering. See the bottom of this post for a list of all the new and improved features. In today’s part we are going to take a look at how Hyper-V takes advantages of some of these enhancements and how you can use Failover Clustering and Hyper-V to truly beef up your virtualization environment. With Hyper-V there are two ways you can cluster your environment. You can cluster the Hyper-v hosts systems or you can cluster the hyper-v guest systems. Specifically in today’s post we are going to look at Hyper-V hosts and how they can be clustered. Tomorrow Keith is going to take a look at how the guest (virtual servers) take advantage of clustering.
When you begin to think about clustering your Hyper-V servers at a basic level, think of Hyper-V as another application that supports being clustered. With Hyper-V being the program that is clustered and the all the other files (vhd’s, snapshots, settings) as just a part of the story. In this regard clustering hyper-v works in a similar fashion to SQL or SharePoint, and the process to cluster them is generally the same. When you cluster the hosts, you get a lot of benefits:
- Avoids a single point of failure when consolidating
- Survive Host Crashes
- VMs restarted on another node
- Restart VM Crashes
- VM OS restarted on same node
- Recover VM Hangs
- VM OS restarted on same node
- Zero Downtime Maintenance & Patching
- Live migrate VMs to other hosts
- Mobility & Load Distribution
- Live migrate VMs to different servers to load balance
With our Live Migration support in Hyper-V we do not limit the amount of concurrent live migrations. This is important especially if you have large clustered environments and with the scalability you can up to 8,000 virtual machines per cluster. Aidan Finn did a great little test on concurrent live migrations: Windows Server 2012 Hyper-V Concurrent Live Migration & NIC Teaming Speed Comparisons. One last note about failover and clustering, while this post focusses on using Windows Server 2012, failover clustering is also supported in our FREE Microsoft Hyper-V Server 2012. You can learn more about Hyper-V server here: 31 Days of Our Favorite Things: Get Happy over the Free Hyper-V Server 2012 (Part 9 of 31)
So where do you begin? Before you can begin the installation you will need to verify some pre-requisites for your servers. Here is some of the pre-requisites (for a full list take a look here:Failover Clustering Hardware Requirements and Storage Options
- Servers: We recommend that you use a set of matching computers that contain the same or similar components. This is especially important when you start to migrate virtual machines from server to another. One note if your servers are different make sure you check the processor compatibility in your virtual machine settings. Your virtual machine will need to be turned off to configure this setting.
- Network adapters and cable (for network communication): For these environments and if your going to do a lot of migrations, you will want to with 10GbE. This is the way to go and also in the network infrastructure that connects your cluster nodes, avoid having single points of failure.
- Device controllers or appropriate adapters for the storage: Serial Attached SCSI or Fibre Channel or iSCSI. Remember Windows Server 2012 has built in iSCSI services and can be a cost effective storage solution.
- Storage: You must use shared storage that is compatible with Windows Server 2012. In Windows Server 2012 you can use shared storage that is attached, and you can also use SMB 3.0 file shares as shared storage for Hyper-V servers that are configured in a failover cluster. For more information on this take a look at this article: 31 Days of Our Favorite Things- SMB 3.0 the Glue in Windows Server 2012.
Taking time to verify you meet these requirements will save you time through validation of your cluster. After you have verified the pre-requisites you can then install Hyper-V and Failover Clustering on all servers in your cluster. The installation of these services is standard and straight forward. Just one note, remember Hyper-V is located in roles and Failover Clustering is locating in features when you go through the Add Roles and Features wizard.
After you have the roles installed, now it is time to validate your configuration. Before you create your cluster validating the configuration is necessary. This is vital step to not only to make sure you have dotted all your I’s crossed your T’s but also by validating your configuration, it will be officially supported by Microsoft. In addition to validating your configuration you will also want to make sure you following this guidelines (for more info click here: Validate Hardware for a Windows Server 2012 Failover Cluster) :
For Microsoft Customer Service and Support to officially support a failover cluster in Windows Server 2012, the cluster solution must meet the following criteria:
- All hardware and software components must meet the qualifications for the appropriate logo. For Windows Server 2012, this is the “Certified for Windows Server 2012” logo. For more information, see Logo Program Requirements and Policies on the Microsoft website. The following are descriptions of the Windows Server 2012 logos. -
Certified for Windows Server 2012 Devices Designed for line-of-business and mission-critical applications, the Certified for Windows Server 2012 logo demonstrates that your solution meets Microsoft’s highest technical bar for Windows fundamentals and platform compatibility. -
Certified Windows Server 2012 Systems Designed for cloud and infrastructure workloads, as well as business critical applications, the Microsoft Certified for Windows Server 2012 logo demonstrates that a server system meets Microsoft’s highest technical bar for security, reliability, and manageability, and with any required hardware components, can support all the roles, features, and interfaces that are supported by Windows Server 2012.
- The fully configured system (servers, network, and storage) must pass all the required tests in the Validate a Configuration Wizard, which you can run from Failover Cluster Manager. Alternatively, you can run the validation tests using the Test-Cluster Windows PowerShell cmdlet.
Microsoft support policies are also described at the Microsoft Support website.
to validate your configuration you can use PowerShell (Test-Cluster) or Server Manager. In the following steps I take you through with Server Manager.
1. In Server Manager open Failover Cluster Manager from the tools menu
2. In the management pane click Validate Configuration
3. On the Welcome screen click Next
4. In the Select Servers or a Cluster enter the names of the servers in your cluster
5. After you select your servers click Next
6. On the Testing Options screen you have the ability to run all the tests or select certain tests. The first time you run the validation wizard I recommend you do all the tests. If you have any failed tests you can run just those tests over through this wizard. After you make your selection click Next.
7. On the confirmation screen verify your selections and click Next to begin the validation process (this will take a some time to complete)
8. On the summary screen you will get the results of the test. If your test ran successfully you are ready to create your cluster, if you have any failed tests make note of them and take steps to correct the issues. You may also see warning notes, make note of those as well. You will also notice a check box: Create the cluster now using the validated nodes… If your ready to configure your cluster , check the box and click Finish (which I did in the post).
9. On the welcome screen click Next
10. On the Access Point type in the name for you cluster and the IP address it will use and click Next
11. On the confirmation screen verify the choices and you can also add storage for your cluster, when your ready click Next.
12. Review the summary screen and click Finish.
Now you will need to add the storage for your CSV. Before you can add the storage Once
In Failover Cluster Manager, in the console tree, expand the name of the cluster, and then expand Storage.
Right-click Disks, and then click Add Disk. A list appears showing the disks that can be added for use in a failover cluster.
Select the disk or disks you want to add, and then click OK.
The disks are now assigned to the Available Storage group.
You can learn more about the CSV here: Use CSVs in a Failover Cluster. However a big part of what you will do is getting your storage connected to the servers and the cluster, and the process here can vary greatly based on your type of storage.
Now that you have created a cluster now what? Simply place your Virtual Machines on the CSV and your all set, and really this is a simple as putting the UNC path name of the cluster in the location for your files. One of the great things in Windows Server 2012 is that Hyper-V now supports storage on a shared location, and is really what makes this process sing. Take a look here for more information: 31 Days of Our Favorite Things- SMB 3.0 the Glue in Windows Server 2012.
In my post I wanted to get you pointed in the right direction to start your host configurations for clustering. I did not cover all the individual steps or testing after you have created the cluster, which is a must. So take a look at this great step by step guide: Deploy a Highly Available Virtual Machine
Also my teammate Keith Mayer did a couple of great posts working with clustering in PowerShell:
Here is a brief list covering most of the new features of clustering. The full article is located here: What's New in Failover Clustering
New or improved
Scales to 64 nodes and 8,000 virtual machines per cluster
Provides GUI tools to streamline management and operation of large-scale clusters
Helps allocate cluster resources to clustered virtual machines and other clustered roles
Improves CSV setup and enhances security, performance, and file system availability for additional cluster workloads
Provides CSV storage and integrates with File Services features to support scalable, continuously available application storage
Applies software updates across the cluster nodes while maintaining availability
Extends clustered virtual machine monitoring to the applications that run in the clustered virtual machines
Validates Hyper-V and CSV functionality and performs faster
Increases cluster resiliency and supports a wider range of deployments
Simplifies quorum setup and increases the availability of the cluster in failure scenarios
Allows migration of virtual machines from Windows Server 2008 R2, migration to CSVs, and reuse of existing storage
Integrates Failover Clustering with additional server functionality
Allows scripting of Failover Clustering functionality that was introduced in Windows Server 2012
We hope you enjoy the series, and if you have any suggestions let us know. If you missed any part of the series you can find them here: 20 Days of Server Virtualization