19.5. Clustering

19.5.1. Cluster Alias

The cluster alias is a technology that allows several nodes to be configured with a shared IP address, while also permitting TCP/IP connections to be established at this address. Inbound TCP/IP connections are automatically distributed.

Unlike the Linux virtual server, a dedicated load balancer is not required. However, because of the type of implementation, the cluster alias is less efficient when there is a large number of nodes. In the case of the cluster alias, all IP packages are distributed to all nodes, which then filter out the packages intended for them. In the case of LVS, this decision is only taken once by the load balancer. For further information about how to configure this feature, see the iptables manual page.

19.5.2. Linux Virtual Server

Linux virtual server is based on a real cluster of several servers, which are connected together by means of a load balancer for distributing the load among the various members of the cluster. From the outside, a cluster of this kind simply looks like a single virtual server. The load balancer should also be configured for redundancy and should be secured using heartbeat. The aim of an LVS configuration is to make the best possible use of the existing resources and to offer good scalability. The heartbeat-ldirectord daemon is used in these scenarios to monitor the “health” of the various real servers.

19.5.3. High Availability Clusters

High availability clusters are designed so all available services can be provided at all times, despite hardware or software failures. If a node in a cluster fails, another takes over immediately. This node (secondary) is a mirror image of the failed node (primary) and actually assumes the identity of the failed node during failover, so the cluster environment remains externally consistent.