Load Balancers

Load Balancers in Thalassa Cloud

Overview

Load Balancers in Thalassa Cloud distribute incoming traffic across multiple targets to ensure high availability, reliability, and performance of applications. They support TCP and UDP traffic, making them suitable for a variety of workloads. Load balancers integrate with Thalassa Cloud Kubernetes through the Cloud Controller Manager (CCM), allowing seamless service exposure without manual configuration.

Load Balancer Capabilities

CapabilityDescription
Traffic DistributionDistributes incoming requests across multiple backend targets to ensure reliability and redundancy.
Multiple ProtocolsSupports TCP and UDP listeners.
Listener-Based RoutingEach load balancer can have up to 100 listeners, defining rules for traffic handling.
Target GroupsListeners forward traffic to defined target groups, enabling flexible backend configurations.
Health ChecksContinuously monitors backend targets to route traffic only to healthy instances.
Proxy ProtocolSupports Proxy Protocol for preserving client connection information.
Connection LimitsConfigurable connection limits per listener to control resource usage and prevent overload.
Access Control ListsACLs can be applied to listeners to control which IP addresses can access the load balancer.

Load Balancer Architecture

Load Balancers operate at the network level within Thalassa Cloud’s Virtual Private Cloud (VPC) architecture. They consist of the following components:

Listeners

A listener defines how the load balancer accepts and routes traffic. Each load balancer can have up to 100 listeners, each specifying:

  • Protocol (TCP, UDP)
  • Port
  • Target Group Forwarding Rule
  • Proxy Protocol for preserving client connection information
  • Connection Limits to control the maximum number of concurrent connections
  • Access Control Lists (ACLs) to restrict access based on source IP addresses

Target Groups

Target groups define the set of backend instances or services that receive traffic from a load balancer’s listener. Traffic is balanced across all healthy targets within a group. Each listener must be associated with a target group.

Health Checks

Health checks verify the availability of backend targets before sending traffic. They are configurable per target group and ensure that only healthy instances handle traffic. Health checks can be customized with:

  • Protocol (TCP, HTTP, HTTPS)
  • Port for health check requests
  • Path for HTTP/HTTPS health checks
  • Interval between health check attempts
  • Timeout for health check responses
  • Healthy threshold count before marking target as healthy
  • Unhealthy threshold count before marking target as unhealthy
Note: Currently there is a known issues when combining health checks with Proxy Protocol, there is no way to disable the Proxy Protocol for the health check.

Integration with Thalassa Cloud Kubernetes

Thalassa Cloud Load Balancers seamlessly integrate with Thalassa Cloud Kubernetes through the Cloud Controller Manager (CCM). This allows Kubernetes Services of type LoadBalancer to automatically provision and configure load balancers within Thalassa Cloud, simplifying external service exposure.

Read more about the Kubernetes integration here.