Orchestrazione di applicazioni con Kubernetes
Kubernetes è lo standard de facto per l’orchestrazione dei software container, utilizzato sia in ambienti cloud che on-premises. Questo corso offre una comprensione completa di Kubernetes, coprendo i concetti fondamentali della containerizzazione fino alle tecniche più specifiche e alle best practice per orchestrare container su cluster Kubernetes. I partecipanti apprenderanno come orchestrare e gestire applicazioni o microservizi containerizzati in ambienti di produzione, garantendo resilienza e scalabilità.
Fondamenti e architettura di Kubernetes
Introduzione a Kubernetes e all’orchestrazione dei container
Architettura e componenti di Kubernetes
Creazione di un cluster Kubernetes
Introduzione a kubectl
Oggetti fondamentali
Pod
Namespace
Label e annotazioni
Gestione della configurazione
Variabili d’ambiente
ConfigMap
Secret
Persistenza e Storage dei dati
Volumi
PersistentVolume (PV)
PersistentVolumeClaim (PVC)
StorageClass
Gestione del ciclo di vita delle applicazioni
Deployment
Probe: liveness, readiness, startup
StatefulSet
DaemonSet, Job, CronJob
Networking e accesso alle applicazioni
Service: ClusterIP, NodePort, LoadBalancer
Ingress e Ingress Controller
Network policy
CoreDNS, service discovery
Scheduling e gestione delle risorse
NodeSelector
Taint e Toleration
Affinity e Anti-Affinity
ResourceQuota e LimitRange
Requests & Limits
Strategie di aggionarmento e scalabilità
Strategie di aggiornamento e rollback
Autoscaling: HPA, VPA
Cluster Autoscaler
Sicurezza
Autenticazione e autorizzazione
RBAC
Gestione degli utenti e dei loro permessi
ServiceAccount
Osservabilità
Logging
Monitoring
Tool per l’osservabilità
Troubleshooting
Analisi degli eventi del ciclo di vita dei Pod
Kubernetes Events
Interactive Troubleshooting
Troubleshooting del DNS e della rete
Labs
Esercitazioni pratiche sull'orchestrazione dei container
Durata
35 ore
Obiettivi
Al termine del corso, i partecipanti saranno in grado di orchestrare e gestire applicazioni containerizzate utilizzando Kubernetes e applicando le best practices per la gestione di workload in ambienti di produzione.
Destinatari
Il corso è rivolto a figure tecniche che lavorano in contesti DevOps e IT che desiderano approfondire le proprie competenze sull’orchestrazione di container con Kubernetes. In particolare, è indicato per:
Developer e Aministratori di sistemi che vogliono comprendere e gestire applicazioni containerizzate su cluster Kubernetes
Ingegneri di sistemi interessati a orchestrazione dei container.
Prerequisiti
I partecipanti dovrebbero possedere:
una conoscenza di base sullo sviluppo del software e sul ciclo di vita delle applicazioni
una conoscenza di base sull’utilizzo di shell Linux o Microsoft PowerShell
familiarità con i concetti fondamentali sui software container
concetti di base sul networking in ambiente IT
un computer con sistema operativo Windows (oppure Linux o macOS)