Windows Server 2012 R2 – Shared VHDX

So as noted previously Windows Server 2012 R2 has been announced and another feature that has caught my attention is Shared VHDX.

This AWESOME new feature allows you to share a VHDX file amongst Hyper-V guests. Why AWESOME? We use guest-clustering inside our Hyper-V Failover Cluster for services like File, SQL, System Center Virtual Machine Manger (SCVMM), Print, etc.

Take our 2 node file server cluster as an example. Each guest OS has 4 vNICs:

  1. Management: This is used for clients to connect to the server and all non-cluster network traffic
  2. HeartBeat: This is used for the cluster heartbeat (could use the Managment vNIC for this but we have a dedicated heartbeat VLAN)
  3. iSCSI-A: This connects the operating system (OS) to our iSCSI storage network (SAN) A controller (the SAN has dual controllers) via a Hyper-V virtual switch
  4. iSCSI-B: This connects the OS to the SAN B controller via a Hyper-V virtual switch

That’s the standard setup for all our clustered OSs.

Because we’re bypassing the Cluster Shared Volumes (CSVs) on the Hyper-V server and going straight to the SAN we have to provision at least one LUN mapped directly to the guest OSs.

In the File Server example we have three LUNs mapped to the two guest OSs:

  1. Quorum LUN: A small 1 GB LUN for Quorum management (only needed as we have an even number of nodes or if you’ve got dynamic Quorum enabled – post for another day)
  2. General File Share Storage: this is where the core files that we store in a general file share are stored. In addition it stores the user’s redirected folders
  3. Scale out file server storage: this is used by our System Center SQL server for database storage

So what am I going to need with Shared VHDX?

2 vNICs and no direct mapped LUNS.

vNICs

  1. Management: This is used for clients to connect to the server and all non-cluster network traffic
  2. HeartBeat: This is used to the cluster heartbeat (could use the Managment vNIC for this but we have a dedicated heartbeat VLAN)

The LUNs can be converted to VHDX files through the Hyper-V Management Console. These VHDX files can then be attached directly the guest VMs.

So where do you put the Shared VHDX?

It’ll need to sit on your CSV. Bear in mind the updated Windows Server 2012 R2 Storage Spaces as it can move your VHDX file content around a tiered storage space for you to move your storage space to get huge IOPS!

This new feature will enable me to manage my SAN much easier, why? I won’t need to overcommit storage to guest clusters as I can manage the VHDX files on the fly.

Oh yeah another new feature – change VHDX file sizes online. No more having to shutdown VMs to change the VHDX file size, you can grow, and even shrink, the VHDX files whilst the servers are on line!

I can see this feature coming to Windows Azure IaaS at somepoint in the not too distant future to allow you to guest cluster Windows Azure Virtual Machines!

So now all I need to do is wait for Windows Server 2012 R2 😦

UPDATE:

As the disk is presented the guest VM as a shared SAS disk it is possible to use this with older guest operating systems, for example Windows Server 2008/R2. The VM doesn’t know what is underneath – it’s the Hyper-V server that does the work on that one.

Advertisements

Posted on 6 June, 2013, in Uncategorized. Bookmark the permalink. 2 Comments.

Anything to add? Let me know

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: