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
http://edge.technet.com/Media/Windows-Server-2008-Failover-Clustering/
Official training will be launched shortly.