HighAvailability is achieving near-perfect uptime to end users through the use of multiple servers that take over each others jobs in the event of failure.

The most common method is for a primary server to send a heartbeat to the backup. If the backup server stops receiving the heartbeat it will take over the primary servers IP address (usually by Gratuitous Arp), thus providing continuous service.

Good software for doing this is the LinuxVirtualServer? project. Unfortunately (as the name suggests) it only runs on Linux, however does include rudimentary tools for heartbeat and failover that are OS independant.

Also see UltraMonkey, the Linux HA project and the SGI Linux FailSafe project.