Cursusaanbod
Module 1: Microservice-ontwerp
• Een goede microservice-grens
• Gebruik van Domain Driven Design (DDD)
• Alternatieven voor zakelijke domeingrenzen (volatiliteit, data, technologie, organisatie)
• Opsplitsen van de monolith
• Te vroege decompositie
• Decompositie per laag
• Gebruik van decompositiemodellen (Strangler, Parallel Run, Feature Toggle)
• Overwegingen bij datadecompositie (prestaties, integriteit, transacties)
Module 2: Optimaliseren van Docker en de runtime
• De juiste basisimage kiezen
• Het aantal lagen minimaliseren
• Multi-stage builds gebruiken
• Image-optimalisatie (meervoudige regelargumenten sorteren, enz.)
• Gebruik maken van de build-cache
• Image-versies vastzetten
• Hulpbronnen fijn afstemmen
• Veilige containerpraktijken
• Runtimeconfiguratie voor prestaties
Module 3: Kubernetes & Releasestrategieën
Overzicht van Kubernetes-implementaties
• Een initiële implementatie maken en uitvoeren
• Opties voor Kubernetes-implementaties
Rolling updates uitvoeren
• Rolling Updates begrijpen
• Een Rolling Update maken en uitvoeren
• Terugdraaien naar een vorige versie van de implementation
Canary-implementaties uitvoeren
• Canary-deployments begrijpen
• Een Canary Deployment maken en uitvoeren
Blue-green implementaties uitvoeren
• Blue-green deployments begrijpen
• Een Blue-Green Deployment maken en uitvoeren
Jobs en CronJobs draaien
• Een Job en CronJob maken
Monitoring- en probleemsporing taken uitvoeren
• Probleemspeuringstechnieken met kubectl
Module 4: Automatisering & operationele efficiëntie
Gebruik van Python voor het automatiseren van veelvoorkomende taken in Kubernetes
• Gebruik van Python om administratieve operaties uit te voeren in Kubernetes
• Gebruik van Python om configuratieobjecten te definiëren
• Gebruik van Python om deployment-objecten te maken
• Luisteren naar Kubernetes-events met Python
• Schalen van een Deployment met Python
De uitdagingen begrijpen bij het automatiseren van implementaties
• Declaratieve configuratie met Kubernetes
• De integriteit van de configuratie beheren
Het GitOps-aanpak gebruiken om deployments te automatiseren
• Principes van GitOps
• Introductie van Flux
• Flux installeren in een Kubernetes-cluster
Flux configureren voor geautomatiseerde implementaties
• Gebruik van meldingen
• De structuur van het bronrepository
Omgaan met applicatie-updates met Image-automatisering
• Een applicatiedeployment bijwerken met Flux
• Containersafbeeldingsrepositories scannen op tags
• Beleid definiëren voor de selectie van de nieuwste image
• Flux configureren om automatische image-updates uit te voeren
Module 5: Observabiliteit & rootcause-helderheid
Kubernetes-logboekregistratie en tracing mogelijkheden
• Waarom zijn logboekregistratie en tracing belangrijk?
• Toegang krijgen tot Kubernetes-logs
• Pod- en containerlogs
• Control Plane logs
• Resourcegebruik van nodes en pods
Het verzamelen en analyseren van logs
• Logaggregatie
• Logvisualisatie
Distributed tracing in Kubernetes
• Wat is distributed tracing?
• OpenTelemetry gebruiken
• Distributed tracing-tools
• Instrumenteren van een applicatie
• Tracing gebruiken om prestatieproblemen te vinden
Monitoring met Prometheus en Grafana
• Observabiliteitsconcepten
• Monitoring-tools
• Prometheus-instrumentatie gebruiken
Geavanceerde use cases voor logboekregistratie
• Logs verwerken
• Filters toepassen op logs en logs verrijken
• Event Sourcing
Module 6: Clustercrisis-simulatie & incidentrespons
• Begrip van verschillende soorten fouten in een clusteromgeving
• Simuleren van nodefouten
• Pod-evictie & resource-uitputtingsscenario
• Netwerkproblemen
• DNS-fouten voor het afhandelen van applicatie-timeouts
• Een API Server-storing simuleren
• Simuleren van hoog verkeer om de systeemstabiliteit te testen
• Opslagfout
• Configuratiefouten
• Begrip van procedures voor het rapporteren van incidenten
Module 7: AI ter ondersteuning van probleemoplossing
• Voordelen van generatieve AI voor Kubernetes
• K8sGPT CLI-architectuur
• De K8sGPT CLI installeren
• K8sGPT-opdrachten en gebruik
• Gebruik van K8sG Analyzers (podAnalyzer, pvcAnalyzer, rsAnalyzer, enz.)
• Analyse van het cluster met K8sGPT
• Analyse van real-time problemen met K8sGPT
• In-cluster-operator voor K8sGPT
Vereisten
- Basiskennis van de Linux-opdrachtregel
- Ervaring met applicatieontwikkeling of systeembeheer
- Vertrouwdheid met containers (Docker-concepten)
- Begrip van Kubernetes-principes (pods, deployments, services)
- Algemeen begrip van softwarearchitectuur (bijv. APIs, services)
Doelgroep:
- DevOps Engineers
- Site Reliability Engineers (SRE's)
- Backend- / Softwareontwikkelaars die werken met microservices
- Cloud Engineers en Platform Engineers
-
Systeembeheerders die overstappen 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