AWS Solutions Architect · leksjon

ALB vs NLB vs GLB: Når bør De bruke hva

Forstå forskjellene mellom Application Load Balancer, Network Load Balancer og Gateway Load Balancer, og tilpass hver av dem til riktig bruksområde.

Leksjon 1 av 413 trinn

ALB vs NLB vs GLB: Når bør De bruke hva er en gratis leksjon i AWS Solutions Architect på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i AWS Solutions Architect, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AWS Solutions Architect inneholder totalt 4 leksjoner.

Oversikt over Elastic Load Balancing

Elastic Load Balancing (ELB) fordeler automatisk innkommende applikasjonstrafikk på flere mål—EC2-instanser, containere, Lambda-funksjoner eller IP-adresser. ELB er en administrert tjeneste, noe som betyr at AWS håndterer klargjøring, skalering og tilgjengelighet for selve lastbalansereren på tvers av flere AZ-er.

AWS tilbyr tre typer lastbalanserere under ELB-paraplyen: Application Load Balancer (ALB), Network Load Balancer (NLB) og Gateway Load Balancer (GWLB). Hver av dem opererer på et annet lag i OSI-modellen og er optimalisert for ulike bruksområder.

Application Load Balancer (ALB)

ALB opererer på lag 7 (HTTP/HTTPS) i OSI-modellen. Den kan undersøke HTTP-headere, stier, spørrestrenger, vertsnavn og informasjonskapsler for å ta intelligente rutingsbeslutninger. ALB er det naturlige valget for webapplikasjoner, mikrotjenester og API-endepunkter som trenger innholdsbasert ruting.

