cozystack/packages/apps/tcp-balancer
Timofei Larkin 917a6f354d [platform] Autodetect RobotLB
If running in Hetzner and using Hetzner's cloud load balancers, node
ports need to be allocated for the load balancer to function correctly.
Therefore if RobotLB is enabled, we probably need to assign node ports.

Release note:
[platform] Autodetect if node ports should be assigned to load balancer
services.

Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2025-07-24 18:55:30 +03:00
..
charts Use library chart for resource management 2025-06-04 09:05:21 +03:00
logos Update dashboard icons (#274) 2024-08-12 14:47:11 +02:00
templates [platform] Autodetect RobotLB 2025-07-24 18:55:30 +03:00
.helmignore Ship all logos with Cozystack 2024-07-16 17:31:52 +02:00
Chart.yaml [apps] Remove preset 'none' from app charts and README 2025-07-14 19:31:10 +03:00
Makefile Get rid of bitnami's readme-generator 2025-07-18 00:40:31 +02:00
README.md [applications] Reorder values.yaml for better readability 2025-07-17 19:36:20 +03:00
values.schema.json Fix arrays in OpenAPI spec 2025-07-18 02:54:33 +02:00
values.yaml [applications] Reorder values.yaml for better readability 2025-07-17 19:36:20 +03:00

Managed TCP Load Balancer Service

The Managed TCP Load Balancer Service simplifies the deployment and management of load balancers. It efficiently distributes incoming TCP traffic across multiple backend servers, ensuring high availability and optimal resource utilization.

Deployment Details

Managed TCP Load Balancer Service efficiently utilizes HAProxy for load balancing purposes. HAProxy is a well-established and reliable solution for distributing incoming TCP traffic across multiple backend servers, ensuring high availability and efficient resource utilization. This deployment choice guarantees the seamless and dependable operation of your load balancing infrastructure.

Parameters

Common parameters

Name Description Value
replicas Number of HAProxy replicas 2
resources Explicit CPU and memory configuration for each TCP Balancer replica. When left empty, the preset defined in resourcesPreset is applied. {}
resourcesPreset Default sizing preset used when resources is omitted. Allowed values: nano, micro, small, medium, large, xlarge, 2xlarge. nano
external Enable external access from outside the cluster false

Application-specific parameters

Name Description Value
httpAndHttps.mode Mode for balancer. Allowed values: tcp and tcp-with-proxy tcp
httpAndHttps.targetPorts.http HTTP port number. 80
httpAndHttps.targetPorts.https HTTPS port number. 443
httpAndHttps.endpoints Endpoint addresses list []
whitelistHTTP Secure HTTP by whitelisting client networks false
whitelist List of client networks []

Parameter examples and reference

resources and resourcesPreset

resources sets explicit CPU and memory configurations for each replica. When left empty, the preset defined in resourcesPreset is applied.

resources:
  cpu: 4000m
  memory: 4Gi

resourcesPreset sets named CPU and memory configurations for each replica. This setting is ignored if the corresponding resources value is set.

Preset name CPU memory
nano 250m 128Mi
micro 500m 256Mi
small 1 512Mi
medium 1 1Gi
large 2 2Gi
xlarge 4 4Gi
2xlarge 8 8Gi