Hem vist dues formes d'automatitzar Terraform: un pipeline genèric (GitHub Actions) i una eina especialitzada que allotges tu (Atlantis). Existeix una tercera via: fer servir un servei gestionat que s'encarregui de tot, ofert per la mateixa empresa que va crear Terraform. Es diu Terraform Cloud (recentment reanomenat HCP Terraform). En aquest subcapítol veuràs què aporta i quan convé.

Què és Terraform Cloud / HCP Terraform

Terraform Cloud (ara HCP Terraform, on HCP és «HashiCorp Cloud Platform») és la plataforma gestionada de HashiCorp —l'empresa que va crear Terraform— per executar i gestionar Terraform. És com tenir tot el que hem muntat a mà (estat remot, locking, pipelines, revisió de plans) però ofert com un servei llest per utilitzar, sense que hagis de construir ni mantenir res.

Abans (a mà):  muntes el backend S3+DynamoDB, el pipeline, els secrets...
Amb HCP Terraform: tot això ve resolt com a servei gestionat

Analogia: si muntar el teu propi backend i pipeline és com cuinar a casa (control total, però tu compres, cuines i rentes), HCP Terraform és com anar a un restaurant: et donen el servei complet i resolt, a canvi d'un preu. No mantens la cuina, només gaudeixes del resultat.

Què ofereix, tot en un

HCP Terraform reuneix en una sola plataforma moltes de les coses que en els capítols anteriors vam configurar peça a peça:

  1. Estat remot gestionat

Guarda i gestiona el teu estat (Capítol 11) per tu, amb locking (subcapítol 20.2), versionat i xifrat inclosos. No cal muntar el backend S3 + DynamoDB del subcapítol 20.1: ja ve resolt.

  1. Execució remota de Terraform

Executa plan i apply en els seus servidors, no al teu portàtil ni al teu pipeline. Això dona consistència (sempre el mateix entorn) i seguretat (les credencials viuen a la plataforma, no en màquines disperses).

  1. Flux de treball amb revisió de plans

Integrat amb Git, executa el plan automàticament a cada canvi i el mostra per a la seva revisió i aprovació (el flux del subcapítol 12.5), igual que Atlantis però com a servei gestionat.

  1. Gestió de variables i secrets

Emmagatzema de forma segura les variables i els secrets (subcapítol 19.4) que les teves configuracions necessiten, sense que hagis de muntar el teu propi sistema.

  1. Registre privat de mòduls

Ofereix un registre privat per als mòduls de la teva organització (recorda el Registry del subcapítol 18.3), amb el seu versionat, per compartir-los entre equips.

  1. Controls de govern (en plans avançats)

Permet definir polítiques (amb Sentinel o OPA) que comproven automàticament que la infraestructura compleix les regles de l'empresa abans d'aplicar-se —semblant a l'anàlisi de seguretat del subcapítol 21.2, però com a polítiques obligatòries—.

Comparació amb les altres opcions

