19 March 2013 - This post has been changed to reflect the best way to configure a cluster in a box
In my last post I used two clusters; one to host a high availability (HA) file server where I stored a virtual machine and another cluster to run the virtual machine. The file server cluster was built from two virtual machines (VMs) and is commonly known as a guest cluster. However to enable HA for VM I needed to cluster two physical server (aka my Dell Precision Laptops).
What I could have done was to put both the File Server role and the VM role into the same cluster (which would still have to be built from physical servers), However that configuration won’t work and isn’t supported and if you try it you’ll most likely run into Access Denied errors. For more on this look at this post by Jose Barreto, on the File Server engineering team.
I mention all this because there is a new breed of hardware appliances coming to market known as Clusters in a box; So Simply take two Server motherboards each with CPU memory etc. stick them in a 2/4 AU box which also contains multiple power supplies network cards as well as a bunch of SAS disks again with multiple controllers so everything is redundant. A good example is this from Fujitsu..
So how could use this new type appliance to create highly available virtual machines (HAVMs) based on Windows Server 2012 and Hyper-V?
You would create cluster shared volumes over the built in storage via storage spaces and so each node would have access to C:\ClusterStorage\Volume[x] and then create HAVMs on top of that. I haven’t had the chance to create a screencast for that as I need a cluster in a box in order to do that (I’ll re-edit this post when I do) so in the meantime I would refer you to Jose’s other posts on Hyper-V over SMB3
In the meantime if you are experimenting with Windows Server 2012 you can get the Evaluation edition here
But you may be wondering why you would bother as this seems to be needlessly adding another layer of complexity and another potential source of problems rather than just using a SAN. The answer is that a HA File Server doesn’t have to be built on top of a SAN it could be built on any disks you have including JBOD (Just A Bunch of Disks and SAS (Shared Serially attached SCSI) disks. Hardware vendors are bringing out these cluster in a box appliances ; two servers SAS storage multiple controllers and network interfaces and a collapsed cluster like this is an ideal way to set these up to run lots of VMs in a small business that wants to run its own infrastructure.
The two roles (the VMs and the storage) can’t run on the same node (as per this post by Jose Barreto, a collegue of mine on the File Server team), but if you are doing maintenance on one node in a two node cluster then they will have to be.
I used a small disk as a quorum disk which is needed to decide which node “owns” the cluster after a node fails the answer being the one that has ownership of the quorum disk.
Nodes in a Windows Server Clusters need to members of the same domain. Does this mean you have to have a physical domain controller outside the cluster in case of a cluster failure? No clusters in Windows Server 2012 will start without one but remember they need to find each other and so you will need to use things like fixed IP addresses and an etc/hosts file in each node so this can happen before your DNS and DHCP infrastructure comes up. You could also run a DC as a non HA VM on each node of the cluster and these only need modest resources (512Mb RAM 10GB disk etc.)
While I used the evaluation edition of Windows Server 2012, I could have built all of this using the free Hyper-V Server 2012 and while you would still need to license any operating systems in the VMs with this, you can build collapsed clusters/cluster in a box solutions for production with this edition.