ALB versus NLB versus GLB: wanneer gebruikt u welke
Begrijp de verschillen tussen Application, Network en Gateway Load Balancers en koppel elk aan de ideale use-case.
ALB versus NLB versus GLB: wanneer gebruikt u welke is een gratis AWS Solutions Architect-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject AWS Solutions Architect. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus AWS Solutions Architect bevat in totaal 4 lessen.
Overzicht van Elastic Load Balancing
Elastic Load Balancing (ELB) verdeelt binnenkomend applicatieverkeer automatisch over meerdere doelen—EC2-instanties, containers, Lambda-functies of IP-adressen. ELB is een beheerde service, wat betekent dat AWS zorgt voor het beschikbaar stellen, schalen en beschikbaar houden van de load balancer zelf over meerdere AZ's.
AWS biedt drie typen load balancers binnen ELB: Application Load Balancer (ALB), Network Load Balancer (NLB) en Gateway Load Balancer (GWLB). Elk type werkt op een andere laag van het OSI-model en is geoptimaliseerd voor andere gebruiksscenario's.
Application Load Balancer (ALB)
De ALB werkt op laag 7 (HTTP/HTTPS) van het OSI-model. Deze kan HTTP-headers, paden, querytekenreeksen, hostnamen en cookies inspecteren om intelligente routeringsbeslissingen te nemen. ALB is de standaardkeuze voor webapplicaties, microservices en API-eindpunten die routering op basis van inhoud nodig hebben.
Belangrijke functies van ALB: routering op basis van paden (/api/* naar de ene doelgroep, /static/* naar een andere), routering op basis van hosts (verschillende virtuele hosts naar verschillende backends), routering op basis van HTTP-headers en querytekenreeksen, ondersteuning voor WebSocket en ondersteuning voor HTTP/2. ALB kan routeren naar EC2-instanties, containers (ECS/EKS), Lambda-functies en IP-adressen.
# Create an ALB
aws elbv2 create-load-balancer \
--name my-alb \
--subnets subnet-aaaa1111 subnet-bbbb2222 \
--security-groups sg-12345678 \
--type applicationNetwork Load Balancer (NLB)
De NLB werkt op laag 4 (TCP/UDP/TLS). Deze routeert pakketten op basis van gegevens uit het IP-protocol, zonder de inhoud van de applicatie te inspecteren. NLB is ontworpen voor extreme prestaties: deze verwerkt miljoenen aanvragen per seconde met ultralage latentie (doorgaans minder dan 100 microseconden).
Belangrijke functies van NLB: statische IP-adressen per AZ (één Elastic IP per subnet), TLS-doorgifte (versleuteld verkeer doorsturen zonder het te ontsleutelen), behoud van het IP-adres van de client en ondersteuning voor UDP-protocollen (bijvoorbeeld DNS, RADIUS en gameservers). NLB kan geen routering op basis van inhoud uitvoeren en geen HTTP-headers inspecteren.
# Create an NLB
aws elbv2 create-load-balancer \
--name my-nlb \
--subnets subnet-aaaa1111 subnet-bbbb2222 \
--type networkGateway Load Balancer (GWLB)
De GWLB werkt op laag 3 (netwerklaag) en is uitsluitend ontworpen voor het implementeren, schalen en beheren van virtuele netwerkapparaten van derden—firewalls, systemen voor inbraakdetectie en -preventie (IDS/IPS) en systemen voor diepe pakketinspectie.
GWLB gebruikt het GENEVE-protocol (poort 6081) om verkeer in te kapselen en naar je verzameling apparaten te sturen. Het apparaat inspecteert het pakket en stuurt het via hetzelfde GWLB-eindpunt terug. Het verkeer stroomt transparant door zonder dat routeringswijzigingen in de bron-VPC nodig zijn. Dit is het standaardpatroon voor het invoegen van centrale beveiligingsinspectie in AWS VPC-verkeersstromen.
Gebruiksscenario's voor ALB
Kies ALB wanneer:
- Je routering op basis van HTTP/HTTPS-inhoud nodig hebt (pad, host, header, querytekenreeks)
- Je backend Lambda-functies of ECS-containers bevat
- Je WebSocket- of HTTP/2-verbindingen nodig hebt
- Je AWS WAF wilt integreren voor beveiliging van webapplicaties op de laag van de load balancer
- Je een microservicesarchitectuur bouwt met veel services op verschillende URL-paden
- Je SSL/TLS-beëindiging op de load balancer nodig hebt
ALB is het juiste antwoord voor de meeste examenvragen over load balancing van webapplicaties en REST-API's op het SAA-C03-examen.
Gebruiksscenario's voor NLB
Kies NLB wanneer:
- Je extreme prestaties nodig hebt (miljoenen aanvragen per seconde, latentie van minder dan een milliseconde)
- Je statische IP-adressen nodig hebt die partners of firewalls op een allowlist kunnen zetten
- Je UDP-verkeer moet verwerken (games, DNS, RADIUS, IoT)
- Je TLS-doorgifte wilt zonder ontsleuteling op de load balancer (end-to-endversleuteling naar het doel)
- Je het bron-IP-adres van de client standaard op TCP-niveau moet behouden
- Je AWS PrivateLink gebruikt om services beschikbaar te maken voor andere VPC's of accounts (voor PrivateLink is NLB vereist)
Gebruiksscenario's en architectuur van GWLB
Kies GWLB wanneer je het volgende moet doen:
- Virtuele firewallapparaten van derden (Palo Alto, Fortinet, Check Point) in je netwerkverkeersstroom invoegen
- Diepe pakketinspectie uitvoeren op VPC-niveau voor al het inkomende of uitgaande verkeer
- Een verzameling IDS/IPS-apparaten horizontaal schalen met automatische load balancing
Architectuur: verkeer stroomt van de bron-VPC → GWLB-eindpunt → apparaat-VPC (waar GWLB het verkeer over apparaatinstanties verdeelt) → het apparaat stuurt het verkeer terug naar GWLB → GWLB stuurt het door naar de oorspronkelijke bestemming. De bron en bestemming merken niets van de inspectie ertussen.
Load balancing over zones heen
Load balancing over zones heen verdeelt verkeer gelijkmatig over alle geregistreerde doelen in alle ingeschakelde AZ's, ongeacht in welke AZ het knooppunt van de load balancer de aanvraag heeft ontvangen. Zonder load balancing over zones heen verdeelt het knooppunt van elke AZ het verkeer alleen over doelen in de eigen AZ.
Bij ALB is load balancing over zones heen standaard ingeschakeld zonder extra kosten. Bij NLB is dit standaard uitgeschakeld—inschakelen brengt kosten voor gegevensoverdracht tussen AZ's met zich mee. Bij GWLB is load balancing over zones heen standaard uitgeschakeld. Schakel dit in wanneer het aantal doelen per AZ verschilt, om overbelasting van afzonderlijke zones te voorkomen.
Protocollen en functies vergelijken
Snelle vergelijkingstabel voor het examen:
- OSI-laag: ALB = 7 (HTTP), NLB = 4 (TCP/UDP), GWLB = 3 (IP)
- Protocollen: ALB = HTTP, HTTPS, WebSocket; NLB = TCP, UDP, TLS; GWLB = alle IP-protocollen via GENEVE
- Statisch IP-adres: ALB = Nee (gebruik het patroon NLB + ALB); NLB = Ja (1 per AZ); GWLB = n.v.t.
- WAF-integratie: ALB = Ja; NLB = Nee; GWLB = Nee
- Lambda-doel: ALB = Ja; NLB = Nee; GWLB = Nee
- Verbindingen beëindigen: alle drie ondersteunen een vertraging bij deregistratie
ALB met AWS WAF
ALB integreert standaard met AWS WAF voor regionale bescherming (in tegenstelling tot WAF op CloudFront voor wereldwijde bescherming aan de edge). Door een WAF Web ACL aan een ALB te koppelen, kun je HTTP-aanvragen filteren voordat ze je applicatie bereiken—en zo SQL-injecties, XSS, bekende kwaadwillende IP-adressen en clients die de snelheidslimieten overschrijden blokkeren.
Gebruik ALB + WAF wanneer je beveiligingsinspectie op de laag van de load balancer wilt uitvoeren (bijvoorbeeld om API's te beschermen die niet via CloudFront worden aangeboden). WAF Web ACL's die aan ALB's zijn gekoppeld, moeten zich in dezelfde regio als de ALB bevinden en moeten het REGIONAL-bereik hebben (in tegenstelling tot CloudFront WAF, waarvoor het CLOUDFRONT-bereik in us-east-1 vereist is).
NLB met PrivateLink
AWS PrivateLink gebruikt NLB om services in één VPC beschikbaar te maken voor gebruikers in andere VPC's of AWS-accounts, zonder VPC-peering, een internetgateway of NAT. De serviceprovider maakt een NLB vóór de service en maakt een VPC Endpoint Service. Gebruikers maken een Interface VPC Endpoint in hun VPC die naar de service verwijst.
Het verkeer loopt over het privénetwerk van AWS en gaat nooit via internet. PrivateLink is het standaardpatroon voor SaaS-providers op AWS en voor het beschikbaar maken van gedeelde services (bijvoorbeeld een gecentraliseerde beveiligingsservice) voor meerdere interne AWS-accounts.
Korte controle
Toets je begrip van de AWS Solutions Architect-concepten (SAA-C03) uit deze les.
Samenvatting van de les
In deze les heb je geleerd dat ALB op laag 7 (HTTP) routeert met regels op basis van inhoud, WAF-integratie en Lambda-doelen, dat NLB op laag 4 (TCP/UDP) routeert met statische IP-adressen en een extreem hoge verwerkingscapaciteit en dat GWLB virtuele netwerkapparaten implementeert op laag 3 met GENEVE. Koppel de load balancer aan de vereisten voor protocollen en functies. Hierna behandelen we doelgroepen en statuscontroles.
Leer AWS Solutions Architect met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “ALB versus NLB versus GLB: wanneer gebruikt u welke” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad AWS Solutions Architect, waaronder “ALB versus NLB versus GLB: wanneer gebruikt u welke”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus AWS Solutions Architect bevat in totaal 4 lessen.
Wat leer ik in “ALB versus NLB versus GLB: wanneer gebruikt u welke”?
Begrijp de verschillen tussen Application, Network en Gateway Load Balancers en koppel elk aan de ideale use-case. Je oefent met AWS Solutions Architect door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met AWS Solutions Architect te beginnen?
Ervaring vooraf is niet nodig. AWS Solutions Architect op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “ALB versus NLB versus GLB: wanneer gebruikt u welke”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over AWS Solutions Architect?
Ja. Elke les over AWS Solutions Architect bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- ALB versus NLB versus GLB: wanneer gebruikt u welke
- Target groups en health checks
- Listener rules en routing op basis van paden
- SSL-terminatie en sticky sessions