Cursusaanbod
Module 1: Microservices Ontwerp
• Een goede microservicegrens
• Het gebruik van Domain Driven Design (DDD)
• Alternatieven voor bedrijfsdomein-grenzen (volatiliteit, gegevens, technologie, organisatie)
• De monolith splitten
• Premature decompositie
• Decompositie per laag
• Het gebruik van decompositiepatronen (Strangler, Parallel Run, Feature Toggle)
• Gegevensdecompositie-zorgen (prestaties, integriteit, transacties)
Module 2: Docker en de Runtime Optimaliseren
• Het kiezen van het juiste basisimage
• De aantal lagen minimaliseren
• Multi-stage builds gebruiken
• Image optimalisatie (multi-line argumenten sorteren, etc.)
• Het build-cache benutten
• Image versies pinnen
• Resource-toewijzing fijnafstellen
• Veilige containerpraktijken
• Runtime-configuratie voor prestaties
Module 3: Kubernetes & Release Strategieën
Kubernetes Deployments Overzicht
• Een initiële deployment maken en uitvoeren
• Kubernetes Deployment Opties
Rolling Update Deployments uitvoeren
• Rolling Update begrijpen
• Een Rolling Update maken en uitvoeren
• Deployment terugdraaien
Canary Deployments uitvoeren
• Canary Deployments begrijpen
• Een Canary Deployment maken en uitvoeren
Blue-Green Deployments uitvoeren
• Blue-Green Deployments begrijpen
• Een Blue-Green Deployment maken en uitvoeren
Jobs en CronJobs uitvoeren
• Een Job en CronJob maken
Monitoring- en troubleshoot-taken uitvoeren
• Troubleshooting-technieken met kubectl
Module 4: Automatisering & Operationele Efficiëntie
Python gebruiken om veelvoorkomende taken in Kubernetes te automatiseren
• Python gebruiken voor administratieve operaties in Kubernetes
• Python gebruiken om configuratieobjecten te definiëren
• Python gebruiken om deploymentobjecten te maken
• Kubernetes-gebeurtenissen bewaken met Python
• Een deployment schalen met Python
De uitdagingen van automatisering bij deployments begrijpen
• Declaratieve configuratie met Kubernetes
• De integriteit van de configuratie beheren
Het GitOps-benadering gebruiken voor het automatiseren van deployments
• GitOps-principes
• Flux introduceren
• Flux installeren op een Kubernetes-cluster
Flux configureren voor geautomatiseerde deployments
• Meldingen gebruiken
• De structuur van de bronrepository
Toepassings-updates beheren met image-automatisering
• Een toepassingsdeployment bijwerken met Flux
• Containerimage-repositories scannen voor tags
• Beleid definiëren voor de selectie van de nieuwste image
• Flux configureren om automatische image-updates uit te voeren
Module 5: Observabiliteit & Oorzakelijke Klarheid
Kubernetes Logging en Tracing Capaciteiten
• Waarom logging en tracing belangrijk zijn
• Toegang krijgen tot de Kubernetes-logs
• Pod en container logs
• Control plane logs
• Resourcegebruik van knooppunten en pods
Logs verzamelen en analyseren
• Log aggregatie
• Log visualisatie
Gedistribueerd tracering in Kubernetes
• Wat is gedistribueerde tracering
• OpenTelemetry gebruiken
• Gedistribueerde traceringstools
• Een toepassing instrumenteren
• Tracering gebruiken om prestatieproblemen te vinden
Monitoring met Prometheus en Grafana
• Observabiliteitsconcepten
• Monitoring-tools
• Prometheus-instrumentering gebruiken
Geavanceerde toepassingen voor logging
• Logs verwerken
• Logs filteren en aanvullen
• Event sourcing
Module 6: Cluster Crisis Simulatie & Incident Response
• De verschillende soorten fouten in een clusteromgeving begrijpen
• Een knooppuntuitval simuleren
• Pod eviction en resource uitputtingscenario's
• Netwerkproblemen
• DNS-fouten voor toepassings-timeoutafhandeling
• Een API-serveruitval simuleren
• Hoge verkeersdruk simuleren voor systeemstabiliteit
• Opslagfout
• Configuratiefouten
• Incidentrapportageprocedures begrijpen
Module 7: AI voor Probleemoplossing Ondersteuning
• Voordelen van generatieve AI voor Kubernetes
• K8sGPT CLI-architectuur
• De K8sGPT CLI installeren
• K8sGPT-commando's en gebruik
• K8sGPT-analyzers gebruiken (podAnalyzer, pvcAnalyzer, rsAnalyzer, etc.)
• Een cluster analyseren met K8sGPT
• Real-time problemen analyseren met K8sGPT
• In-cluster operator voor K8sGPT
Vereisten
- Basis kennis van de Linux command line
- Ervaring met toepassingsontwikkeling of systeembeheer
- Vertrouwdheid met containers (Docker-concepten)
- Basis begrip van Kubernetes concepten (pods, deployments, services)
- Algemene kennis van softwarearchitectuur (bijvoorbeeld APIs, services)
Doelgroep:
- DevOps Engineers
- Site Reliability Engineers (SREs)
- Backend / Software Developers die werken met microservices
- Cloud Engineers en Platform Engineers
-
Systeembeheerders die overgaan naar Kubernetes-omgevingen
Getuigenissen (2)
Craig was erg betrokken bij de training, zorgde altijd dat we goed opletten, paste de voorbeelden aan op onze dagelijkse activiteiten en gaf altijd antwoord als er iets gevraagd werd, zelfs als de informatie niet in de presentatie stond.
Ecaterina Ioana Nicoale - BOOKING HOLDINGS ROMANIA SRL
Cursus - DevOps Foundation®
Automatisch vertaald
Hoog niveau van betrokkenheid en kennis van de trainer
Jacek - Softsystem
Cursus - DevOps Engineering Foundation (DOEF)®
Automatisch vertaald