Wow! If I had to pick one word to describe my reaction to the new and improved Microsoft Hyper-V features inWindows Server 2012 (formerly code-named Windows Server 8), then wow would be it. A little smile crept onto my face when I saw all the features that will put Hyper-V on equal footing -- or ahead of -- the competition, from a pure machine virtualization-platform feature comparison.

Microsoft has been clear in its message that Windows Server 8 is the OS and virtualization platform, for both private environments and the public cloud. Hyper-V provides functionality that allows Windows Server 8 to be a true cloud solution. This typically means enough scalability, flexibility, and security or isolation capabilities to handle all the possible scenarios in a cloud solution that's shared by different business units or even different organizations.

A Bit of Background

Hyper-V was added soon after the release of Windows Server 2008. The original solution offered solid performance, but mobility was limited to quick migration, which required saving virtual machine (VM) memory and state to disk. Because there was no true shared storage, the disk was dismounted from the current host and mounted on the new host; memory and state were then loaded from disk, and the new VM was started. Clients were disconnected during this quick migration -- not a popular action. Server 2008 Hyper-V offered no support for NIC teaming.

Server 2008 R2 added live migration, giving a zero-downtime planned-migration capability and allowing all nodes in a cluster to concurrently read and write to a shared NTFS volume (using the Cluster Shared Volumes feature). Server 2008 R2 Hyper-V supports NIC teaming, although implementations vary by vendor. Support for more-advanced networking features, such as jumbo frames and virtual machine queue (VMQ), was also added. Server 2008 R2 Service Pack 1 (SP1) added Dynamic Memory for powerful memory-optimization capabilities and Microsoft RemoteFX for server-side graphics rendering in Microsoft Virtual Desktop Infrastructure (VDI) implementations. However, VMs were still limited to four virtual CPUs (vCPUs), 64GB of memory, and 16 nodes per cluster.

For most organizations, Server 2008 R2 SP1 and Microsoft System Center Virtual Machine Manager (SCVMM) meet the requirements for machine virtualization and provide a great experience. But some companies still want to see improvements in certain areas. As I speak to clients, these wished-for capabilities are the ones I hear about the most:

  • scalability of VMs (or more than four vCPUs in a VM)
  • ability to migrate VM storage without downtime
  • ability to merge snapshots while the VM is online
  • more nodes in a cluster
  • ability to use live migration to migrate more than one VM at a time and to migrate between unclustered nodes
  • fully supported, native NIC teaming solution that can include NICs from different vendors
  • network virtualization and isolation
  • native Hyper-V cluster-patching solution
  • ability to use non-local and SAN options, such as file shares, for VM storage
  • larger Microsoft Virtual Hard Disk (VHD) support
  • storage deduplication and VHDs larger than 2TB

Windows Server 8 Hyper-V promises to deliver all this and a lot more, with features such as 32 vCPUs per VM, 512GB of memory per VM, 63 nodes in a cluster, 16TB VHDX format, and a native NIC teaming solution that can be managed through the new Metro-style Server Manager and Windows PowerShell. In future articles, I'll dive into these improvements. For this article, I want to look into the high-availability and migration improvements in Hyper-V. Quite frankly, they're awesome.

Server Message Block Share Support

Before Windows Server 8, a zero-downtime migration solution required storage between the two nodes in the VM migration. Both nodes needed to see the storage so that they could access the VM configuration and storage. The only type of storage that multiple nodes could see was external, such as a SAN to which all the nodes in a cluster connected (through a medium such as iSCSI or Fibre Channel) and that was made concurrently accessible through Cluster Shared Volumes.

This external storage requirement can be a major issue for organizations that don't want to invest in that type of infrastructure or that prefer to use a NAS solution. For such organizations, Windows 8 introduces Server Message Block (SMB) 2.2, which features key new capabilities that allow VMs to be stored on an SMB file share, with confidence in the integrity of and connectivity to VM assets.

To use a file share, the file server and Hyper-V servers need to run Windows Server 8. VMs can then be stored on a file share for standalone Hyper-V servers and Hyper-V servers that are part of a highly available failover cluster, as Figure 1 shows. The use of an SMB file share for VMs can be compared to other virtualization solutions that use NFS for file-level remote storage. For great flexibility, multiple file shares can be used within a host or failover cluster.

Figure 1: Using a Windows 8 SMB 2.2 file share
Figure 1: Using a Windows 8 SMB 2.2 file share 

Other enhancements to SMB in Windows Server 8, such as continuously available file shares, a Microsoft Volume Shadow Copy Service (VSS) provider for remote file shares, and multichannel connectivity for great bandwidth and failover, make the use of SMB for VM storage a first-class solution.