dgt_k8s07 – Helm, Kustomize e CI/CD

Titolo del modulo: dgt_k8s07 – Helm, Kustomize e CI/CD

Descrizione del modulo:

Il modulo “dgt_k8s07 – Helm, Kustomize e CI/CD” tratta il deploy di applicazioni su Kubernetes ed è rivolto a sviluppatori e professionisti DevOps. Si occupa di tre strumenti e pratiche molto diffusi negli ambienti Kubernetes: Helm, Kustomize e le pratiche di Continuous Integration/Continuous Deployment CI/CD.

Helm: riconosciuto come il package manager de facto per Kubernetes, Helm semplifica il deploy e la gestione delle applicazioni sui cluster Kubernetes. In questo modulo imparerai come Helm pacchettizza, configura e distribuisce applicazioni complesse. Esploreremo i chart Helm, cioè raccolte di file che descrivono un insieme correlato di risorse Kubernetes, e capiremo perché Helm è diventato lo strumento standard per gestire applicazioni Kubernetes su larga scala.

Kustomize: parte integrante dell’ecosistema Kubernetes, Kustomize consente di personalizzare configurazioni YAML grezze, senza template. Il modulo spiega come Kustomize gestisce configurazioni specifiche per ambiente senza duplicare i file manifest. Imparerai come funzionano overlay e patch, rendendo più semplice mantenere la coerenza tra ambienti diversi pur rispettandone le esigenze specifiche.

CI/CD: le pipeline CI/CD servono a rilasciare software in modo rapido e affidabile. Il modulo tratta l’integrazione di Helm e Kustomize nei flussi CI/CD, abilitando test, build e deploy automatizzati. Si impara che cosa rende robusta una pipeline: una pipeline che controlla la qualità del codice e automatizza il rilascio dallo sviluppo alla produzione.

Nelle sessioni pratiche lavori solo in linguaggio naturale. Chiedi alla macchina di pacchettizzare un’applicazione come chart Helm e farne il deploy, di creare un overlay di staging e uno di produzione con Kustomize, o di aggiungere uno stage di deploy a una pipeline; poi apri il chart, il file dei values, la kustomization e la definizione della pipeline che ha prodotto, e li confronti con quanto hai imparato qui: i valori sono davvero parametrizzati, la patch punta alla risorsa giusta, la pipeline si ferma quando i test falliscono?

Obiettivi del modulo:

  • Comprendere il ruolo di Helm come package manager in Kubernetes e perché è considerato lo standard.
  • Comprendere i chart Helm abbastanza da farli creare e gestire alla macchina, e da rivedere i template e i values che scrive.
  • Imparare come Kustomize personalizza le configurazioni Kubernetes senza modificare i manifest di base, e verificare gli overlay generati dalla macchina.
  • Descrivere alla macchina come Helm e Kustomize devono inserirsi nelle pipeline CI/CD, e validare i flussi risultanti.
  • Affrontare scenari reali in linguaggio naturale, rafforzando la capacità di effettuare il deploy di applicazioni complesse e di intercettare gli errori prima che arrivino in produzione.

A chi è rivolto:

Questo modulo è rivolto a sviluppatori, amministratori di sistema, DevOps engineer e professionisti IT che lavorano con Kubernetes. È adatto sia a chi è alle prime armi con Helm e Kustomize sia a chi vuole studiare le pratiche CI/CD in un contesto Kubernetes, e fornisce le conoscenze necessarie per guidare e verificare questo lavoro.

Il modulo tratta l’uso di Helm, Kustomize e CI/CD per il deploy di applicazioni su Kubernetes.
Gli studenti possono caricare i propri esercizi nel Progetto Git dell’Academy DevOps & SRE. Per questo modulo, crea una cartella con il tuo username come nome nella seguente sottocartella: https://github.com/Garanti-Del-Talento/gdt_academy