I know this topic is somewhat advanced for some of you, but for others hopefully this will be useful. So what is a load balancer? To better understand the term, let me explain to you a bit the meaning of load balancing.
In computing, particularly networking, load balancing is defined as evenly sharing the amount of work or load between two or more computers, network links, CPUs, or other resources in order to achieve optimum resource utilization, maximize throughput, decrease response time, and increase reliability thus maximizing uptime. Load balancing is typically utilized to moderate internal communications in computer clusters.
There are several popular open source load balancers or load balancing software applications for Linux, which can be used with almost any kind of service, including FTP, HTTP, DNS, SMTP, POP/IMAP, VoIP, etc. Here are some of them:
Linux Virtual Server
Linux Virtual Server (LVS) is the most well known and widely used Linux load sharing and balancing software. The project’s main goal is to build a high-performance and highly available server for Linux using clustering technology, which provides good scalability, reliability and serviceability. The architecture of the server cluster is fully transparent to end users, and the users interact as if it were a single high-performance virtual server. The major work of the LVS project is now to develop advanced IP load balancing software (IPVS), application-level load balancing software (KTCPVS), and cluster management components.
To learn more about Linux Virtual Server (LVS), go HERE.
Based on LVS, Ultra Monkey focuses on local area network load balancing and other highly available services using Open Source components on Linux that includes heartbeat and ldirectord from the Linux-HA project. Ultra Monkey is also producing a scalable, highlyavailable web farm, but it can be easily expanded to other services, like FTP or e-mail.
To know more about Ultra Monkey, go HERE.
Red Hat Cluster Suite
Available as additional programs to the highly reliable Red Hat Enterprise Server distribution, Red Hat Cluster Suite provides two different types of clustering namely Application/Service Failover and IP Load Balancing. Its Cluster Manager provides application failover, while its Load Balancer gives the ability to load balance IP traffic across a farm of servers.
You can learn more about Red Hat Cluster Suite HERE.
High-Availability Linux (Linux-HA) project provides a high-availability and advanced solution across different operating system platforms. It promotes reliability, availability, and serviceability (RAS). Its main product is called Heartbeat, a GPL-licensed portable cluster management program for high-availability clustering.
To know more about High-Availability Linux, go HERE.