Pipeline propi (GitHub Actions) Atlantis HCP Terraform
Qui el manté Tu (el construeixes) Tu (l'allotges) HashiCorp (gestionat)
Esforç de muntatge Mitjà Mitjà-alt Baix
Estat i locking El muntes (S3+DynamoDB) El muntes Inclòs
Cost Baix (pagues el núvol) Baix (pagues el servidor) Té pla gratuït i plans de pagament
Control/privacitat Total Total Depens del servei
Ideal per a Flexibilitat, equips tècnics GitOps autoallotjat Rapidesa, menys manteniment

Nota: HCP Terraform té un nivell gratuït per a equips petits i plans de pagament per a organitzacions. Convé revisar els preus actuals segons la teva mida.

Quan triar HCP Terraform?

Té sentit quan:

  • Vols començar ràpid sense muntar backend, pipeline ni manteniment. És l'opció més «clau en mà».
  • No vols mantenir la teva pròpia infraestructura de CI/CD per a Terraform (ni un pipeline complex ni un Atlantis autoallotjat).
  • Valores les funcions de govern i de col·laboració integrades (polítiques, registre de mòduls, gestió d'equips).
  • El teu equip prefereix pagar per un servei a canvi d'estalviar temps d'operació.

Quan NO?

  • Si vols control total sobre on s'executa tot i on viuen les teves credencials (algunes empreses, per normativa, ho prefereixen tot al seu propi núvol).
  • Si el teu cas és simple i un pipeline bàsic de GitHub Actions (subcapítol 22.1) ja et basta sense cost addicional.
  • Si prefereixes no dependre d'una plataforma externa.

La decisió: les tres vies

En resum, per automatitzar Terraform tens tres camins, i cap no és «el correcte» universal:

1. Pipeline propi (GitHub Actions...) → flexible, el construeixes tu
2. Atlantis (autoallotjat)            → GitOps especialitzat, el mantens tu
3. HCP Terraform (gestionat)          → clau en mà, el manté HashiCorp

Tria segons la mida del teu equip, quant manteniment vols assumir, les teves necessitats de control/privacitat i el teu pressupost. Molts equips comencen amb un pipeline simple i evolucionen a mesura que creixen.

El que has de recordar

  • Terraform Cloud / HCP Terraform és la plataforma gestionada de HashiCorp per executar i gestionar Terraform: ofereix com a servei tot el que muntaries a mà. Com anar a un restaurant en comptes de cuinar a casa.
  • Inclou: estat remot gestionat amb locking, execució remota, flux amb revisió de plans, gestió de variables i secrets, registre privat de mòduls i controls de govern.
  • Davant les altres opcions: menys manteniment (ho gestiona HashiCorp) a canvi de dependre del servei i el seu cost (té nivell gratuït i plans de pagament).
  • Tria'l si vols començar ràpid i no mantenir la teva pròpia infraestructura de CI/CD; evita'l si necessites control total/privacitat o el teu cas és simple i un pipeline bàsic ja et basta.
  • Les tres vies per automatitzar Terraform: pipeline propi, Atlantis (autoallotjat) o HCP Terraform (gestionat). Tria segons equip, manteniment, control i pressupost.

A l'últim subcapítol del capítol (i de la Part V) veurem un problema important que l'automatització ajuda a resoldre: la detecció de drift (desviacions) i la reconciliació automàtica.

Cloud, AWS & Terraform — De zero a expert

Capítol 1 · Què és el cloud computing

Capítol 2 · El mercat cloud i els grans proveïdors

Capítol 3 · Regions, zones de disponibilitat i edge

Capítol 4 · Càlcul: EC2

Capítol 5 · Emmagatzematge: S3

Capítol 6 · Xarxes: VPC

Capítol 7 · Identitat i accés: IAM

Capítol 8 · Bases de dades gestionades

Capítol 9 · Per què Infraestructura com a Codi

Capítol 10 · HCL: el llenguatge de Terraform

Capítol 11 · Providers i estat

Capítol 12 · La teva primera infraestructura real amb Terraform

Capítol 13 · Balanceig de càrrega i autoescalat

Capítol 14 · Serverless amb Lambda

Capítol 15 · Missatgeria i esdeveniments

Capítol 16 · Lliurament de contingut i DNS

Capítol 17 · Contenidors a AWS

Capítol 18 · Mòduls: reutilització i composició

Capítol 19 · Workspaces i gestió d'entorns

Capítol 20 · Backends remots i locking

Capítol 21 · Testing d'infraestructura

Capítol 22 · Terraform en CI/CD

Capítol 23 · Seguretat en profunditat

Capítol 24 · Observabilitat: logs, mètriques i traces

Capítol 25 · Optimització de costos

Capítol 26 · Alta disponibilitat i disaster recovery

Capítol 27 · Well-Architected Framework d'AWS

Capítol 28 · Arquitectures serverless a escala

Capítol 29 · Plataformes de dades a AWS

Capítol 30 · Multi-compte i landing zones

Capítol 31 · Platform Engineering i Internal Developer Platform

Capítol 32 · Certificacions AWS rellevants

Capítol 33 · Projectes per consolidar el que s'ha après

Capítol 34 · Recursos i comunitat

© Copyright 2024. Tots els drets reservats