Fluxheim/Dokumentácia/Load balancer

Load balancer

Run several upstreams behind one public endpoint. Start simple, then add health checks and runtime controls.

Dva upstreamy

[[vhosts.routes]]
name = "app"
path_prefix = "/"
action = "proxy"

[vhosts.routes.proxy]
upstreams = [
  "10.0.0.11:8080",
  "10.0.0.12:8080",
]
upstream_weights = [100, 50]
upstream_aliases = ["app-a", "app-b"]

Balancing kontroly

KontrolaPouži, keď
upstream_weightsBackendy mají dostat různé podíly traffic.
backup_upstreamsNiektoré backendy sa majú použiť iba pri zlyhaní primary volieb.
drain_upstreamsBackend má dokončit existující práci, ale nedostávat nový traffic.
disabled_upstreamsBackend musí zostať mimo rotácie.
upstream_max_in_flightBackend potrebuje local concurrency cap.

Dynamický upstream file

[vhosts.routes.proxy]
upstreams_file = "/run/fluxheim/backends/app.txt"
upstreams_file_refresh_secs = 5

Použi static upstream, keď potrebuješ weights, aliases, backup, drain alebo disabled state. File a DNS refreshed pool zámerne držia menší contract.

Čo poskytuje

  • Focused load-balancer release images are available.
  • Health check môžu držať rozbité backendy mimo rotácie.
  • Drain a force-down operácie pomáhajú pri maintenance window.
  • Managed-cookie affinity je k dispozícii, keď session potrebuje stabilný backend.
Slovenčina