Load Balancer Buyer, Beware

Note: This is an article I wrote for this site (in its previous incarnation) in January of 2003, hence the talk of the “current” dotcom bust.

The Internet, and especially auction sites like eBay, is seen as a great way to save money when buying networking and server equipment to fill out those empty shelves in your data center. With the dot-com meltdown, top-quality equipment can be found on the cheap and are priced to move. What could be more ideal for the cost conscious?

Well, there is a catch when dealing with load balancers, and there are several concerns a buyer needs to be aware of in regards to purchasing used load balancers. It’s not the typical warning of shoddy equipment, or dishonest dealers ripping you off, but rather certain logistics that are unique to load balancers.

The issue at hand is that of software code updates. Depending on what you’re using a load balancer for, they typically need to be on the latest stable patch release in order to operate a site correctly, and acquiring such updates with most vendors requires some sort of support of update contract; the updates are not usually available to the public for free.

When you buy a used load balancer, it will mostly likely come with some sort of software code running on it. This code could be the very latest revision incorporating all the newest feature enhancements and stability fixes. However, it is much more likely that the code installed will be old, perhaps even years old, and suffer from a variety of stability ailments. The older code could also lack certain features necessary to your installation that you assumed the load balancer would have, and expectation based upon the literature you’d read. Features such as cookie-based persistence or iterations thereof, security features such as SSH, or any number of features, but since the code is older, those features were not yet introduced in the version running on the unit you purchased.

Load balancers are a bit unique in the networking world with their voracious need for updated code. Some networking devices almost never require software updates. Switches are the very foundation for networks, not only for their Layer 2 properties, but also their renowned stability. Typically the only code updates required for switches are security-based and those don’t come up that often. Layer 3 networks are a bit more complicated of course, and occasionally do require updates for stability and functionality fixes, but these are easier to obtain and less frequent, thus buying a network device used there’ll be a good chance it will work out of the box.

The reason for this is that load balancers do a lot more on the networking level than most routers and other networking devices do. This requires load balancers to use more complicated code, or uses more parts of a code set than their networking counterparts. As a result, there is much more that can go wrong.

TCP Reset bugs, cookie-persistence issues, even system lockups can, and often do, plague software releases. While this is true for any system, networking or otherwise, these issues tend to be exacerbated in load balancers.

This is true for every load balancing vendor, and doesn’t tend to be more or less true for one vendor over another. It’s simply the nature of the beast.

If you’ve got a router or switch, it’s possible (although probably less than legal) to obtain patches from associates in the industry with access or copies of the code lying around. However, because of their relative obscurity and a more assorted field of vendors, the chances of an associate having such a code upgrade applicable to your load balancing model and vendor are quite slim. And it’s not like you can fire up Kazaa and find a copy floating around, either.

That leaves pretty much the only route you available being to purchase a support contract from the vendor. This cost is not insignificant; it can often be equal to or more than the price you paid for the unit itself.

Of course there is nothing legally wrong with buying a used piece of networking equipment and utilizing it — you did purchase it after all — there is also nothing legally compelling the original vendor to provide updated software code to you.

From the vendor’s perspective, it makes financial sense. Equipment recycling on the used market can seriously eat into sales in an environment already reeling from an economic downturn. Also, other than the warm fuzzies, there’s not much incentive business-wise for these vendors to provide free access to code updates that can be quite expensive to develop.

Still, it’s of course possible to purchase a used load balancer and use it without purchasing a support contract, although it can be a crap shoot; it may or may not work out of the box. Perhaps you’re not using any of the functionality where a bit of bad code would manifest itself, or perhaps the code release you acquired is mostly stable. But then in the future you could attempt to utilize additional functionality and then instability and other issues would manifest themselves. In such a situation, you’d either have to roll back to the previous stable configuration and functionality, or be forced (very quickly) to invest in a support contract.

So remember, when considering the option of buying used load balancers off of eBay or other used outlets, consider that you’ll most likely need to purchase a support contract from the original manufacturer in order to obtain code updates. It would be wise to investigate the costs of such a move before making a purchase or competitive online bid. This can significantly add to the cost of your purchase, and the extent to that additional cost can vary quite a bit from product to product and vendor to vendor, though it still may make sense in the long run. New or used, happy load balancing everyone.

About tony

Tony is an IT instructor, pilot, scuba diver, marathon runner, and vegan.