Chapter 6. Clustering

Support for Keepalived and HAProxy Load Balancer technology

Red Hat Enterprise Linux 6.6 provides support for Load Balancer technology with Keepalived and HAProxy.
Keepalived provides simple and robust facilities for load balancing and high availability. The load-balancing framework relies on the well-known and widely used Linux Virtual Server kernel module providing Layer-4 (transport layer) load balancing. Keepalived implements a set of checkers to dynamically and adaptively maintain and manage a load balanced server pool according to their health. Keepalived also implements the Virtual Router Redundancy Protocol (VRRPv2) to achieve high availability with director failover.
HAProxy is a TCP/HTTP reverse proxy which is particularly suited for high availability environments. HAProxy can:
  • Route HTTP requests depending on statically assigned cookies;
  • Spread the load among several servers while assuring server persistence through the use of HTTP cookies;
  • Switch to backup servers in the event a main server fails;
  • Accept connections to special ports dedicated to service monitoring;
  • Stop accepting connections without breaking existing ones;
  • Add, modify, and delete HTTP headers in both directions;
  • Block requests matching particular patterns;
  • Persist client connections to the correct application server depending on application cookies;
  • Report detailed status as HTML pages to authenticated users from a URI intercepted from the application.