Windows Server 2008 High-Availability Clusters

It is no secret that  HPC Server 2008 will offer the option to make the head node of a HPC cluster highly available. This feature is not in beta 1, but it is being developed. It will exploit fail-over mechanisms provided by Server 2008 (enterprise edition or better), so I thought I'd mention some highlights in this area too. 

High-availability clusters are difficult to set up and troubleshoot on several platforms. With Windows Server 2003 we made progress in simplifying them, but limitations are still significant:

  • You need a configuration that is fully and specifically certified as a cluster in order to obtain support when things go wrong.
  • There is very limited support for geo-clusters, because of limitations in intra-cluster communications, no awareness of storage location and cluster quorum models. Also, geo-clusters require yet another level of certification.
  • Writing cluster-aware applications is not easy. It requires knowledge of cluster-specific APIs in order to produce “resources” usable by the cluster software. Scripting generic application fail-over is supported, but limited in functionality.
  • Troubleshooting by reading cluster logs requires very deep knowledge to interpret the cryptic messages therein.

These limitations may hamper adoption, especially in such environments - like HPC - where Windows has not been popular.

Windows Server 2008 introduces some significant improvements that address most of those issues:

1. Configuration validation
A test tool is built into the product. It will analyze nodes and shared storage (if any) before they join a cluster. It can also be used as a troubleshooting tool, as long as the storage you want to analyze is offline. The tool will point out any issues with the hardware and the configuration that may make them unsuitable for a fail-over cluster. It will finally replace the cluster HCL. So, if the hardware passes validation, then the configuration is officially supported.

2. Simplified resource setup
A wizard-driven process allows you to select which roles you want to cluster (e.g. file server, print server, virtual server), then sets up cluster resources and dependencies appropriately.

3. Improved SAN support
Windows server 2008 issues persistent reservations on shared storage to establish ownership of LUNs, it does not use bus resets any longer. Bus resets are disruptive on SANs where several systems on several platforms may share the same storage bus. This implies that the storage must support persistent reservations. Shared parallel SCSI is deprecated.

4. Changed quorum model
The administrator can choose the most appropriate quorum model for the configuration. Several are possible:

  • Majority node sets with witness disk: each node gets a vote and so does a witness disk. The cluster will survive the failure of any 1 vote (including the shared witness disk).
  • Majority of nodes: storage is replicated amongst them, but does not get a vote. The cluster is active until the majority of nodes is running.
  • Majority of nodes and file share witness: nodes get a vote and so does a file share on a separate server. This is ideal for geo-clusters, as the witness file share can be in a 3rd site. The geo-cluster will thus survive the loss of any one site.

5. Improved networking
The nodes need no longer be on the same private subnet and the timeout of the “ping” among nodes is configurable. This makes it possible to route private traffic between locations and removes any a-priori restrictions on distance. Obviously, practical restrictions remain and will depend on how much the clustered applications and their users will tolerate.

These are just a few of the innovations available in server 2008 clusters. You may want to try them out for yourself by building a simple cluster on a set of virtual machines. You don’t need shared storage any longer, but if you want to try a quorum with witness disk, you can set up one of those machines as an iscsi target.

Get started

If you want to try Windows Server 2008 clusters, a virtual lab is available on Technet Events.
There is also an excellent screencast by David Northey on https://edge.technet.com/Media/Windows-Server-2008-Failover-Clustering/
Official training will be launched shortly.