Een load balancer van Wolkra verdeelt binnenkomend verkeer over meerdere servers in Frankfurt, controleert hun gezondheid en stuurt geen requests meer naar een server die faalt. Hij verwerkt layer 4- (TCP) en HTTP-verkeer, en kan via een privénetwerk servers bereiken die geen publiek IP hebben.
Waarom een load balancer
Eén server is een single point of failure. Met een load balancer vóór twee of meer servers kun je:
- Online blijven wanneer een server crasht, herstart of gepatcht wordt
- Horizontaal schalen door servers toe te voegen in plaats van steeds grotere plannen te nemen
- Veilig releasen door servers één voor één uit de rotatie te halen
- Appservers privé houden, met alleen de balancer zichtbaar op internet
Functies
- Layer 4-balancing (TCP) voor elke TCP-dienst
- HTTP-balancing voor websites en API's
- Health checks die falende targets verwijderen en ze terugzetten zodra ze hersteld zijn
- Flexibele targets: kies servers, gebruik een label selector zoals
role=webzodat nieuwe servers automatisch meedoen, of voeg IP-adressen toe - Ondersteuning voor privénetwerken: stuur verkeer naar servers zonder publiek IP via een privénetwerk
- Onbemeterd dataverkeer, zoals bij elke dienst van Wolkra, onder fair use
Zo werkt het
- Je maakt een load balancer aan. Hij krijgt een publiek adres.
- Je definieert services: op welke poort hij luistert en naar welke poort op de targets hij doorstuurt, via TCP of HTTP.
- Je voegt targets toe: servers, een label selector of IP's.
- Je stelt een health check in, bijvoorbeeld een HTTP-request naar
/healthom de paar seconden. - Clients maken verbinding met de balancer, die elke verbinding of request doorstuurt naar een gezond target.
Met een label selector is schalen niets meer dan een extra server aanmaken met het juiste label. De balancer pikt hem op, controleert zijn gezondheid en begint hem verkeer te sturen.
In de console
Open Load balancers, kies Create en voeg daarna services, targets en een health check toe. De console toont de gezondheid van elk target, zodat je in één oogopslag ziet welke servers in de rotatie zitten. Stapsgewijze instructies staan in de documentatie over load balancers.
Via de API
Load balancers, hun services en targets kun je beheren met de Wolkra API. Deploymentscripts kunnen een server uit de rotatie halen, updaten en weer toevoegen. In Composer teken je een load balancer vóór servers in een netwerk en zie je de totale maandkosten voordat je de stack toepast.
Een typische set-up
| Laag | Resource |
|---|---|
| Ingang | Load balancer met een publiek adres, HTTP op poort 80 en TCP op poort 443 |
| App | Twee of meer servers met label role=web, alleen in het privénetwerk |
| Data | Databaseserver in het privénetwerk |
| Uitgaand | NAT-gateway voor updates |
| Regels | Firewall die alleen de balancer toegang geeft tot de app-poort |
Gebruik placement groups om de appservers over hosts te spreiden, zodat één probleem met een host ze niet allemaal platlegt.
Typische toepassingen
- Webhosting en WordPress met meer dan één webserver
- API's en backends voor SaaS-startups
- Containerstacks bij Docker-hosting
- TCP-diensten zoals gameservers of message brokers
Health checks die werken
Een health check is zo goed als het endpoint dat hij aanroept. Met een paar gewoonten wordt hij betrouwbaar:
- Gebruik een apart pad zoals
/healthdat snel antwoordt en geen login nodig heeft. - Laat de check raken wat er echt toe doet, bijvoorbeeld een snelle databaseping, maar houd hem licht.
- Geef een fout terug als de app gebruikers niet kan bedienen, zodat de balancer de server eruit haalt.
- Laat tijdens een deploy de check bewust falen voordat je de app stopt, en laat het verkeer daarna leeglopen.
Prijsgrondslag
Een load balancer wordt per begonnen uur gefactureerd vanuit je prepaid tegoed, met de maandprijs als maximum. Er zijn geen kosten per GB of per request. Zie de prijzenpagina voor de actuele prijs.
Goed om te weten
- Load balancers draaien op dezelfde locatie als hun targets. Vandaag is dat Frankfurt.
- Health checks bepalen wat in de rotatie zit, dus zorg dat je app er snel op antwoordt.
- Voor het dataverkeer geldt fair use, zoals beschreven in het beleid voor acceptabel gebruik.
Gerelateerde producten
- Cloudservers als targets
- Privénetwerken en firewalls
- Floating IP's voor active/standby-set-ups
- Netwerk voor bandbreedte, IPv4 en IPv6
Zet er een load balancer voor
Laat je dienst met een paar klikken een uitgevallen server overleven. Maak een account aan bij Wolkra en maak een load balancer aan in Frankfurt.
Veelgestelde vragen
Wat voor verkeer kan een load balancer van Wolkra verwerken?
Hij verdeelt layer 4-verkeer (TCP) en HTTP-verkeer. Gebruik layer 4 voor elke TCP-dienst en HTTP als je wilt dat de balancer webrequests begrijpt.
Hoe weet een load balancer dat een server down is?
Hij voert health checks uit op elk target. Targets die de check niet halen, krijgen geen verkeer meer tot ze weer slagen.
Welke targets kan ik toevoegen?
Je kunt afzonderlijke servers toevoegen, label selectors die automatisch servers matchen, of IP-adressen.
Kan de load balancer servers zonder publiek IP bereiken?
Ja. Koppel de load balancer aan een privénetwerk, dan kan hij verkeer sturen naar servers in dat netwerk die geen publiek IP hebben.
Hoe wordt een load balancer gefactureerd?
Per uur vanuit je prepaid tegoed, met de maandprijs als maximum. Het dataverkeer is onbemeterd, zonder kosten per GB. Zie de prijzenpagina voor de actuele prijs.