Skip to content

Lastbalanserere ​

En lastbalanserer fordeler innkommende trafikk på tvers av en pool av backend-instanser. Frostmoln tilbyr to typer; du velger én ved oppretting — den kan ikke endres på stedet (for å bytte, slett og opprett på nytt).

Velge en type ​

l7 (standard)l4
LagL4 og L7 (HTTP/HTTPS)Kun L4 (TCP/UDP/SCTP)
TLS-termineringJa (via plattformens nøkkelhåndterer)Nei
PROXY protocol / header-innsettingJaNei
Kilde-IP til backenderX-Forwarded-For (L7) eller PROXY protocol (L4)Bevart nativt (L4)
OverheadKjører en lastbalanserer-VMIngen VM (innebygd i nettverksstrukturen)
Best forWebapper, TLS, HTTP-rutingHøy gjennomstrømming på L4, kilde-IP-sensitive arbeidslaster
bash
fm load-balancer create --name web-lb --vpc my-vpc --subnet my-subnet              # l7 (standard)
fm load-balancer create --name l4-lb  --vpc my-vpc --subnet my-subnet --type l4    # l4

fm lb er et alias for fm load-balancer. I Terraform er ressursen frostmoln_load_balancer og attributtet er type (type og størrelse er uforanderlige / force-new).

Intern vs. offentlig ​

En lastbalanserer er intern som standard (en privat VIP som er tilgjengelig innenfor VPC-en). For en offentlig lastbalanserer, tildel en offentlig IP først og send den med:

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

Lyttere — og påkrevde tillatte CIDRer ​

En lytter aksepterer trafikk på en protokoll/port (f.eks. HTTPS:443). Lyttere er nekt-som-standard: du må angi klient-CIDRene som har lov til å nå dem — dette er påkrevd, ikke valgfritt. Bruk 0.0.0.0/0 for å akseptere fra hvor 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, medlemmer og helseovervåkere ​

  • En pool er settet med backend-medlemmer, med en lastbalanserings-algoritme: round_robin (standard), least_connections eller source_ip. (Pooler på en l4-lastbalanserer må bruke source_ip_port.)
  • Medlemmer er backend-instanser (adresse + port, valgfri vekt, valgfri backup). Medlemmer utenfor lastbalansererens subnett trenger kryss-subnett-flagget.
  • En helseovervåker sonderer medlemmer (tcp / http / https, med forsinkelse, tidsavbrudd, gjentakelser, og for HTTP en sti + forventede koder) og fjerner usunne medlemmer fra rotasjonen.
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 protocol og kilde-IP (l7) ​

  • TLS-terminering — opprett en terminated_https-lytter som refererer til et TLS-sertifikat; lastbalansereren terminerer TLS og videresender til poolen. (Kun l7.)
  • PROXY protocol (v1/v2) — bevarer den ekte klient-IP-en til L4-backender; medlemmene dine må være konfigurert til å akseptere PROXY-headeren. (Kun l7.)
  • Kilde-IP: på en l4-lastbalanserer bevares klient-IP-en alltid. På en l7 avhenger det av lytteren: en L7-lytter terminerer forbindelsen, så les klient-IP-en fra X-Forwarded-For; en L4-lytter bevarer den, eller bruk PROXY protocol for å sende den eksplisitt.

Status og statistikk ​

En lastbalanserer er active når den er sunn, eller degraded når den er klargjort og redigerbar, men backend-medlemmene for øyeblikket er usunne (ikke en feil — fiks medlemmene eller helsesjekken). En l7-lastbalanserer rapporterer trafikktellere (forbindelser, byte, feil) pluss helse per medlem; en l4 rapporterer kun medlemshelse (ingen tellere).

Knytt til en offentlig IP for offentlig rekkevidde og tillat lytter-portene i den relevante sikkerhetsgruppen.

Relatert ​