Experience with Open Source load balancers?

Jimmy Hess mysidia at gmail.com
Tue May 17 03:28:14 UTC 2011


On Mon, May 16, 2011 at 6:37 PM, William Cooper <wcooper02 at gmail.com> wrote:
> S/W vs H/W is really a question rooted in performance and feature
> needs vs cost... weigh your options carefully.

Load balancers are _both_ hardware and software.
There's really no such thing as a load balancer solution
that is just hardware or one that's just software (aka Firmware);
it does not exist --  real load balancers are both hardware and software.

And all software has bugs; some of which might (some day) disrupt the intended
operation.

There are packaged solutions  that are integrated hardware and software
sold as a product.

There are do-it-yourself solutions that are off-the-shelf hardware,
and software of your choice,  including open source options on commodity
hardware,  that require manual selection of the software programs used
to facilitate load balancing functions,  and maintain them in case of
exceptions,
hardware failures, or other unexpected exceptions.

Both packaged and custom built have their own advantages and disadvantages,
there are tradeoffs, and no universal best; they both meet different
sets of requirements.

Devices packaged by a load balancer manufacturer; usually have
things like user interfaces, instruction manuals, configuration
guidance, and warranty/support for the entire device, both hardware
and software.

In addition, the whole thing is tested by the manufacturers as one product,
and there may be specially integrated hardware functions supported
by the load balancer,  that are not found in commodity hardware
(e.g. specialized crypto processors for RSA/AES/SSL acceleration,
 ASICs, etc).


The manufacturer's work to deliver their product comes at a high price, so
taking a do-it-yourself  with open source software will have much lower prices
paid to the vendor:  instead of  paying a manufacturer for a product.

Except, if you actually went through the same effort as the manufacturer
of the product, it might be more expensive than buying the product,
so chances are you will do less, and have a less refined result.


Building a load balancer with cheap hardware and open source software,
puts you in the manufacturer's seat.

This provides a huge amount of flexibility, but also  adds complexity,
and gives you a lot of choices about what software to put in the box,
and how to set up each package.

Your engineering team may need a great deal of familiarity with both
the software and hardware, and a lot of patience to achieve
performance equivalent to an integrated unit.

Your exact choices of software and package versions for load balancing
or high availability,  might (or might not) have been tested by someone
with a similar scenario,  on similar hardware.


In case something goes wrong,  you won't be getting a replacement unit
overnighted in by the manufacturer,  ready to plug in and load a 5kb config.
You have only the troubleshooting  and configuration guidance you yourself
developed,  before/during use of that, so if an unexpected condition arises,
chances are you won't have as much guidance for troubleshooting or likely
causes, as a vendor would.

Requiring different procedures for dealing with a failure or
malfunctioning of the
load balancing.

In case you do have hardware/software support, for a commodity
hardware solution,
you may find your vendors pointing fingers at one another.

--
-JH




More information about the NANOG mailing list