The main reasons why we chose it over other alternatives are:
- It seamlessly integrates with VPC, EC2, EKS, etc. Allowing to easily serve applications hosted in the cloud.
- It complies with several certifications from ISO and CSA. Many of these certifications are focused on granting that the entity follows best practices regarding secure cloud-based environments and information security.
- When combined with Kubernetes, it allows to balance application load by distributing requests to multiple replicas using a horizontal scaling approach.
- It has its own Kubernetes module for automatically provisioning application load balancers when Kubernetes applications are deployed. This is specially useful for serving ephemeral environments.
- It supports VPC security groups, allowing to easily set networking inbound and outbound rules for the load balancers. Such feature is essential for avoiding CDN bypassing.
- A single load balancer supports multiple Availability zones, granting networking redundancy, which is essential for keeping it always available to the Internet.
- It supports health checks, allowing to constantly monitor all the endpoints associated to a load balancer. Application requests are only sent to healthy endpoints.
- Application load balancers support rules, allowing to create complex routing scenarios when it comes to request forwarding.
- It supports application load balancers, network load balancers, and gateway load balancers, providing infrastructure for a wide range of solutions.
- Load balancers can be monitored via CloudWatch.
We use ELB for:
We do not use ELB for: