What are Multi Node Clusters?
Multi Node Clusters refers to clusters that have more than two server nodes and where highly available services can be run on any node in the cluster. They are ideally designed for mission critical services that can be separated into a number of independent services and run and scale beyond a single dedicated server.
The design of multi node clusters however become inherently more complex when it comes to the need for physical connections for shared storage and heartbeat mechanisms but this can be overcome if, for example, virtual storage can be deployed instead of physically attached storage, which is typical restricted to dual attachment capabilities to only two physical servers.
The key benefits for multi node cluster configurations is that application load can be spread more evenly across a wider number of cluster nodes and the overall cluster is more tolerant to individual node failures. With a two-node cluster for example, if one server fails, and until the failed server is repaired, there is a window of time where there is no longer a standby server available removing High Availability coverage and risking complete downtime in the event of further node failure. The multi node approach also brings redundancy economies of scale in that a single redundant standby server can be deployed to cover more than one master server.
What are Stretched Clusters?
To significantly reduce failure potential, it may be desirable, where possible, that individual cluster nodes are physically and even geographically located apart and share as few resources as possible in order to alleviate single points of failure. For example, server nodes located in different racks or even separate data centres and buildings can significantly reduce the number of single points of failure and thus potential for failure and service downtime. This may not always be possible due to physical limitations such as maximum cable length for shared storage, bandwidth limitations or availability of equipment rack space.
The limitations for geographically stretched clusters have typically been connectivity to shared physical storage and underlying heartbeat mechanisms, network configuration, data replication latency and bandwidth cost over distance. However, advances with virtualised networking, more affordable bandwidth technology and usage of network attached storage continue to make this a more viable option removing single points of failure such as a data centre, a building or even a city.
How to minimise system Maintenance downtime with High Availability
An essential benefit of deploying High Availability Clusters is to significantly reduce planned downtime as well as unplanned recovery from failure. In the event that a system requires maintenance, for example such as replacing hardware components or an Operating System patch or upgrade, the target system can simply be detached from the cluster and independently worked on whilst mission critical services continue to run on other cluster nodes.
Once work is complete, the upgraded node can be returned to the cluster and highly available services redistributed. Further cluster nodes can then be upgraded in the same way with a minimum of overall system and service downtime.
What are the benefits of using High Availability Clusters
High Availability Clusters provide a framework for higher levels of mission critical service availability than dedicated standalone servers even when configured with high levels of hardware redundancy alone. This is true for both unplanned recovery from failure, and planned maintenance windows.
High Availability Clusters remove many key single points of failure and thus provide a greater level of potential mission critical service uptime. Further single points of failure can be eradicated with the deployment of stretched clusters.