Skip to main content

Tools

Cheatsheet

Cloud Load Balancer CheatSheet

Tools

  • Nginx
  • HAProxy
  • Envoy (winner in benchmark)
  • Traefic
  • ALB/NLB/GLB (AWS Elastic Load Balancer)
  • Kong

HAProxy

HAProxy is a free, veryfast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications. It is particularly suited for very high traffic web sites and powers quite a number of the world's most visited ones.

https://www.haproxy.com/solutions/load-balancing

https://www.haproxy.com/blog/the-history-of-haproxy

https://blog.opstree.com/2020/08/18/haproxy-hurdles-walkthrough

Keepalived

Keepalived is a routing software written in C. The main goal of this project is to provide simple and robust facilities for loadbalancing and high-availability to Linux system and Linux based infrastructures. Loadbalancing framework relies on well-known and widely used Linux Virtual Server (IPVS) kernel module providing Layer4 loadbalancing. Keepalived implements a set of checkers to dynamically and adaptively maintain and manage loadbalanced server pool according their health. On the other hand high-availability is achieved by VRRPprotocol. VRRP is a fundamental brick for router failover. In addition, Keepalived implements a set of hooks to the VRRP finite state machine providing low-level and high-speed protocol interactions. Keepalived frameworks can be used independently or all together to provide resilient infrastructures.

https://www.keepalived.org

Envoy Proxy

Envoy is an open source edge and service proxy, designed for cloud-native applications.

Originally built atLyft, Envoy is a high performance C++ distributed proxy designed for single services and applications, as well as a communication bus and "universal data plane" designed for large microservice "service mesh" architectures. Built on the learnings of solutions such as NGINX, HAProxy, hardware load balancers, and cloud load balancers, Envoy runs alongside every application and abstracts the network by providing common features in a platform-agnostic manner. When all service traffic in an infrastructure flows via an Envoy mesh, it becomes easy to visualize problem areas via consistent observability, tune overall performance, and add substrate features in a single place.

https://github.com/envoyproxy/envoy

https://www.envoyproxy.io/docs/envoy/latest/intro/intro

Secret discovery service (SDS)

https://www.envoyproxy.io/docs/envoy/latest/configuration/security/secret

Netflix Ribbon

Client Side Load Balancing | Microservices Architecture Pattern | Tech Primers