Load Balancer Open Source Software

by on March 11, 2008 · 14 comments· LAST UPDATED March 11, 2008

in , ,

I've worked with a various load balancing systems (LBS). They are complex pieces of hardware and software. In this post I will highlight some of the open source load balancing software. But what is load balancing?
It is nothing but a technique used to share (spared) load / services between two or more servers. For example, busy e-commerce or bank website uses load balancer to increase reliability, throughput, uptime, response time and better resource utilization. You can use following softwares as an advanced load balancing solution for web, cache, dns, mail, ftp, auth servers, VoIP services etc.

Linux Virtual Server (LVS)

LVS is ultimate open source Linux load sharing and balancing software. You can easily build a high-performance and highly available server for Linux using this software. From the project page:

Virtual server is a highly scalable and highly available server built on a cluster of real servers. The architecture of server cluster is fully transparent to end users, and the users interact with the cluster system as if it were only a single high-performance virtual server.

=> Project Web Site

Red Hat Cluster Suite

It is a high availability cluster software implementation from Linux leader Red Hat. It provide two type services:

  1. Application / Service Failover - Create n-node server clusters for failover of key applications and services
  2. IP Load Balancing - Load balance incoming IP network requests across a farm of servers

=> Product web page

The High Availability Linux Project

Linux-HA provides sophisticated high-availability (failover) capabilities on a wide range of platforms, supporting several tens of thousands of mission critical sites.

=> Project web site

Ultra Monkey

Ultra Monkey is a project to create load balanced and highly available network services. For example a cluster of web servers that appear as a single web server to end-users. The service may be for end-users across the world connected via the internet, or for enterprise users connected via an intranet.

Ultra Monkey makes use of the Linux operating system to provide a flexible solution that can be tailored to a wide range of needs. From small clusters of only two nodes to large systems serving thousands of connections per second.

=> Project web site

Personally, I've worked with both LVS and Red Hat Cluster Suite and I highly recommend these softwares.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 14 comments… read them below or add one }

1 ari_stress March 12, 2008 at 6:10 am

Hi Vivek,
I’ve been using Linux-Ha and RHCS for failover clustering. I’m interested in Load balancing cluster. Can you share a tutorial about it (LVS)?
Thank you very much.

Reply

2 Raj March 12, 2008 at 6:59 am

ari_stress,

LVS easy; you also aware of RHCS.

Reply

3 Jacky H.Chan March 12, 2008 at 9:05 am

Hi Ari,

I am also considering to implement a failover cluster. What are your comment on Linux-Ha and RHCS? Do you implement the two together?

Reply

4 Jeff Schroeder March 12, 2008 at 1:00 pm

From LVS, all you really need to use is their vrrp daemon, Keepalived. It is really simple to setup and “Just Works TM” using multicast to send heartbeats between various nodes.
http://keepalived.org

I’ve written several scripts to help work with keepalived on various state changes you can get…

Reply

5 Brooke May 27, 2010 at 7:09 pm

Hi Jeff,

VMware is currently seeking an engineer to optimize networking performance in relation to security for virtual environments. Optimize the performance and scalability of VMware’s leading edge hypervisor networking stack and associated networking products. Help build the next generation of virtualized network services. Find the root cause of performance bottlenecks and initiate improvements in architecture.

Analyze networking workload performance and scalability across a variety of hardware and software configurations. Develop sound methodologies for accurate performance comparisons, as well as study workload characteristics to create a balanced suite of performance workloads. Work with developers to resolve performance problems, and implement solutions and performance optimizations. Develop tools for understanding and comparing performance data.

Please let me know if you are interested or know of someone who might be.

Take care,
Brooke@vmware.com

Reply

6 ari_stress March 13, 2008 at 6:14 am

@Jacky
RHCS = polished and feature rich, but it’s vendor oriented (RH only).

Linux-Ha = not-so-polished but comparable feature rich.

I recommend Linux-Ha.

Reply

7 drakpzone March 13, 2008 at 6:21 pm

I’d suggest ha-proxy, which in terms of lb leaves the rust out in the dust

Reply

8 Deiveegan August 27, 2009 at 4:30 am

share me the LVS configuration in redaht 5 is it supported for squid (proxy)

Reply

9 Janelle September 3, 2009 at 1:57 pm

I need a load-balancing software that maintains a users session, always sending him to the same server whenever he accesses the site. Also, more tricky, I need for the software to kick him off when that server is down, instead of transferring him to an up server. Others accessing a site after user A, will be directed to the next available server. Does such a piece of software exsist? It really goes against the whole notion of load-balancing, but thats kind of what I need. Any suggestions?

Reply

10 dany trad September 22, 2009 at 10:31 pm

hi, i have a small network about 100 user and i use windows 2003 server with ISA, and i have the syswan sw88 load balancer for 8 wan, i search for software for load balancing instead of the syswan any budy can help me on it? 10x

Reply

11 Emilio November 9, 2010 at 8:12 am

I would like recommend Zen load balancer http://zenloadbalancer.sourceforge.net a open source tcp load balancer which you can configure tcp farms load balancers, create advanced checks, monitorice server status and farms status, etc…

Reply

12 Sri January 25, 2011 at 7:16 am

Hi,
I just gone through your posts.
this site is excellent…
thanks for the contributors.

actually I am new to load balancing.
I just worked with haproxy and nginx with a little basic configuration.
After working , both seems to be a bit same.

among haproxy and nginx, which load balancer is best interms of performance.

my requirement is I will be having 3 servers running a j2ee based web application (session based application like jpetstore).
I will be changing the configuration file dynamically via script (just to add IPAddress) . so i need to have a load balancer which supports dynamic reloading of configuration file, without restarting the load balancer service.

can you please suggest a load balancer, which will suite my need.
Since i am a beginner to load balancing, I am unable to select the best one,..

or if you know any other load balancer , i request you to suggest me.

thanks in advance,
sri

Reply

13 khaled March 8, 2011 at 3:32 pm

thank you

Reply

14 Khalegh Salehi March 16, 2012 at 8:43 am

Hi
My Last work in RCISS is about “DDoS attack defense on Layer 7″. did anyone help me and let me to know Load balancing how and did have any background to countermeasure DDoS attack? if anyone have a practical solution with Load Balancing and real implementation please let us to have a share.

Best regards
Khalegh

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , ,

Previous post:

Next post: