Deployments voor stateless apps
Gebruik Deployments om stateless applicaties te beheren, met ondersteuning voor rolling updates en rollbacks.
Deployments voor stateless apps is een gratis DevOps-bootcamp-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 DevOps-bootcamp. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Maak kennis met Kubernetes-Deployments
Welkom bij een fundamenteel concept in Kubernetes: Deployments! Dit is de belangrijkste bron voor het beheren van stateless applicaties.
Zie een Deployment als een blauwdruk voor je applicatie. Hiermee geef je Kubernetes aan hoeveel exemplaren (replica’s) van je app actief moeten zijn en hoe deze zonder downtime moeten worden bijgewerkt.

Verder dan Pods en ReplicaSets
Je hebt geleerd over Pods (de kleinste eenheid) en ReplicaSets (die een bepaald aantal Pods garanderen).
Een Deployment is gebaseerd op een ReplicaSet. Het biedt een abstractielaag op hoger niveau voor:
- ReplicaSets maken en bijwerken.
- Nieuwe versies van je applicatie uitrollen.
- Terugdraaien naar vorige versies als er iets misgaat.
Hierdoor worden je applicaties veel eenvoudiger en veiliger te beheren.
In een Deployment-YAML-bestand
Net als andere Kubernetes-bronnen worden Deployments gedefinieerd met YAML. Bekijk de basisstructuur:
apiVersion: geeft de Kubernetes API-versie aan (bijvoorbeeldapps/v1).kind: is voor een Deployment-bron altijdDeployment.metadata: bevat informatie zoals denamevan de Deployment en optionelelabels.
Met deze velden kan Kubernetes je Deployments identificeren en ordenen.
Replica’s en template opgeven
Het belangrijkste onderdeel van een Deployment is de sectie spec. Hier definieer je:
replicas: het gewenste aantal identieke Pods voor je applicatie.selector: hoe de Deployment de Pods vindt die hij beheert (met labels).template: in feite een Pod-definitie die de containers, volumes enzovoort voor elke Pod beschrijft.
De Deployment gebruikt de template om nieuwe Pods te maken.
Onze Nginx-Deployment
Hier volgt een eenvoudig manifest voor een Deployment van een Nginx-webserver. Hiermee geef je Kubernetes de opdracht om drie Nginx-Pods actief te houden.
Probeer elk onderdeel te begrijpen!
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80Je Deployment maken
Zodra je het YAML-bestand van je Deployment hebt (bijvoorbeeld nginx-deployment.yaml), kun je de Deployment in je Kubernetes-cluster maken met de opdracht kubectl apply.
Kubernetes zorgt er vervolgens voor dat het gewenste aantal Pods wordt gemaakt en onderhouden.
kubectl apply -f nginx-deployment.yamlJe kunt de status controleren met:
kubectl get deploymentsOpschalen en afschalen
Heb je meer of minder exemplaren van je applicatie nodig? Met Deployments schaal je eenvoudig! Je kunt het veld replicas in je YAML aanpassen en opnieuw toepassen, of een directe opdracht gebruiken:
kubectl scale deployment nginx-deployment --replicas=5Met deze opdracht geef je je Deployment direct de opdracht om twee extra Nginx-Pods te maken, zodat het totaal op vijf komt.
Updates zonder downtime
Een van de grootste voordelen van Deployments is de mogelijkheid om rolling updates uit te voeren. Wanneer je de Pod-template bijwerkt (bijvoorbeeld door de imageversie te wijzigen), schakelt Kubernetes niet alle oude Pods tegelijk uit.
In plaats daarvan vervangt Kubernetes de oude Pods geleidelijk door nieuwe, zodat je applicatie tijdens het hele updateproces beschikbaar blijft.
kubectl set image deployment/nginx-deployment nginx=nginx:1.16.1Eenvoudig terugdraaien
Een fout gemaakt in een update? Geen zorgen! Implementaties bewaren een geschiedenis van je revisies, zodat je eenvoudig kunt teruggaan naar een eerdere, stabiele versie.
Dit heet een rollback en het is een belangrijk vangnet voor implementaties.
kubectl rollout undo deployment/nginx-deploymentJe kunt de geschiedenis ook bekijken met kubectl rollout history deployment/nginx-deployment.
Tijd voor een implementatiequiz
Een ontwikkelaar werkt een Nginx Deployment bij van image nginx:1.14.2 naar nginx:1.16.1. Wat is het belangrijkste voordeel van het gebruik van een Kubernetes Deployment voor deze update?
Deployments: belangrijkste punten
Goed gedaan! Je hebt geleerd over Kubernetes Deployments, een krachtige resource voor het beheren van stateless applicaties.
- Deployments beheren ReplicaSets, die op hun beurt Pods beheren.
- Ze definiëren de gewenste toestand, waaronder het aantal
replicas. - Belangrijke functies zijn eenvoudig schalen, rolling updates zonder downtime en eenvoudig terugdraaien naar eerdere versies.
Vervolgens bekijken we Services om je applicaties beschikbaar te maken!
Leer DevOps-bootcamp 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
- 142
- Lessen
- 568
Veelgestelde vragen
Is de les “Deployments voor stateless apps” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad DevOps-bootcamp, waaronder “Deployments voor stateless apps”, 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 DevOps-bootcamp bevat in totaal 4 lessen.
Wat leer ik in “Deployments voor stateless apps”?
Gebruik Deployments om stateless applicaties te beheren, met ondersteuning voor rolling updates en rollbacks. Je oefent met DevOps-bootcamp 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 DevOps-bootcamp te beginnen?
Ervaring vooraf is niet nodig. DevOps-bootcamp 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 “Deployments voor stateless apps”?
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 DevOps-bootcamp?
Ja. Elke les over DevOps-bootcamp 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
- Deployments voor stateless apps
- Services voor netwerktoegang
- ConfigMaps en Secrets
- Ingress en externe routing