Fluxheim/Dokumentaatio/Load balancer

Load balancer

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

Kaksi upstreamia

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

KontrolliKäytä sitä, kun
upstream_weightsBackend-palvelu-palveluien pitäisi saada eri liikenneosuuksia.
backup_upstreamsJoitakin backendejä pitäisi käyttää vain, kun ensisijaiset valinnat epäonnistuvat.
drain_upstreamsBackend-palvelu-palveluin pitäisi viimeistellä nykyinen työ, mutta olla saamatta uutta liikennettä.
disabled_upstreamsBackend-palvelu-palvelu on pidettävä poissa rotaatiosta.
upstream_max_in_flightBackend-palvelu-palvelu tarvitsee paikallisen concurrency capin.

Dynaaminen upstream-tiedosto

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

Käytä staattisia upstreameja, kun tarvitset weighttejä, aliaksia, backupia, drainia tai disabled statea. File- ja DNS-refreshed poolit pitävät sopimuksen tarkoituksella pienempänä.

Mitä se antaa

  • Focused load-balancer release images are available.
  • Health checkit voivat pitää rikkinäiset backendit pois rotaatiosta.
  • Drain- ja force-down-operaatiot auttavat huoltoikkunoissa.
  • Managed-cookie affinity on käytettävissä, kun sessiot tarvitsevat vakaan backendin.
Suomi