Definitie
Kubernetes (vaak afgekort als K8s) is een open-source platform dat containers automatisch beheert over een groep servers heen. Containers zijn ingepakte stukjes software die overal hetzelfde draaien. Kubernetes zorgt ervoor dat de juiste hoeveelheid containers draait, verdeelt verkeer over die containers, en vervangt wat stuk gaat zonder menselijke interventie.
Het verschil met handmatig serverbeheer: in plaats van zelf in te loggen op machines om updates te installeren of crashes op te lossen, beschrijf je in een configuratiebestand de gewenste eindstand. Kubernetes vergelijkt continu de werkelijkheid met die gewenste stand en stuurt automatisch bij. Dat principe heet declarative infrastructure.
Waarom het ertoe doet voor MKB
Voor MKB-bedrijven met een eigen softwareproduct of webapplicatie biedt Kubernetes drie dingen: schaalbaarheid op afroep, voorspelbare uitrolprocessen en minder afhankelijkheid van een specifieke cloud-leverancier. Een applicatie die op piekmomenten 10 keer zoveel servers nodig heeft, schaalt automatisch op en weer af.
De keerzijde: Kubernetes is complex. Voor een team met een handvol developers en een eenvoudige applicatie is het overkill. Pas vanaf het moment dat je meerdere services draait, meerdere klanten met eigen omgevingen bedient, of zware piekbelasting hebt, gaat de investering terugverdienen.
Concreet voorbeeld
Een softwarebedrijf in Eindhoven biedt een SaaS-platform aan voor 80 logistieke MKB-klanten. Aanvankelijk draaide alles op twee vaste virtuele machines bij een hoster. Bij piekbelasting (maandag-ochtend, bij maandafsluitingen) liep het systeem traag en klaagden klanten.
Na de overstap naar Kubernetes op een managed cluster (zoals Google GKE of Azure AKS) draaien de applicatiecontainers nu op 3 tot 15 nodes, afhankelijk van de belasting. Kosten voor de infrastructuur zakten van €1.800 naar €1.100 per maand omdat ’s nachts veel containers afgeschakeld worden. Uitrol van nieuwe versies duurt nu 4 minuten in plaats van een avond werk, met automatische rollback bij fouten.
Misverstanden en valkuilen
- “Iedereen heeft Kubernetes nodig.” Voor een simpele website of een applicatie met weinig verkeer is een traditionele server of een managed PaaS (zoals Heroku of Azure App Service) goedkoper en simpeler. Kubernetes is gereedschap voor schaal en complexiteit, geen doel op zich.
- “Met Kubernetes ben je vendor-onafhankelijk.” De API is open, maar in de praktijk gebruik je load balancers, opslag en netwerkconfiguratie van een specifieke cloud. Migreren tussen AWS, Azure of GCP is werk, geen druk op de knop.
- “Onze ontwikkelaars regelen Kubernetes er wel bij.” Production-grade Kubernetes vraagt om specifieke expertise: networking, security, observability en incident response. Onderschat de leercurve en de tijd voor beheer niet.
- “Managed Kubernetes neemt al het werk uit handen.” Een managed dienst (GKE, EKS, AKS) beheert de control plane, maar de applicaties, configuraties, scaling-regels en updates blijven jouw verantwoordelijkheid.
Wanneer moet je hiervan wakker liggen, wanneer niet
Wakker liggen: als jouw bedrijf eigen software in productie draait voor meerdere klanten, of als je SaaS-leverancier Kubernetes gebruikt en jij verantwoordelijk bent voor uptime. Slecht ingerichte clusters lekken geld (overcapaciteit) en vormen een security-risico door verkeerd geconfigureerde permissies.
Niet wakker liggen: als jouw bedrijf software vooral inkoopt als SaaS en zelf geen applicaties in productie draait. De technologie waarop een leverancier draait is dan hun zorg, niet die van jou. Concentreer je op de SLA en data-portabiliteit.
Gerelateerde termen
- Containerization: de onderliggende techniek die Kubernetes orchestreert.
- Microservices: applicatie-architectuur waarvoor Kubernetes vaak wordt ingezet.
- Cloud computing: Kubernetes draait meestal in de cloud, vaak als managed dienst.
- DevOps: Kubernetes is een hoeksteen van moderne DevOps-praktijken.
- CI/CD: continue integratie en uitrol koppelen direct aan Kubernetes-deployments.
- Serverless: alternatief model dat juist weg-abstraheert van clusterbeheer.