Struttura del corso
Modulo 1: Introduzione all'Infrastructure as Code e a Terraform
- Concetti di IaC e benefici per ambienti on-premise e ibridi
- Panoramica di Terraform: provider, risorse, stato e ciclo di vita
- Installazione di Terraform, Azure CLI e strumenti necessari
- Prima attività pratica: scrivere una semplice configurazione Terraform e applicarla localmente
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 Terraform: init, plan, apply, destroy e fmt
- Laboratorio pratico: costruire una configurazione parametrizzata per una risorsa on-prem e una risorsa Azure
Modulo 3: Provider, Risorse e Fondamenti del Provider Azure
- Comprensione dei provider e configurazione dei provider (provider AzureRM)
- Mappatura dell'infrastruttura alle risorse Terraform (networking, compute, storage)
- Gestione dell'autenticazione Azure e dei service principals per l'automazione
- Attività pratica: provisionare una rete virtuale Azure e una semplice VM tramite Terraform
Modulo 4: Gestione dello Stato, Backend e Collaborazione
- Stato di Terraform: scopo, formato e considerazioni sul ciclo di vita
- Backend remoti con Azure Storage Account e strategie di state locking
- 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, Riutilizzabilità e Best Practice
- Creazione e utilizzo di moduli Terraform
- Input/output dei moduli, versionamento e pattern di registry
- Struttura delle cartelle, convenzioni di denominazione e struttura del repository mantenibile
- Attività 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 Azure Virtual Machines, componenti di Virtual Desktop e ciclo di vita dei dispositivi tramite Terraform
- Pattern per la gestione dei dispositivi ibridi: collegamento di risorse on-prem e dispositivi gestiti da Azure
- Integrazione di sistemi di gestione volumetrica o dei dispositivi tramite data sources e provider esterni
- Laboratorio: distribuire una flotta di VM Azure che rappresenta unità operative e configurare tagging dell'inventario e monitoraggio 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 segret sicuri e service principals
- Fondamenti di Policy as Code (pattern Sentinel o Open Policy Agent) e controlli pre-distribuzione
- Attività pratica: creare un semplice workflow GitHub Actions per pianificare e applicare Terraform su un'abbonamento sandbox
Modulo 8: Sicurezza, Segret e Pratiche Operative
- Gestione dei segret: integrazione con Azure Key Vault ed evitare dati sensibili nei file di stato
- Controllo degli accessi, RBAC e privilegi minimi per gli account di automazione
- Rilevamento del drift, riconciliazione dello stato e pratiche base di remediation
- Checklist: backup, audit e governance per l'infrastruttura gestita da Terraform
Modulo 9: Testing, Debugging e Troubleshooting
- Debug delle configurazioni Terraform e lettura efficace delle differenze del piano
- Approcci di unit test e test di integrazione (terraform validate, tflint, kitchen-terraform)
- Pattern di errore comuni e strategie di risoluzione
- Laboratorio: eseguire strumenti di validazione e linting e correggere i problemi scoperti
Modulo 10: Progetto Finale — Scenario di Distribuzione Ibrida
- Esercizio di progettazione: pianificare una distribuzione on-prem + Azure device 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
- Conoscenza base dei concetti di infrastruttura cloud o on-premise
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