Fluxheim/Doku/Technischa Notiz: Load Balancer

Technischa Notiz: Load Balancer

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

Zwei Upstreams

[[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-Steuerungen

SteuerungNutz es, wenn
upstream_weightsBackends soin unterschiedliche Traffic-Anteile kriagn.
backup_upstreamsEinige Backends soin bloß gnutzt werdn, wenn primäre Ziele ausfoin.
drain_upstreamsA Backend soi laufende Arbeit fertig macha, aber koan neuen Traffic kriagn.
disabled_upstreamsA Backend muaß aus da Rotation gnomma werdn.
upstream_max_in_flightA Backend braucht a lokales Parallelitätslimit.

Dynamische Upstream-Datei

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

Nutz statische Upstreams, wennst Gewichte, Aliase, Backup, Drain oder Disabled-State brauchst. Datei- und DNS-aktualisierte Pools hoitn den Vertrag absichtlich kloaner.

Wosd griagst

  • Focused load-balancer release images are available.
  • Health Checks kennan defekte Backends aus da Rotation hoidn.
  • Drain- und Force-down-Operationen helfn bei Wartungsfenstern.
  • Managed-Cookie-Affinity is verfügbar, wenn Sitzungen a stabiles Backend brauchn.
Boarisch