Struttura del corso
Modulo 1: Introduzione all'Infrastructure as Code e a Terraform
- Concetti e benefici dell'IaC per ambienti on-premises e ibridi
- Panoramica di Terraform: provider, risorse, stato e ciclo di vita
- Installazione di Terraform, Azure CLI e strumenti richiesti
- Prima esercitazione pratica: scrittura e applicazione locale di una semplice configurazione Terraform
Modulo 2: HashiCorp Configuration Language (HCL) e basi della configurazione
- Sintassi HCL, risorse, attributi ed espressioni
- Variabili, output, locali e vincoli di tipo
- Utilizzo della CLI di Terraform: init, plan, apply, destroy e fmt
- Laboratorio pratico: creare una configurazione parametrizzata per una risorsa on-prem e una risorsa Azure
Modulo 3: Provider, risorse e basi del Provider Azure
- Comprensione dei provider e configurazione dei provider (provider AzureRM)
- Mappatura dell'infrastruttura sulle risorse di Terraform (networking, compute, storage)
- Gestione dell'autenticazione Azure e dei service principal per l'automazione
- Esercitazione pratica: provisioning di una rete virtuale Azure e di una semplice VM tramite Terraform
Modulo 4: Gestione dello stato, backends e collaborazione
- Stato di Terraform: scopo, formato e considerazioni sul ciclo di vita
- Backend remoti con Azure Storage Account e strategie di locking dello stato
- Workspace, ambienti e pattern di collaborazione per i team
- Laboratorio: configurare lo stato remoto in Azure Storage ed eseguire un flusso di lavoro multi-utente
Modulo 5: Modularizzazione, riutilizzo e migliori pratiche
- Creazione e utilizzo di moduli Terraform
- Input/output dei moduli, versionamento e pattern di registro
- Struttura delle cartelle, convenzioni di denominazione e struttura del repository mantenibile
- Esercitazione pratica: creare un modulo riutilizzabile per Azure VM + disco + rete e testarlo in diversi ambienti
Modulo 6: Gestione dei dispositivi virtuali Azure e integrazione On-Prem
- Gestione di Macchine Virtuali Azure, componenti di Virtual Desktop e ciclo di vita dei dispositivi tramite Terraform
- Pattern per la gestione ibrida dei dispositivi: collegamento tra risorse on-prem e dispositivi gestiti da Azure
- Integrazione di sistemi di gestione di volumi o dispositivi tramite data source e provider esterni
- Laboratorio: distribuire una flotta di VM Azure che rappresenta unità operative e configurare tagging dell'inventario e monitoraggio di base
Modulo 7: CI/CD, automazione e pipeline di distribuzione
- Integrazione di Terraform con CI/CD (GitHub Actions, pipeline Azure DevOps)
- Automazione di plan/apply con segreti sicuri e service principal
- Basi del Policy as Code (pattern Sentinel o Open Policy Agent) e controlli pre-distribuzione
- Esercitazione pratica: creare un semplice workflow GitHub Actions per plan e apply di Terraform su una sottoscrizione sandbox
Modulo 8: Sicurezza, segreti e pratiche operative
- Gestione dei segreti: integrazione con Azure Key Vault ed evitare dati sensibili nei file di stato
- Controllo degli accessi, RBAC e minimo privilegio per gli account di automazione
- Rilevamento delle deviazioni, riconciliazione dello stato e pratiche di rimedio di base
- Checklist: backup, audit e governance per l'infrastruttura gestita da Terraform
Modulo 9: Test, debug e troubleshooting
- Debug delle configurazioni Terraform e lettura efficace delle diff del piano
- Approcci per test unitari e di integrazione (terraform validate, tflint, kitchen-terraform)
- Pattern di errori comuni e strategie di risoluzione
- Laboratorio: eseguire strumenti di validazione e linting e correggere i problemi individuati
Modulo 10: Progetto finale — Scenario di distribuzione ibrida
- Esercizio di progettazione: pianificare una distribuzione di dispositivi on-prem + Azure utilizzando i pattern appresi
- Implementazione dei componenti principali utilizzando moduli, stato remoto e frammenti di pipeline CI/CD
- Presentazione della soluzione, discussione dei trade-off e revisione del runbook per le operazioni
Riepilogo e prossimi passi
Requisiti
- Comprensione dei concetti base di networking e virtualizzazione
- Familiarità con la riga di comando di Windows o Linux
- Nozioni base dei concetti di infrastruttura cloud o on-premises
Pubblico target
- Amministratori di sistema e ingegneri di piattaforma
- Praticanti DevOps che iniziano con l'Infrastructure as Code
- Team IT che gestiscono infrastrutture ibride (on-prem + Azure)
Recensioni (3)
Il ritmo, nella maggior parte dei casi, è stato fantastico. Michal ha dimostrato grande abilità nel mantenere alta l'attenzione del pubblico e nel far seguire l'esposizione a tutti, per la maggior parte dei momenti.
Asif Shaikh - Carpmaels & Ransford
Corso - Terraform on Microsoft Azure
Traduzione automatica
Verificare tutti i dettagli nella pratica - scrivendo codice reale
Michal Pipala - EY
Corso - Advanced Terraform: Efficient Infrastructure as Code
Traduzione automatica
l'instruttore era molto bene preparato
Federico Biavati - CRIF S.P.A.
Corso - Terraform for Managing Cloud Infrastructure
Traduzione automatica