The answer is a resounding “No!”
If you think you don’t agree with me, just ask cloud giants like Google or Facebook. If hardware load balancers could really scale, would they have built their own software load balancers? Read this note on Google's Maglev, a software load balancer that was recently released by Google. I won’t quote all the salient points mentioned in the paper, but I do want to highlight the specific limitations of hardware load balancers that the Google team mentions:
- Scalability that is restricted to the capacity of a single unit
- High availability, according to hardware load balancers is redundancy from a 1+1 HA pair
- Lack of flexibility and programmability needed for CI/CD
- Costly upgrades
Let me add more detail to this (literally!) million-dollar question that most enterprises face when it comes to Web-Scale requirements. Beyond the cloud giants, most enterprises don’t want to be in the business of building their own software load balancer. In the aforesaid four limitations, let us pause at the fourth limitation for a second. Consider the fact that Google, the technology giant, specifies the cost to upgrade hardware load balancers as a core limitation.
Applications receive millions of requests per second and therefore, require infrastructure that matches the scale of usage. Resource allocation should also be automatic – whether scaling up or down – based on usage patterns. Hardware load balancers cannot autoscale* and therefore, do not match enterprises’ needs for scale. It is almost impossible for organizations to predict the next event that triggers a sudden surge in requests to your application. Most times, organizations, therefore, come up with creative ideas to calm down unhappy users.
(*In its note Google mentions that “Augmenting the capacity of a hardware load balancer usually involves purchasing new hardware as well as physically deploying it”)
Software load balancing with Avi Networks:
We founded Avi Networks with a vision to deliver application services including load balancing, service discovery, predictive autoscaling, analytics and other such capabilities to match enterprises’ Web-Scale needs. A software load balancer, the Avi Vantage Platform, is built to match Web-Scale needs. A few design principles that we kept in mind as we developed Avi Vantage are:
- Raw Speeds and Feeds: It is not just about the ability to scale, but it is also about scaling up from, say 1 Gbps to 10 Gbps to 10 Tbps and beyond in minutes. Avi Vantage addresses the scalability issue through ECMP forwarding via BGP to evenly distribute traffic across Avi’s software load balancers (called, the Avi Service Engines). Based on real-time traffic, the Avi Controller can scale out and scale in load balancers automatically.
- The Speed of Scaling: As they say, the best camera is the one in your pocket. Similarly, a scalable load balancer is the one that's always available when your data center needs it - instantaneously; not for $1 million (requiring pre-provisioning and overcompensating for capacity) and eight weeks later (with a complex procurement process for additional appliances).
- It’s the Control Plane: It is a well-kept secret in the industry that the control plane doesn't scale with hardware appliances, perhaps deliberately, forcing customers to procure additional (and expensive) proprietary hardware while the data plane is running at a mere 5% utilization. Instead, the system should perform:
- distributed health monitoring that scales linearly with the data plane
- control plane tasks on industry standard x86 servers with a scalable number of nodes, CPU and memory
That’s the power of software-defined scalability!
- TPS Scaling for Encryption: Another million-dollar question is the ability to scale for security. With new crypto algorithms such as elliptic curve cryptography (ECC) requiring an ASIC update, enterprises face challenges with upgrading their appliance-based load balancers. Enterprises are restricted to a manual upgrade/refresh process with hardware load balancers; so they end up waiting for, say three years, and spend big bucks on a hardware refresh. Avi Vantage includes the ability to scale the system using a software upgrade, say the week after the new crypto is made available!
- Better Performance Per Dollar: As an additional note on advanced crypto algorithms and how hardware load balancers deliver throughput vs. performance relative to cost, here’s a quick performance comparison for Avi Vantage vs. a hardware load balancer:
We also added the following layer-7 load balancing features to Avi Vantage:
- App/Traffic Flow Analytics: With millions of application requests, it is critical for administrators to be able to isolate apps and pinpoint the specific application service for rapid troubleshooting. Avi Vantage provides deep insights into application traffic and intuitive administrative consoles to enable administrators to enforce the required security posture.
- Programmability and Automation: Avi Vantage is built to adapt to changes in applications or workload movements, thereby, scaling the resources up or down based on application (and load balancer) requirements. Avi's predictive autoscaling learns application behavior automatically and scales to match future resource allocation needs.
- All REST APIs Aren’t Created Equal: In a Web-Scale datacenter with thousands of servers and applications, and tens of thousands of VMs or containers, API performance is key. Native REST APIs that operate on objects perform a single task in one API call, whereas, legacy systems that have evolved from CLI/SNMP to SOAP to REST simply translate REST API calls internally to disparate configurations. Where a hardware load balancer would require as many as 50-60 API calls to create a single service, with the Avi Controller, even the most complex service with multiple pools, policies and rules can be created in a single REST API call. Avi enables scale while being developer-friendly for a faster service creation.
Does all this talk about software load balancers bring you load-balancer-envy? Web-Scale IT organizations such as Facebook and Google have already built their load balancers. You don't have to build your own; Avi Networks delivers application services beyond load balancing at a fraction of the total cost you incur with your appliance-based ADC solutions!