S3 no només guarda arxius: també pot conservar l’historial de canvis de cada arxiu i gestionar automàticament què fer amb ells a mesura que passa el temps. Aquestes dues funcions —versionat i cicle de vida— et protegeixen d’errors i t’estalvien diners sense esforç. Vegem-les.

Versionat: l’«historial de canvis» dels teus arxius

El versionat fa que, cada vegada que puges un objecte amb la mateixa clau, S3 no sobreescrigui l’anterior, sinó que guardi una nova versió i conservi les antigues.

Analogia: És com l’historial de versions d’un document de Google Docs o Word. Pots tornar a una versió anterior si t’equivoques. Res es perd per sempre.

Com funciona:

Puges "informe.pdf"  → versió 1
L’edites i el puges  → versió 2 (l’actual)
El tornes a editar  → versió 3 (l’actual)
                       (les versions 1 i 2 segueixen guardades)

En qualsevol moment pots recuperar una versió antiga o restaurar-la com l’actual.

Per què és tan útil:

  • Protegeix contra esborrats accidentals: si algú esborra un objecte, en realitat S3 afegeix un «marcador d’esborrat», però les versions segueixen allà i pots recuperar-les.
  • Protegeix contra sobreescriptures errònies: Has pujat l’arxiu equivocat sobre el bo? Tornes a la versió anterior.
  • És una defensa contra ransomware: si un atacant xifra els teus arxius, les versions anteriors (sense xifrar) segueixen disponibles.

Exemple real: Un empleat sobreescriu per error l’arxiu de configuració de producció amb un de dolent i la web deixa de funcionar. Gràcies al versionat, l’equip restaura la versió anterior en segons i tot torna a la normalitat. Sense versionat, haurien perdut l’arxiu bo.

⚠️ Compte amb el cost: cada versió ocupa espai i es paga. Si versiones arxius que canvien molt, pots acabar guardant moltíssimes versions antigues. Per això el versionat es combina amb el cicle de vida per esborrar versions velles automàticament.

Detall important: un cop actives el versionat en un bucket, pots suspendre’l però no desactivar-lo del tot. Tingues-ho en compte abans d’activar-lo.

Cicle de vida: automatitzar el destí dels teus objectes

Les regles de cicle de vida (lifecycle rules) li diuen a S3 què fer amb els objectes segons la seva antiguitat, de forma automàtica. Serveixen per a dues coses:

  1. Transició: moure objectes a classes més barates amb el temps (recorda les classes del subcapítol 5.2).
  2. Expiració: esborrar objectes (o versions antigues) quan ja no es necessiten.

Analogia: És com un assistent que ordena el teu traster automàticament: «el que fa 30 dies que no es toca, al calaix; el que fa 90 dies, a les caixes del soterrani; el que fa 7 anys, a les escombraries».

Exemple de regla de cicle de vida

Una política típica per a registres (logs) podria ser:

Dia 0   → L’objecte es crea a S3 Standard
Dia 30  → Es mou a Standard-IA (accés poc freqüent, més barat)
Dia 90  → Es mou a Glacier (arxiu, molt més barat)
Dia 365 → Es mou a Glacier Deep Archive (el més barat)
Dia 2555 (7 anys) → S’elimina automàticament

Amb aquesta regla, no has de moure ni esborrar res a mà. Els objectes «envelleixen» i van baixant de cost sols, i s’eliminen quan la llei ja no obliga a conservar-los.

Cicle de vida per a versions antigues

El cicle de vida també gestiona les versions antigues que genera el versionat. Per exemple:

«Conserva la versió actual sempre, però esborra les versions que tinguin més de 90 dies

Així gaudeixes de la protecció del versionat sense que el cost es dispari per acumular versions velles per sempre. Aquesta combinació —versionat + cicle de vida per a versions antigues— és una bona pràctica molt habitual.

Versionat + Cicle de vida: l’equip perfecte

Aquestes dues funcions es complementen:

Funció Et dona Risc si la fas servir sola
Versionat Protecció contra errors i esborrats El cost creix sense control
Cicle de vida Optimització de cost automàtica
Les dues juntes Protecció i cost controlat Cap: la combinació ideal

Bona pràctica recomanada: activa el versionat en buckets amb dades importants i afegeix una regla de cicle de vida que netegi les versions antigues passat un temps raonable. Així estàs protegit sense pagar de més.

El que has de recordar

  • El versionat conserva l’historial de cada objecte: protegeix contra esborrats i sobreescriptures accidentals (i contra ransomware). Cada versió ocupa i costa.
  • Un cop activat, el versionat es pot suspendre però no eliminar del tot.
  • El cicle de vida automatitza el destí dels objectes: transició a classes més barates i expiració (esborrat) segons la seva antiguitat.
  • El cicle de vida també neteja versions antigues, evitant que el versionat dispari el cost.
  • Versionat + cicle de vida és la combinació ideal: protecció amb cost controlat.

En el següent subcapítol entrem en un tema crític: la seguretat d’S3 amb polítiques de bucket i ACLs, per controlar qui pot accedir a les teves dades.

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