Viktige ALB-funksjoner: stibasert ruting (/api/* til én målgruppe, /static/* til en annen), vertsbasert ruting (ulike virtuelle verter til ulike backender), ruting basert på HTTP-headere og spørrestrenger, støtte for WebSocket og støtte for HTTP/2. ALB kan rute til EC2-instanser, containere (ECS/EKS), Lambda-funksjoner og IP-adresser.

# Create an ALB
aws elbv2 create-load-balancer \
  --name my-alb \
  --subnets subnet-aaaa1111 subnet-bbbb2222 \
  --security-groups sg-12345678 \
  --type application

Network Load Balancer (NLB)

NLB opererer på lag 4 (TCP/UDP/TLS). Den ruter pakker basert på data fra IP-protokollen uten å undersøke applikasjonsinnholdet. NLB er utviklet for ekstrem ytelse: den håndterer millioner av forespørsler per sekund med svært lav latenstid (vanligvis under 100 mikrosekunder).

Viktige NLB-funksjoner: statiske IP-adresser per AZ (én Elastic IP per subnett), TLS-gjennomkobling (videresend kryptert trafikk uten dekryptering), bevaring av klientens IP-adresse og støtte for UDP-protokoller (for eksempel DNS, RADIUS og spillservere). NLB kan ikke utføre innholdsbasert ruting eller undersøke HTTP-headere.

# Create an NLB
aws elbv2 create-load-balancer \
  --name my-nlb \
  --subnets subnet-aaaa1111 subnet-bbbb2222 \
  --type network

Gateway Load Balancer (GWLB)

GWLB opererer på lag 3 (nettverkslaget) og er utelukkende utviklet for distribusjon, skalering og administrasjon av virtuelle nettverksapparater fra tredjeparter—brannmurer, systemer for inntrengingsdeteksjon og -forebygging (IDS/IPS) samt systemer for dyp pakkeinspeksjon.

GWLB bruker GENEVE-protokollen (port 6081) til å kapsle inn trafikk og sende den til apparatparken Deres. Apparatet undersøker pakken og returnerer den gjennom samme GWLB-endepunkt. Trafikken flyter transparent uten at det kreves rutingsendringer i kilde-VPC-en. Dette er standardmønsteret for å sette inn sentralisert sikkerhetsinspeksjon i AWS VPC-trafikkflyter.

Bruksområder for ALB

Velg ALB når:

  • De trenger HTTP/HTTPS-innholdsbasert ruting (sti, vert, header eller spørrestreng)
  • Backend-løsningen Deres inkluderer Lambda-funksjoner eller ECS-containere
  • De trenger WebSocket- eller HTTP/2-tilkoblinger
  • De ønsker å integrere med AWS WAF for sikkerhet i webapplikasjonen på lastbalanseringslaget
  • De bygger en mikrotjenestearkitektur med mange tjenester på ulike URL-stier
  • De trenger SSL/TLS-terminering på lastbalansereren

ALB er det riktige svaret på de fleste spørsmål om lastbalansering for webapplikasjoner og REST-API-er på SAA-C03-eksamen.

Bruksområder for NLB

Velg NLB når:

  • De trenger ekstrem ytelse (millioner av forespørsler per sekund, latenstid på under ett millisekund)
  • De krever statiske IP-adresser som partnere eller brannmurer kan tillate i allowlister
  • De trenger å håndtere UDP-trafikk (spill, DNS, RADIUS eller IoT)
  • De ønsker TLS-gjennomkobling uten dekryptering på lastbalansereren (ende-til-ende-kryptering til målet)
  • De trenger å bevare klientens kilde-IP direkte på TCP-nivå
  • De bruker AWS PrivateLink til å eksponere tjenester for andre VPC-er eller kontoer (NLB kreves for PrivateLink)

Bruksområder og arkitektur for GWLB

Velg GWLB når De trenger å:

  • Sette inn tredjeparts brannmurapparater (Palo Alto, Fortinet eller Check Point) i nettverkstrafikkflyten
  • Utføre dyp pakkeinspeksjon på VPC-nivå for all innkommende eller utgående trafikk
  • Skalere en flåte av IDS/IPS-apparater horisontalt med automatisk lastbalansering

Arkitektur: Trafikken flyter fra kilde-VPC → GWLB-endepunkt → apparat-VPC (der GWLB fordeler trafikken på apparatinstanser) → apparatet returnerer trafikken til GWLB → GWLB videresender den til den opprinnelige destinasjonen. Kilden og destinasjonen er ikke klar over inspeksjonen imellom.

Lastbalansering på tvers av soner

Lastbalansering på tvers av soner fordeler trafikken jevnt på alle registrerte mål i alle aktiverte AZ-er, uavhengig av hvilken AZ-noden til lastbalansereren mottok forespørselen i. Uten lastbalansering på tvers av soner fordeler noden i hver AZ bare trafikk til mål i sin egen AZ.

ALB har lastbalansering på tvers av soner aktivert som standard uten ekstra kostnad. NLB har dette deaktivert som standard—aktivering medfører kostnader for dataoverføring mellom AZ-er. GWLB har lastbalansering på tvers av soner deaktivert som standard. Aktiver funksjonen når antallet mål er ujevnt fordelt mellom AZ-er, for å unngå overbelastede punkter.

Sammenligning av protokoller og funksjoner

Rask sammenligningstabell for eksamen:

  • OSI-lag: ALB = 7 (HTTP), NLB = 4 (TCP/UDP), GWLB = 3 (IP)
  • Protokoller: ALB = HTTP, HTTPS, WebSocket; NLB = TCP, UDP, TLS; GWLB = alle IP-protokoller via GENEVE
  • Statisk IP: ALB = Nei (bruk mønsteret NLB + ALB); NLB = Ja (1 per AZ); GWLB = Ikke relevant
  • WAF-integrasjon: ALB = Ja; NLB = Nei; GWLB = Nei
  • Lambda-mål: ALB = Ja; NLB = Nei; GWLB = Nei
  • Tilkoblingstømming: alle tre støtter forsinkelse ved avregistrering

ALB med AWS WAF

ALB integreres direkte med AWS WAF for regional beskyttelse (i motsetning til WAF på CloudFront for global beskyttelse ved kanten). Ved å knytte en WAF Web ACL til en ALB kan De filtrere HTTP-forespørsler før de når applikasjonen, og blokkere SQL-injection, XSS, kjente ondsinnede IP-adresser og klienter som overskrider grenseverdier.

Bruk ALB + WAF når De ønsker sikkerhetsinspeksjon på lastbalanseringslaget (for eksempel for å beskytte API-er som ikke leveres gjennom CloudFront). WAF Web ACL-er som er knyttet til ALB-er, må være i samme region som ALB-en og ha omfanget REGIONAL (i motsetning til CloudFront WAF, som krever omfanget CLOUDFRONT i us-east-1).

NLB med PrivateLink

AWS PrivateLink bruker NLB til å eksponere tjenester i én VPC for forbrukere i andre VPC-er eller AWS-kontoer uten krav om VPC-peering, en internett-gateway eller NAT. Tjenesteleverandøren oppretter en NLB foran tjenesten og oppretter en VPC Endpoint Service. Forbrukerne oppretter et Interface VPC Endpoint i sin VPC som peker til tjenesten.

Trafikken går over AWS sitt private nettverk og passerer aldri internett. PrivateLink er standardmønsteret for SaaS-leverandører på AWS og for å eksponere delte tjenester (for eksempel en sentralisert sikkerhetstjeneste) for flere interne AWS-kontoer.

Rask kontroll

Test forståelsen Deres av AWS Solutions Architect-konsepter (SAA-C03) fra denne leksjonen.

Oppsummering av leksjonen

I denne leksjonen lærte De at ALB ruter på lag 7 (HTTP) med innholdsbaserte regler, WAF-integrasjon og Lambda-mål, at NLB ruter på lag 4 (TCP/UDP) med statiske IP-adresser og ekstrem gjennomstrømming, og at GWLB distribuerer virtuelle nettverksapparater på lag 3 ved hjelp av GENEVE. Knytt lastbalansereren til kravene til protokoller og funksjoner. Neste tema er målgrupper og helsekontroller.

Gratis å komme i gang

Lær deg AWS Solutions Architect med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
30
Leksjoner
120

Ofte stilte spørsmål

Er leksjonen «ALB vs NLB vs GLB: Når bør De bruke hva» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien AWS Solutions Architect, inkludert «ALB vs NLB vs GLB: Når bør De bruke hva», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i AWS Solutions Architect inneholder totalt 4 leksjoner.

Hva lærer jeg i «ALB vs NLB vs GLB: Når bør De bruke hva»?

Forstå forskjellene mellom Application Load Balancer, Network Load Balancer og Gateway Load Balancer, og tilpass hver av dem til riktig bruksområde. Du øver på AWS Solutions Architect med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med AWS Solutions Architect?

Ingen tidligere erfaring er nødvendig. AWS Solutions Architect på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «ALB vs NLB vs GLB: Når bør De bruke hva»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne AWS Solutions Architect-leksjonen?

Ja. Alle AWS Solutions Architect-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. ALB vs NLB vs GLB: Når bør De bruke hva
  2. Målgrupper og helsesjekker
  3. Listenerregler og stibasert ruting
  4. SSL-terminering og klebrige økter
← Tilbake til AWS Solutions Architect