Load balancer

Εκτέλεση several upstreams behind one public endpoint. Έναρξη simple, then add health checks and runtime controls.

Δύο 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 επιλογές επιλογές

ΈλεγχοςΧρησιμοποίησέ το όταν
upstream_weightsΤα backends πρέπει να λαμβάνουν διαφορετικά traffic shares.
backup_upstreamsΜερικά backends πρέπει να χρησιμοποιούνται μόνο όταν αποτύχουν primary choices.
drain_upstreamsΈνα backend πρέπει να τελειώσει υπάρχουσα δουλειά αλλά να μη λαμβάνει νέο traffic.
disabled_upstreamsΈνα backend πρέπει να μένει εκτός rotation.
upstream_max_in_flightΈνα backend χρειάζεται local concurrency cap.

Dynamic upstream αρχείο

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

Χρησιμοποίησε static upstreams όταν χρειάζεσαι weights, aliases, backup, drain ή disabled state. File και DNS refreshed pools κρατούν σκόπιμα μικρότερο contract.

Τι σου δίνει

  • Focused load-balancer release images are available.
  • Τα health checks μπορούν να κρατούν broken backends εκτός rotation.
  • Drain και force-down operations βοηθούν σε maintenance windows.
  • Managed-cookie affinity είναι διαθέσιμο όταν τα sessions χρειάζονται stable backend.
Ελληνικά