Salta el contingut

Bloc 3 - Terraform

Objectius del bloc

En aquest tercer bloc aprendràs:

  • Entendre el paradigma d'Infrastructure as Code i com difereix de Configuration Management
  • Declarar infraestructura amb el llenguatge HCL
  • Gestionar el state de Terraform de forma segura en equip (backends remots, locking)
  • Organitzar codi reutilitzable amb mòduls i gestionar múltiples entorns amb workspaces
  • Integrar Terraform en un pipeline de CI/CD seguint el patró GitOps

Contingut

Tema Descripció
Introducció a Terraform i IaC Què és Terraform i Infrastructure as Code
Arquitectura de Terraform Workflow, providers i graf de dependències
Llenguatge HCL Sintaxi, variables, data sources
State Management El state, backends remots i locking
Providers i Recursos Recursos cloud més habituals (AWS)
Mòduls Reutilització i organització de codi
Workspaces i Gestió d'Entorns Múltiples entorns (dev, staging, prod)
Integració amb CI/CD i GitOps Pipelines de Terraform i GitOps
Comparativa amb Altres Eines Terraform vs CloudFormation, Pulumi, OpenTofu

Resum del bloc

flowchart LR
    A[Introduccio a Terraform] --> B[Arquitectura i HCL]
    B --> C[State Management]
    C --> D[Providers i Moduls]
    D --> E[Workspaces]
    E --> F[GitOps i CI-CD]
    F --> G[Practica 4 i 5]

Requisit previ

Aquest bloc dona per fet que ja domines els conceptes de CI/CD (Bloc 1) i Configuration Management (Bloc 2). Terraform provisiona la infraestructura; Ansible/Puppet en configuren el contingut.