Data Replication in High Availability Clusters
Nelson Yount
The ultimate goal of high availability (HA) clustering is to improve the level
of availability of applications and other services to their end-users. HA clusters
generally consist of two or more computer systems in close physical proximity.
The HA clustering software is designed to monitor the status of all of the systems
in the cluster, and upon the failure of any of those systems, to restart on
one or more of the remaining systems any applications that were running on the
failed system. The clustering software will typically also move the network
address associated with such an application to the backup system, allowing clients
to easily continue to access the application.
Cluster Storage Models
For this application migration to work, it is necessary that the application
data be accessible both to the computer system on which the application was
running originally (the primary system) and to the system to which the application
is moved (the backup system). This is usually accomplished with some form of
shared storage, typically either an external storage array (to which both systems
are connected by a common SCSI bus or a Fibre Channel network) or a network
attached storage (NAS) device. By placing the application data on a shared external
storage device, an application has access to its data regardless of whether
it is running on the primary or backup system.
Cluster Configurations
The simplest HA cluster configuration consists of two systems, with one system
actively running one or more applications, and the second system acting purely
as a backup for the first. This configuration is known as a 2-node active/passive
cluster. A more common and more useful configuration is the 2-node active/active
cluster (see  |