Amazon has launched their Application Load Balancer (ALB), a new type of intelligent load balancer that promises to reduce the cost of load balancing for those running HTTP-based services.
ALB is an OSI Layer 7 load balancer and can route to different back-end services based on the content of the packets. Unlike the existing load balancer, an OSI Layer 4 TCP/UDP balancer, the ALB will look at the packets and send them to the right service. Currently, up to 10 separate rules can be defined to route traffic based on the URL.
This is a boon for those running fine-grained back-end services. Instead of running an elastic load balancer for each service, a single ALB can balance traffic for many back-end services. For example, a URL containing /api
can be routed to a different back-end service than a URL containing /signup
.
In future updates, it's likely that the ALB will be able to route based on arbitrary HTTP header information. Amazon's Jeff Barr hints at such improvements, saying "Over time, we plan to give you access to other routing methods."
In addition to standard HTTP routing, the ALB also supports WebSockets and HTTP/2.
At the August 11th AWS Summit in New York, Amazon CTO Werner Vogels says the new load balancer is dramatically better:
What we've heard from some of our earliest customers that were in the private beta is that not only is it much faster than the Classic Load Balancer, there's also a signficant reduction in cost that you'll see here. Typically 10% or more.
Other cloud providers already have similar offerings. Microsoft's Azure has their Application Gateway product and Google also has an HTTP(S)-based balancer.
The ALB already works with other AWS products such as Auto Scaling, ECS, CloudFormation, CodeDeploy, and Certificate Manager. Integrations with Elastic Beanstalk and AWS Config are in the works. The existing Elastic Load Balancer is now called a Classic Load Balancer and is still available. Existing Classic Load Balancers can be migrated to an ALB using the Load Balancer Copy Utility.
For more information, read Barr's blog post on how to set up the new ALB.