Schița de curs
Modulul 1: Introducere în Infrastructure as Code și Terraform
- concepte și beneficii IaC pentru medii on-premises și hibride;
- prezentarea Terraform: provideri, resurse, state și ciclu de viață;
- instalarea Terraform, Azure CLI și a tool-urilor necesare;
- prima experiență hands-on: scrierea și aplicarea locală a unei configurații simple Terraform.
Modulul 2: HashiCorp Configuration Language (HCL) și bazele configurării
- sintaxa HCL, resurse, atribute și expresii;
- variabile, ieșiri, locals și constrângeri de tip;
- folosirea CLI-ului Terraform: init, plan, apply, destroy și fmt;
- lab hands-on: construirea unei configurări parametrice pentru o resursă on-prem și una Azure.
Modulul 3: Provideri, resurse și fundamentele provider-ului Azure
- înțelegerea provider-ilor și a configurării acestora (provider AzureRM);
- maparea infrastructurii pe resurse Terraform (rețele, compute, stocare);
- gestionarea autentificării Azure și a service principals pentru automatizare;
- hands-on: provizionarea unei rețele virtuale Azure și a unei VM simple prin Terraform.
Modulul 4: Gestionarea stării, backends și colaborare
- state Terraform: scop, format și considerente privind ciclul de viață;
- backends remote cu Azure Storage Account și strategii de state locking;
- workspaces, medii și pattern-uri de colaborare pentru echipe;
- lab: configurarea state remote în Azure Storage și desfășurarea unui flux de lucru multi-utilizator.
Modulul 5: Modularizare, reutilizabilitate și best practices
- crearea și consumarea modulelor Terraform;
- intrări/ieșiri ale modulelor, versioning și pattern-uri de registry;
- structura folderelor, convenții de numire și structură de repo menținabilă;
- hands-on: crearea unui modul reutilizabil pentru Azure VM + disc + rețea și testarea în mai multe medii.
Modulul 6: Gestionarea dispozitivelor virtuale Azure și integrarea on-prem
- gestionarea Azure Virtual Machines, a componentelor Virtual Desktop și a ciclului de viață al dispozitivelor prin Terraform;
- pattern-uri pentru managementul hibrid al dispozitivelor: conectarea resurselor on-prem cu dispozitivele gestionate Azure;
- integrarea sistemelor de management volumetric sau de dispozitive prin data sources și provideri externi;
- lab: deploy-ul unui fleet de VM-uri Azure reprezentând unități de operatori și configurarea tagging-ului inventarului și a monitorizării de bază.
Modulul 7: CI/CD, automatizare și pipeline-uri de deploy
- integrarea Terraform cu CI/CD (GitHub Actions, Azure DevOps pipelines);
- automatizarea plan/apply cu secrete securizate și service principals;
- bazele Policy as Code (pattern-uri Sentinel sau Open Policy Agent) și verificări pre-deploy;
- hands-on: crearea unui workflow simplu GitHub Actions pentru a planui și aplica Terraform într-o subscrpuție sandbox.
Modulul 8: Securitate, secrete și practici operaționale
- gestionarea secretelor: integrarea cu Azure Key Vault și evitarea datelor sensibile în fișierele de state;
- controlul accesului, RBAC și principiul minimului privilegiu pentru conturile de automatizare;
- detectarea drift-ului, reconcilierea state-ului și practici de bază de remediere;
- checklist: backup, auditare și guvernare pentru infrastructura gestionată cu Terraform.
Modulul 9: Testare, debugging și troubleshooting
- debugging-ul configurațiilor Terraform și citirea eficientă a difurilor de plan;
- aproprieri de testare unitară și de integrare (terraform validate, tflint, kitchen-terraform);
- pattern-uri comune de erori și strategii de rezolvare;
- lab: rularea tool-urilor de validare și linting și corectarea problemelor descoperite.
Modulul 10: Proiect capstone — Scenariu de deploy hibrid
- exercițiu de design: planificarea unui deploy de dispozitive on-prem + Azure folosind pattern-urile învățate;
- implementarea componentelor de bază folosind module, state remote și fragmente de pipeline CI/CD;
- prezentarea soluției, discutarea trade-off-urilor și revizuirea runbook-ului pentru operațiuni.
Rezumat și pași următori
Cerințe
- înțelegerea conceptelor de bază în rețele și virtualizare;
- familiaritate cu linia de comandă Windows sau Linux;
- cunoștințe de bază privind conceptele de infrastructură cloud sau on-premises.
Public țintă
- administratori de sistem și ingineri de platformă;
- practicienii DevOps care încep cu Infrastructure as Code;
- echipelor IT care gestionează infrastructură hibridă (on-prem + Azure).
Mărturii (2)
Cât de ușor este să vezi totul ca pe o resursă
Ilie Danut - Mihai - DB Technology
Curs - Terraform : Fundamentals
Tradus de catre o masina
Exemplele practice și depășirea lor în mod excepțional.
Anamaria-Daniela Sprinceana
Curs - Terraform : Advanced
Tradus de catre o masina