Load balancer
Uitvoeren several upstreams behind one public endpoint. Startpaginapagina simple, then add health checks and runtime controls.
Twee 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-controls
| Controlee | Gebruik het wanneer |
|---|---|
upstream_weights | Backend-service-services moeten verschillende verkeersaandelen krijgen. |
backup_upstreams | Sommige backends mogen alleen worden gebruikt wanneer primaire keuzes falen. |
drain_upstreams | Een backend moet bestaand werk afmaken maar geen nieuw verkeer ontvangen. |
disabled_upstreams | Een backend moet buiten rotatie worden gehouden. |
upstream_max_in_flight | Een backend heeft een lokale concurrency cap nodig. |
Dynamisch upstream-bestand
[vhosts.routes.proxy]
upstreams_file = "/run/fluxheim/backends/app.txt"
upstreams_file_refresh_secs = 5
Gebruik statische upstreams wanneer je weights, aliassen, backup, drain of disabled state nodig hebt. File- en DNS-refreshed pools houden het contract bewust kleiner.
Wat het je geeft
- Focused load-balancer release images are available.
- Health checks kunnen kapotte backends uit rotatie houden.
- Drain- en force-down-operaties helpen bij onderhoudsvensters.
- Managed-cookie affinity is beschikbaar wanneer sessies een stabiele backend nodig hebben.