Encyclopedia  |   World Factbook  |   World Flags  |   Reference Tables  |   List of Lists     
   Academic Disciplines  |   Historical Timeline  |   Themed Timelines  |   Biographies  |   How-Tos     
Sponsor by The Tattoo Collection
Two-node clusters
Main Page | See live article | Alphabetical index

Two-node clusters

Table of contents
1 Introduction and some definitions
2 Hardware components
3 Classification: by Role Symmetry
4 Classification: by Service Aggregation Level

Introduction and some definitions

A two-node cluster is the minimal Computer cluster that can be built. Should one node fail (for a hardware or software problem), the other must acquire the resources being previously managed by the failed node, in order to re-enable access to these resources: this process is known as failover.

There are some kinds of resources, notably:

Typical services provided by a Computer cluster are built by a combination of each of the previously defined resources.

So, you can have an Oracle database service, composed by:

Hardware components

Required ones

Interconnection tipologies

Optional but very recommended ones

Classification: by Role Symmetry

There are two kinds of two-node clusters, from this perspective:

Active/Passive

That is, one node owns the services, the other one remains inoperative.

Should the primary node fail, the secondary or backup node takes the resources and reactivates the services, while the ex-primary remains in turn inoperative.

Active/Active

There is no concept of a primary or backup node: both nodes provide some service, should one of these nodes fail, the other must take care also of the failed node's services.

Classification: by Service Aggregation Level

Two kinds of Computer cluster, again:

Service based

When every service is independent from each other, provided by the cluster: say, you can run an web server and a mail server on the cluster, and each one can be independently managed, switched from one node to the other, without affecting the functionality of other services.

One Open Source example of this kind of cluster is Kymberlite.

Logical-host based

In a more complex world, you can end up with some dependencies from one service to another!

Say, you run a mail server that receives e-mail for the local users, thus storing them on his storage resource, but, how can the users read the e-mails from a remote side?

So, you must implement some kind of mail retrieving server, like an IMAP server.

Both of these services need access to the same storage resource, the first for writing the e-mail messages that arrived from the Internet, the second to read them/move them/delete them.

So, you cannot simply failover the mail server from one node to the other, because the mail retrieving server needs the data provided by the first service!!!

These two services has to be grouped together, forming a so-called logical host... to be more precise, this logical host will be built by 3 resources:

So, should you fail over this logical host, you must:

One Open Source example of this kind of cluster is HA-Linux, one commercial example (limited to Sun Microsystems Solaris machines) is called SunCluster (see Sun Cluster Documentation for more informations).