a cluster

introduction

A cluster is a collection of computers or servers that work together. No one computer can be as powerful as a cluster of computers.

what it is

You can do HA by running a service on a cluster. A cluster is a collection of servers that work together to provide one service. A person on a budget buys several computers, runs an identical server on each one and makes a cluster from them. The statistical chance of several servers failing at the same time is remote, so the cluster is very reliable. There are several clusters in the LIC, such as the web servers, LDAP servers and database servers. If any of the shared infrastructure servers break there is no noticeable service reduction.

Clusters introduce complications of their own, such as how to share one data store between several computers, what degradation of service happens if part of the cluster fails and how to get the most computing power for your money. There are three types of cluster: the original HA and two more recent inventions, load balancing and computing.

The original cluster used for HA, named, confusingly, an HA cluster, works with entire computers rather than individual services. It refers to twin computers arranged in an active/standby combination. A working computer (the active computer) is paired with a “hot standby” computer. A standby is a computer that takes over when the active one breaks. All the applications and servers that have stopped running on the broken computer are started on the standby computer.

The hot standby is always kept running and synchronised with the working host. A cold standby is a computer that needs some configuration before it can take over, such as being switched on. This kind of cluster relies on a network signal called a heartbeat. If one computer cannot hear the heartbeat of the other it assumes it has died. Aah, shame. Some of the clusters in the LIC such as the firewalls are pairs of computers, with one active and one a hot standby.

load balanced cluster
server
server
server
load balancer
load balanced cluster

A load balancing cluster takes a bunch of computers running identical servers and sticks a load balancer in front of them. A load balancer receives all the requests coming in and redirects each request to one of the servers. A cheap'n'easy load balancer is a DNS name with a few IP addresses. The premium price version is a network appliance that handles a billion megaquads of packet uberthrust per second per second.

A computing cluster turns lots of cheap computers into one big throbbing powerful computer. This is a variation on the "one big expensive HA computer" idea explained above.

what it isn't

A server farm. This is an older term with a little looser meaning. It covers any group of computers that do one type of work. No-one knows the difference so feel free to use these terms interchangeably.

where it is

Just about everything in the LIC is a twin, a triplet or something more disturbing to an expectant mother. The diagram below shows clusters. Some of the hosts in the unlabeled ovals towards the bottom are duplicated but the failover is not automated: they don't use any fancy applications such as load balancers or heartbeat. Others use DNS to do load balancing.

clusters the LIC
Internet
enterprise network
LIC
HA cluster
HA cluster
HA cluster
HA cluster
HA cluster
HA cluster
load balanced cluster
load balanced cluster
load balanced cluster
load balanced cluster

history