Skip to content

Lastbalanserare

En lastbalanserare distribuerar inkommande trafik över en pool av backend-instanser. Frostmoln erbjuder två leverantörsdrivrutiner; du väljer en vid skapande — den kan inte ändras på plats (för att byta, ta bort och återskapa).

Välja en leverantör

Amphora (standard)OVN
LagerL4 och L7 (HTTP/HTTPS)Endast L4 (TCP/UDP/SCTP)
TLS-termineringJa (via plattformens nyckelhanterare)Nej
PROXY-protokoll / headerinjektionJaNej
Käll-IP till backendsX-Forwarded-For (L7) eller PROXY-protokoll (L4)Bevaras nativt (L4)
OverheadKör en lastbalanserar-VMIngen VM (inbyggd i väven)
Bäst förWebbappar, TLS, HTTP-routningL4 med hög genomströmning, käll-IP-känsliga arbetslaster
bash
fm load-balancer create --name web-lb --vpc my-vpc --subnet my-subnet                 # Amphora (standard)
fm load-balancer create --name l4-lb  --vpc my-vpc --subnet my-subnet --provider ovn  # OVN, L4

fm lb är ett alias för fm load-balancer. I Terraform är resursen frostmoln_load_balancer (leverantörstyp och storlek är oföränderliga / force-new).

Intern kontra publik

En lastbalanserare är intern som standard (en privat VIP nåbar inom VPC:n). För en publik allokerar du först en publik IP och skickar med den:

bash
fm load-balancer create --name web-lb --vpc my-vpc --subnet my-subnet \
  --scheme public --public-ip <public-ip-id>

Lyssnare — och obligatoriska tillåtna CIDR:er

En lyssnare tar emot trafik på ett protokoll/port (t.ex. HTTPS:443). Lyssnare nekar som standard: du måste ange de klient-CIDR:er som tillåts nå dem — detta är obligatoriskt, inte valfritt. Använd 0.0.0.0/0 för att ta emot från var som helst.

bash
fm load-balancer listener create --lb web-lb --name https \
  --protocol https --port 443 --allowed-cidr 0.0.0.0/0

Pooler, medlemmar och hälsoövervakare

  • En pool är uppsättningen backend-medlemmar, med en lastbalanseringsalgoritm: round_robin (standard), least_connections eller source_ip. (OVN-pooler måste använda source_ip_port.)
  • Medlemmar är backend-instanser (adress + port, valfri vikt, valfri backup). Medlemmar utanför lastbalanserarens subnät behöver flaggan för korssubnät.
  • En hälsoövervakare sonderar medlemmar (tcp / http / https, med fördröjning, timeout, omförsök och för HTTP en sökväg + förväntade koder) och tar bort ohälsosamma från rotationen.
bash
fm load-balancer pool   create --lb web-lb --name web-pool --protocol http --algorithm round_robin
fm load-balancer member create --pool web-pool --address 10.0.1.10 --port 8080
fm load-balancer health-monitor create --pool web-pool --type http --url-path /healthz

TLS, PROXY-protokoll och käll-IP (Amphora)

  • TLS-terminering — skapa en terminated_https-lyssnare som refererar till ett TLS-certifikat; lastbalanseraren terminerar TLS och vidarebefordrar till poolen. (Endast Amphora.)
  • PROXY-protokoll (v1/v2) — bevarar den verkliga klient-IP:n till L4-backends; dina medlemmar måste konfigureras att acceptera PROXY-headern. (Endast Amphora.)
  • Käll-IP: med OVN (L4) bevaras klient-IP:n nativt; med Amphora L7 läs den från X-Forwarded-For; med Amphora L4 använd PROXY-protokoll.

Status och statistik

En lastbalanserare är active när den är frisk, eller degraded när den är tillhandahållen och redigerbar men dess backend-medlemmar för närvarande är ohälsosamma (inte ett fel — åtgärda medlemmarna eller hälsokontrollen). Amphora rapporterar trafikräknare (anslutningar, byte, fel) plus hälsa per medlem; OVN rapporterar endast medlemshälsa (inga räknare).

Koppla en publik IP för publik räckvidd och tillåt lyssnarportarna i den relevanta säkerhetsgruppen.

Relaterat