Návrh Školení
Modul 1: Design mikroslužeb
• Dobře definované hranice mikroslužby
• Použití doménově orientovaného návrhu (DDD)
• Alternativy k hranicím obchodní domény (volatilita, data, technologie, organizace)
• Rozdělení monolitu
• Předčasné dekompozice
• Dekompozice podle vrstev
• Použití dekompozičních vzorů (Strangler, Parallel Run, Feature Toggle)
• Záležitosti při dekompozici dat (výkon, integritní, transakce)
Modul 2: Optimalizace Docker a runtime
• Výběr správné základní image
• Minimalizace počtu vrstev
• Použití multi-stažních buildů
• Optimalizace obrazu (řazení víceřádkových argumentů, atd.)
• Využívání budovací vyrovnávací paměti
• Přišpendlování verzí obrazů
• Jemné nastavení alokace zdrojů
• Bezpečnostní praktiky kontejnerů
• Konfigurace runtime pro výkon
Modul 3: Kubernetes a strategie nasazení
Přehled Kubernetes nasazení
• Vytváření a spouštění počátečního nasazení
• Možnosti nasazení Kubernetes
Provedení postupných aktualizacích nasazení
• Pojetí postupné aktualizace
• Vytváření a spouštění postupné aktualizace
• Vracení nasazení zpět
Provedení kanárových nasazení
• Pojetí kanárových nasazení
• Vytváření a spouštění kanárového nasazení
Provedení modro-zelených nasazení
• Pojetí modro-zelených nasazení
• Vytváření a spouštění modro-zeleného nasazení
Spouštění úloh a CronJobs
• Vytváření úlohy a CronJobu
Provedení úkolů monitorování a řešení potíží
• Techniky řešení potíží s kubectl
Modul 4: Automatizace a provozní efektivita
Použití Pythonu pro automatizaci běžných úkolů v Kubernetesu
• Použití Pythonu k provádění administrativních operací v Kubernetesu
• Použití Pythonu pro definici konfiguračních objektů
• Použití Pythonu pro vytváření nasazení
• Sledování událostí Kubernetes pomocí Pythonu
• Měření škálovatelnosti nasazení pomocí Pythonu
Pojetí výzev při automatizaci nasazení
• Deklarativní konfigurace s Kubernetesem
• Správa integritní konfigurace
Použití přístupu GitOps pro automatizaci nasazení
• Principy GitOps
• Představení Fluxu
• Instalace Fluxu do Kubernetes clusteru
Konfigurace Fluxu pro automatizovaná nasazení
• Použití oznámení
• Struktura zdrojového repozitáře
Správa aktualizací aplikací pomocí automatizace obrazů
• Aktualizace nasazení aplikace s Fluxem
• Skenování kontejnerových repozitářů pro tagy
• Definice zásad pro výběr nejnovějšího obrazu
• Konfigurace Fluxu pro automatické aktualizace obrazů
Modul 5: Observabilita a jasnost kořenových příčin
Možnosti logování a trasování v Kubernetesu
• Proč jsou důležitá logování a trasování
• Přístup k logům Kubernetesu
• Logy podů a kontejnerů
• Logy správní roviny
• Využití zdrojů uzlů a podů
Sběr a analýza logů
• Agregace logů
• Visualizace logů
Distribuované trasování v Kubernetesu
• Co je distribuované trasování
• Použití OpenTelemetry
• Nástroje pro distribuované trasování
• Instrumentace aplikací
• Použití trasování k nalezení výkonnostních problémů
Monitorování s Prometheus a Grafana
• Koncepty observabilita
• Nástroje pro monitorování
• Použití instrumentace Prometheus
Pokročilé použití logování
• Zpracování logů
• Filtrace a zbohatění logů
• Zdrojování událostí
Modul 6: Simulace krizových situací v clusteru a reakce na incidenty
• Pojetí různých typů selhání v clusterovém prostředí
• Simulace selhání uzlů
• Vyloučení podů a situace vyčerpaní zdrojů
• Sítěové problémy
• Selhání DNS pro časové výkonné zacházení s aplikacemi
• Simulace výpadku API serveru
• Simulace vysokého provozu pro stabilitu systému
• Selhání úložiště
• Konfigurační chyby
• Pojetí postupů hlášení incidentů
Modul 7: AI pro podporu řešení potíží
• Výhody generativního AI pro Kubernetes
• Architektura K8sGPT CLI
• Instalace K8sGPT CLI
• Příkazy a použití K8sGPT
• Použití analyzérů K8sGPT (podAnalyzer, pvcAnalyzer, rsAnalyzer, atd.)
• Analýza klastru pomocí K8sGPT
• Analýza aktuálních problémů pomocí K8sGPT
• V operačním prostředí pro K8sGPT
Požadavky
- Základní znalost příkazového řádku Linuxu
- Zkušenosti s vývojem aplikací nebo správou systémů
- Odborné znalosti kontejnerů (koncepty Dockeru)
- Základní pojetí konceptů Kubernetesu (pods, deployments, services)
- Obecné pojetí softwarové architektury (např. API, služby)
Cílová skupina:
- DevOps inženýři
- Inženýři spolehlivosti systému (SREs)
- Backend nebo softwaroví vývojáři pracující s mikroslužbami
- Cloud inženýři a platformoví inženýři
-
Správci systémů přecházející do prostředí Kubernetesu
Reference (1)
reálné příklady
Maria - Fundacja PTA
Kurz - Mastering Make: Advanced Workflow Automation and Optimization
Přeloženo strojem