Fa onze mòduls, MercadoFresco era una botiga en línia amb un servidor que queia els divendres, unes còpies de seguretat que ningú no havia restaurat mai i un desplegament que consistia a copiar fitxers per SSH un dimarts a la nit. Avui té una arquitectura elàstica, segura, observable, desplegable des d'un pipeline, descrita en codi, repartida en cinc comptes, auditada amb mètode i amb una factura que costa un 24,8 % menys del que costava fa dos mesos.

Aquesta lliçó no ensenya cap servei nou. Fa cinc coses: recorre l'arquitectura completa associant cada peça al mòdul on es va aprendre i tanca el balanç dels cinc problemes inicials; planteja el projecte final, que és un repte real amb deu lliurables; ofereix una solució de referència comentada amb les seves alternatives descartades; traça els camins per continuar aprenent, amb les certificacions, els recursos i allò que aquest curs no ha tocat; i tanca el curs amb la llista de neteja de tot el que s'ha creat, perquè ningú no continuï pagant per un laboratori acabat.

Avís de cost. Aquesta lliçó inclou la neteja final de tots els recursos del curs. Si has seguit les pràctiques en un compte real, aquesta secció no és opcional: un clúster d'EKS oblidat costa 73 USD al mes, un grup d'ElastiCache més de 100, i set endpoints de VPC uns 112. L'ordre d'esborrat importa, perquè hi ha dependències. Dades, comptes i identificadors ficticis.

Contingut

  1. L'arquitectura completa de MercadoFresco
  2. Cada component i el mòdul on es va aprendre
  3. Els cinc problemes i la seva mètrica
  4. Errors comuns i consells
  5. Exercicis: el projecte final
  6. Solucions: l'arquitectura de referència comentada
  7. Els camins de certificació d'AWS
  8. Recursos oficials per continuar
  9. Allò que aquest curs no ha tocat
  10. Què saps fer ara
  11. La neteja final, en l'ordre correcte
  12. Conclusió

L'arquitectura completa de MercadoFresco

graph TB
  subgraph USUARIS[" "]
    U["Clients<br/>Madrid · Barcelona · Valencia · Sevilla"]
  end

  subgraph VORA["Vora global"]
    R53["Route 53<br/>mercadofresco.example"]
    CF["CloudFront E2QWERTY123ABC"]
    WAFC["waf-mercadofresco-cdn<br/>+ Shield Standard"]
  end

  subgraph PROD["Compte produccio 111122223333 — vpc-mercadofresco, eu-west-1"]
    ALB["alb-mercadofresco-tienda<br/>tg-mercadofresco-tienda / -verde<br/>waf-mercadofresco-alb · /salud"]

    subgraph APP["Subxarxes privades d'aplicacio -app-a / -app-b"]
      FG["svc-mercadofresco-tienda-fg<br/>Fargate arm64 · 2-20 tasques"]
      TR["svc-mercadofresco-trabajadores<br/>Fargate + Fargate Spot"]
    end

    subgraph DADES["Subxarxes de dades -datos-a / -datos-b"]
      AU[("aurora-mercadofresco-pedidos<br/>escriptor + 2 lectors")]
      EC[("mercadofresco-catalogo<br/>ElastiCache")]
    end

    DY[("mercadofresco-carritos<br/>mercadofresco-idempotencia")]
    SQS["cola-mercadofresco-pedidos<br/>-correo · -almacen · -analitica<br/>DLQ: -pedidos-fallidos"]
    SNS["mercadofresco-pedido-confirmado"]
    EB["bus-mercadofresco"]
    SF["mercadofresco-procesar-pedido"]
    LAM["Lambdes: cobrar-pago · reservar-stock<br/>asignar-reparto · estado-pedido<br/>generar-miniaturas"]
    S3[("mercadofresco-catalogo-fotos<br/>-informes-analitica · -registros-web<br/>-copias-basedatos · -artefactos")]
    RS[("wg-mercadofresco-analitica<br/>Redshift Serverless")]
    NAT["nat-mercadofresco-a / -b<br/>vpce-mercadofresco-s3 + ECR/Logs/Secrets"]
  end

  subgraph EINES["Eines 555566667777"]
    ECR["ECR mercadofresco/tienda<br/>mercadofresco/trabajadores"]
    PIPE["pipeline-mercadofresco-tienda<br/>build-* · app-mercadofresco-tienda<br/>blue/green + reversio"]
    GIT["mercadofresco-tienda<br/>mercadofresco-infra"]
  end

  subgraph SEG["Seguretat 444455556666"]
    CT["trail-mercadofresco"]
    CFG["grabador-mercadofresco"]
    GD["GuardDuty"]
  end

  subgraph GEST["Gestio 999988887777 — o-a1b2c3d4e5"]
    ORG["Organizations · IAM Identity Center<br/>OU Seguridad · Infraestructura · Cargas · Aislamiento"]
    BUD["presupuesto-mensual-mercadofresco<br/>+ 9 pressupostos · Savings Plan"]
  end

  OBS["CloudWatch MercadoFresco/Tienda<br/>mercadofresco-produccion · -negocio<br/>X-Ray · Container Insights<br/>alertas-mercadofresco"]
  KMS["alias/mercadofresco-datos<br/>mercadofresco/produccion/rds/mfadmin"]

  U --> R53 --> CF
  WAFC -.protegeix.-> CF
  CF --> ALB
  ALB --> FG
  FG --> AU
  FG --> EC
  FG --> DY
  FG --> SQS
  SQS --> TR
  TR --> SF
  SF --> LAM
  LAM --> AU
  LAM --> SNS
  SNS --> EB
  FG --> S3
  CF --> S3
  AU -.carrega nocturna.-> RS
  S3 -.informes.-> RS
  FG -.sortida.-> NAT
  GIT --> PIPE --> ECR
  PIPE -.desplega.-> FG
  KMS -.xifra.-> AU
  KMS -.xifra.-> S3
  KMS -.xifra.-> DY
  OBS -.observa.-> PROD
  CT -.audita.-> PROD
  CFG -.avalua.-> PROD
  GD -.vigila.-> PROD
  ORG -.governa.-> PROD
  ORG -.governa.-> EINES
  ORG -.governa.-> SEG
  BUD -.controla.-> PROD

Cada component i el mòdul on es va aprendre

Component Servei Mòdul Quin problema va resoldre
Compte, MFA, pressupost inicial, regions Compte, IAM arrel, Budgets 01-02, 01-03 Punt de partida segur
Consola, CLI i SDK, perfils CLI, boto3 01-04, 01-05 Treballar sense dependre del ratolí
mercadofresco-tienda (primera versió) EC2, EBS 02-01, 02-02 Treure la botiga del servidor físic
mercadofresco-catalogo-fotos i la resta de buckets S3 02-03 Emmagatzematge sense límit i amb cicle de vida
Base de dades gestionada RDS → Aurora 02-04, 06-03 Còpies, pedaços i commutació automàtics
mercadofresco-generar-miniaturas i les altres Lambda 02-05 Feina esporàdica sense servidor
vpc-mercadofresco, subxarxes, nat-mercadofresco-a/-b, endpoints VPC 03-01 Aïllament de xarxa per capes
sg-mercadofresco-alb/-tienda/-basedatos/-cache Grups de seguretat, NACL 03-02 Mínim privilegi a la xarxa
alb-mercadofresco-tienda, tg-mercadofresco-tienda/-verde, /salud ALB 03-03 Repartiment, salut i desplegament sense tall
E2QWERTY123ABC CloudFront 03-04 350 ms → 25 ms i −96,6 % de cost en fotos
mercadofresco.example Route 53 03-05 DNS amb comprovació de salut
Identity Center, rols, polítiques IAM 04-01 Ningú amb credencials permanents
alias/mercadofresco-datos KMS 04-02 Xifratge en repòs amb clau pròpia
mercadofresco/produccion/rds/mfadmin, /mercadofresco/produccion/... Secrets Manager, Parameter Store 04-03 Secrets rotats i fora del codi
Shield Standard, decisió sobre Advanced Shield 04-04 Protecció volumètrica amb criteri
waf-mercadofresco-cdn, -alb WAF 04-05 Injecció, XSS, bots i inundació L7
MercadoFresco/Tienda, taulers, alertas-mercadofresco CloudWatch 05-01 Saber què passa i assabentar-se'n a temps
Traces d'extrem a extrem X-Ray 05-02 Trobar el coll d'ampolla real
trail-mercadofresco CloudTrail 05-03 Qui va fer què i quan
grabador-mercadofresco, 29 regles Config 05-04 Compliment continu i remediació
Comprovacions i decisió sobre el pla Trusted Advisor 05-05 Higiene contínua sense esforç
Elecció raonada de motor per cas 06-01 Deixar de fer servir una sola base de dades per a tot
mercadofresco-carritos, -idempotencia DynamoDB 06-02 Clau-valor a escala, 51 → 8 USD
aurora-mercadofresco-pedidos Aurora 06-03 p99 d'1.900 a menys de 900 ms
wg-mercadofresco-analitica Redshift Serverless 06-04 Informes sense tombar producció, 1.586 → 16 USD
mercadofresco-catalogo ElastiCache 06-05 Fitxa de producte de 240 a 28 ms
cola-mercadofresco-pedidos i les altres, DLQ SQS 07-01 Absorbir el pic sense perdre comandes
mercadofresco-pedido-confirmado SNS 07-02 Un esdeveniment, molts interessats
bus-mercadofresco EventBridge 07-03 Encaminament per contingut i programació
mercadofresco-procesar-pedido Step Functions 07-04 Orquestrar la comanda amb reintents i compensació
Idempotència, reintents, DLQ, saga Patrons 07-05 No cobrar dues vegades
mercadofresco-tienda, mercadofresco-infra CodeCommit 08-01 Codi versionat amb revisió
build-mercadofresco-* CodeBuild 08-02 Compilar i provar a cada commit
app-mercadofresco-tienda CodeDeploy 08-03 Blue/green amb reversió automàtica
pipeline-mercadofresco-tienda CodePipeline 08-04, 08-05 4,8 desplegaments/setmana, restauració en 4 min
red-mercadofresco.yaml, aplicacion-mercadofresco.yaml CloudFormation 09-01 Infraestructura reproduïble
infra-cdk/, MercadoFrescoVpc CDK 09-02 Infraestructura en un llenguatge real
Avaluació i descart raonat Elastic Beanstalk 09-03 Saber quan no fer servir una eina
o-a1b2c3d4e5, 6 comptes, OU, SCP, ss-mercadofresco-linea-base Organizations 09-04 Aïllament i govern; −340 USD de duplicats
ecs-mercadofresco, mercadofresco/tienda ECS i ECR 10-01 Contenidors sense AMI per mantenir
svc-mercadofresco-tienda-fg arm64, Fargate Spot Fargate 10-02 158 → 70 USD i arrencada en 40 s
Anàlisi i decisió de quedar-se a ECS EKS 10-03 Decidir amb criteris escrits, no amb moda
Revisió de 6 pilars, ADR, RTO/RPO Well-Architected 11-01 Saber què falta abans que falli
Etiquetes activades, CUR, cost per comanda Cost allocation, Athena 11-02 Una factura que algú pot llegir
Deu optimitzacions, anomalies Cost Explorer 11-03 −488 USD/mes sense degradar res
Deu pressupostos, congelació de desenvolupament Budgets 11-04 No poder passar-se sense assabentar-se'n
Compute SP + nodes reservats Savings Plans, RI 11-05 −68 USD/mes per comprometre capacitat

Els cinc problemes i la seva mètrica

El curs va començar amb cinc problemes concrets. Aquest és el balanç, amb números i no amb adjectius:

# Problema inicial Solució Mètrica abans Mètrica després
1 La botiga cau els divendres entre les 17:00 i les 21:00 Fargate amb autoescalat per seguiment d'objectiu i escalat programat que puja el mínim a les 16:45; cues SQS que absorbeixen la ràfega; ALB en dues AZ; ElastiCache i lectors d'Aurora que descarreguen la base de dades 1 servidor, caigudes setmanals; p99 d'1.900 ms 900 comandes/hora sostingudes, p99 < 900 ms, 0 caigudes; capacitat provada fins a 1.400
2 Les còpies no són fiables: ningú no n'ha restaurat mai cap Aurora amb PITR continu i còpies replicades entre regions; PITR a DynamoDB; versionat i cicle de vida a S3; AWS Backup; RTO i RPO declarats i signats, amb simulacre semestral Sense RTO ni RPO; restauració mai provada RPO 5 min a la regió / 6 h regional; RTO 8 h, amb simulacre al calendari
3 Créixer a més ciutats exigeix muntar-ho tot una altra vegada Tot en CloudFormation i CDK; ss-mercadofresco-linea-base amb StackSets; pipeline que desplega sol; CloudFront acostant el contingut Setmanes de feina manual per ciutat 4 ciutats sobre la mateixa infraestructura; una de nova no requereix infraestructura nova
4 Els desplegaments fan por: dimarts a la nit, per SSH Pipeline amb proves, anàlisi i porta de qualitat; blue/green amb canari del 10 %; reversió automàtica per alarma 1 desplegament cada 2-3 setmanes; reversió manual d'hores 4,8 desplegaments/setmana, en horari laboral; restauració en 4 minuts (menys d'1 amb blue/green)
5 Ningú no governa la infraestructura: ni qui, ni quant, ni per què Organizations amb 6 comptes i SCP; Identity Center; Config i CloudTrail centralitzats; etiquetatge imposat; pressupostos amb accions; revisió Well-Architected semestral Un compte, permisos amplis, factura il·legible 6 comptes aïllats, cobertura d'etiquetatge del 95 %, cost per comanda de 0,00934 USD i −24,8 % de factura

Cinc problemes, cinc solucions, i en els cinc casos un número que es pot ensenyar. Aquesta és la diferència entre haver migrat al núvol i haver resolt alguna cosa.

Errors Comuns i Consells

Error: creure que l'arquitectura final era l'objectiu des del principi. Ningú no dissenya això d'una tirada. MercadoFresco hi va arribar en onze passos, cadascun resolent un problema concret que feia mal. Consell: quan dissenyis, comença pel problema, no pel diagrama.

Error: copiar aquesta arquitectura tal qual. Té sentit per a una botiga amb aquests volums, aquests problemes i aquest equip. Per a 200 comandes al mes és un disbarat, i per a 200.000 al dia es queda curta. Consell: copia el mètode de decisió, no les caixes del diagrama.

Error: lliurar un projecte d'arquitectura sense números. «Farem servir DynamoDB perquè escala» no és una justificació; «farem servir DynamoDB perquè són 400 escriptures per segon amb accés per clau i latència d'un dígit de mil·lisegons, i el cost estimat és de 22 USD al mes» sí que ho és. Consell: cada decisió, un número.

Error: no escriure les alternatives descartades. L'avaluador —i tu d'aquí a un any— necessita saber què vas considerar i per què ho vas deixar fora. Consell: per cada decisió important, una alternativa descartada amb el seu motiu.

Error: acabar el curs sense esborrar els recursos. És l'error més car de tots i li passa a molta gent. Consell: fes la neteja del final d'aquesta lliçó avui, no «quan tingui una estona».

Consell: el millor projecte no és el que fa servir més serveis, sinó el que justifica millor per què no en fa servir alguns. Descartar Shield Advanced, descartar EKS i descartar Beanstalk van ser tres de les decisions més valuoses d'aquest curs.

Consell: guarda la teva solució del projecte. D'aquí a sis mesos, rellegir-la et dirà més sobre el que has après que qualsevol examen.

Exercicis

Exercici 1: el projecte final

L'encàrrec. MercadoFresco creix i el negoci planteja tres coses alhora per a l'any vinent:

  1. Obertura a Portugal i França. Lisboa i Porto primer, París i Lió després. Els clients portuguesos i francesos han de tenir una experiència equivalent a l'espanyola.
  2. Aplicació mòbil per a iOS i Android, amb dues funcions noves: seguiment del repartiment en temps real —el client veu el vehicle moure's al mapa— i recomanacions de productes personalitzades segons el seu historial de compra.
  3. Mantenir el cost per comanda. El gerent ha estat explícit: pot pujar la factura, però el cost per comanda no ha de pujar.

Els requisits, escrits:

Requisit Valor Origen
Latència Primer byte < 200 ms a Lisboa, Porto, París i Lió Producte
Residència de la dada Les dades personals de clients de la UE romanen a la UE; geolocalització tractada segons el RGPD Legal
Disponibilitat 99,95 % mensual per al procés de comanda Negoci (contracte amb proveïdors)
Volum ×4 comandes: de 180.000 a 720.000 al mes; pic de 3.600 comandes/hora Previsió comercial
Seguiment en temps real Posició del repartidor cada 5 s, visible amb < 3 s de retard Producte
Recomanacions Actualitzades diàriament; no en temps real Producte
Pressupost Cost per comanda ≤ 0,00934 USD Gerència
Equip Continua sent petit: 5 persones després de dues contractacions Realitat

El que cal lliurar. Deu apartats:

(a) Diagrama d'arquitectura. Un diagrama —mermaid, draw.io o paper fotografiat— amb les regions, els comptes, els components i els fluxos principals. Ha de distingir el que ja existeix del que s'afegeix.

(b) Regió o regions i estratègia multiregió. Una regió o diverses? Quines? Actiu-actiu, actiu-passiu, o una sola regió amb distribució a la vora? Justifica-ho amb els requisits de latència, residència i disponibilitat, i digues explícitament què descartes i per què.

(c) Motors de dades per a les dues funcions noves. Què faries servir per al seguiment en temps real i què per a les recomanacions, amb el patró d'accés, el volum estimat i el cost aproximat de cadascun.

(d) Pla de seguretat i compliment. Identitats, xifratge, secrets, protecció perimetral, auditoria, i específicament com tractes les dades de geolocalització de repartidors i clients sota el RGPD.

(e) Pla d'observabilitat amb SLI i SLO. Almenys tres indicadors amb el seu objectiu, la seva finestra i el seu pressupost d'error; quina alarma dispara què, i quins taulers necessita cada perfil.

(f) Pipeline i estratègia de desplegament per al nou àmbit multiregió i per a l'aplicació mòbil, que té un cicle de publicació diferent del de la web.

(g) Infraestructura com a codi i estructura de comptes. Què canvia a l'organització actual de sis comptes i com es desplega el mateix en diverses regions sense duplicar codi.

(h) Pressupost mensual estimat amb desglossament per servei i el cost per comanda resultant, comparat amb l'objectiu de 0,00934 USD.

(i) Revisió Well-Architected de la teva pròpia proposta: els tres riscos principals que introdueixes, el seu pilar i la seva mitigació.

(j) Pla de migració per fases, amb fites, criteris d'avanç i què fas si una fase falla.

Rúbrica d'avaluació:

Apartat Pes Es valora
(a) Diagrama 8 % Llegible; distingeix el nou de l'existent; coherent amb la resta del lliurament
(b) Regions 14 % Justificació amb els tres requisits; alternatives descartades amb el seu motiu; cost conscient
(c) Motors de dades 14 % Patró d'accés abans que producte; volum estimat; cost; no fer servir un motor «perquè escala»
(d) Seguretat i RGPD 12 % Cobertura de les cinc capes; tractament explícit de geolocalització; remetre a un professional on correspongui
(e) Observabilitat 10 % SLI mesurables i SLO realistes lligats al negoci; pressupost d'error; no confondre mètrica amb objectiu
(f) Pipeline 10 % Desplegament progressiu; reversió; cicle diferent per a mòbil; multiregió
(g) IaC i comptes 10 % Parametrització per regió; sense duplicar codi; comptes justificats
(h) Pressupost 12 % Números coherents i traçables; cost per comanda calculat; comparació amb l'objectiu
(i) Well-Architected 6 % Autocrítica real; riscos que de debò introdueix la proposta
(j) Migració 4 % Fases amb criteri d'avanç i pla de tornada enrere

Criteri general: un lliurament que justifiqui bé tres alternatives descartades val més que un que enumeri quinze serveis. I qualsevol apartat sense un número és un apartat incomplet.

Exercici 2: la decisió d'una sola regió

Un company proposa la solució més simple possible per al requisit de latència: quedar-se només a eu-west-1 i resoldre Portugal i França amb CloudFront i AWS Global Accelerator, sense desplegar res a una altra regió.

  1. Quins requisits de l'enunciat que resol aquesta proposta i quins no?
  2. Estima la latència de xarxa des de Lisboa i des de París fins a Irlanda, i digues si el requisit de 200 ms és assolible.
  3. Què li respondries sobre disponibilitat del 99,95 %?

Exercici 3: el cost per comanda amb ×4 de volum

Amb la factura actual de 1.681,60 USD i 180.000 comandes, el cost per comanda és de 0,00934 USD. El volum es multiplica per quatre fins a 720.000 comandes.

  1. Si la factura creixés linealment, quant costaria i quin seria el cost per comanda?
  2. Identifica quatre partides de la factura que no creixen amb el volum i estima quant pesen.
  3. Estima la factura real amb ×4 de comandes i calcula el cost per comanda. Es compleix l'objectiu?

Solucions

Solució a l'exercici 1: arquitectura de referència comentada

Aquesta és una solució vàlida, no l'única. El seu valor és a les raons, no a les caixes.

(a) i (b) Regions i estratègia multiregió.

La proposta: eu-west-1 (Irlanda) continua sent la regió principal i única per a l'estat transaccional, reforçada amb CloudFront a tota la vora europea i AWS Global Accelerator per al trànsit de l'aplicació mòbil. S'afegeix eu-west-3 (París) únicament per a dues coses: el destí de la recuperació davant de desastres i, si els mesuraments ho justifiquen, una rèplica de lectura del catàleg.

Per què:

  • La latència es resol a la vora, no movent la base de dades. El requisit és de primer byte, i el 90 % del contingut d'una botiga és estàtic o cacheable: fotos, catàleg, JavaScript. CloudFront ja el serveix des de punts de presència a Lisboa, Madrid, París i Marsella. Per a les crides dinàmiques de l'API, Global Accelerator fica el trànsit a la xarxa troncal d'AWS al punt de presència més proper, cosa que retalla entre un 20 i un 40 % de la latència respecte d'internet públic.
  • La residència de la dada ja es compleix: Irlanda és la UE. El RGPD exigeix que les dades romanguin a la UE o a països amb decisió d'adequació, no que estiguin al país del client. Aquest és el malentès més freqüent en aquest tipus de projectes.
  • Una segona regió activa multiplicaria per dos la complexitat i per gairebé dos la factura, i el requisit del 99,95 % no la necessita: 99,95 % mensual són 21,9 minuts d'indisponibilitat al mes, perfectament assolibles amb Multi-AZ ben fet dins d'una sola regió.

Alternatives descartades i per què:

Alternativa Motiu del descart
Actiu-actiu a eu-west-1 i eu-west-3 Requereix Aurora Global Database amb escriptura en dos llocs o partició per país; duplica cost i feina; el requisit de disponibilitat no ho demana
Una regió per país (Irlanda, París, i Espanya a Irlanda) Fragmenta les dades, complica els informes de la Sara, multiplica el govern per tres i no millora la latència de manera perceptible respecte de CloudFront
eu-south-2 (Espanya) com a principal Menys serveis disponibles, sense avantatge de latència real per a França, i obligaria a migrar tot l'existent
Warm standby a eu-west-3 +35 % de factura per a un RTO que el negoci no ha demanat; es reavalua si el RTO baixa de 8 h

(c) Motors de dades per a les funcions noves.

Seguiment del repartiment en temps real. Dos problemes diferents que la gent sol barrejar:

  • Ingerir la posició: 200 repartidors enviant la seva posició cada 5 segons són 40 missatges/segon, 3,5 milions al dia. És un volum petit i constant.
  • Lliurar-la al client: cada client amb una comanda en curs vol veure el vehicle moure's amb menys de 3 segons de retard.

La proposta:

Peça Servei Per què
Ingesta des del mòbil del repartidor AWS IoT Core amb MQTT Dissenyat per a dispositius mòbils amb connexió intermitent; MQTT consumeix molta menys bateria i dades que HTTP; autenticació per certificat per dispositiu
Estat actual de cada repartiment DynamoDB mercadofresco-repartos-posicion, amb TTL de 4 hores Accés per clau (id de repartiment), escriptura constant, lectura d'un sol element. El TTL esborra sol el que ja no serveix, sense procés de neteja
Lliurament al client API Gateway WebSocket Connexió persistent; el client rep empentes en lloc de preguntar cada 3 s, cosa que evita milers de peticions inútils
Històric per a anàlisi Kinesis Data Firehose → S3 → Athena L'històric no necessita baixa latència; a S3 surt per cèntims

Cost estimat: uns 95 USD al mes amb aquest volum, dominat per les connexions WebSocket i les escriptures de DynamoDB.

Alternativa descartada: fer que l'aplicació pregunti per HTTP cada 3 segons. Amb 3.000 comandes en curs serien 1.000 peticions per segon contra l'API, és a dir, més trànsit que tota la botiga, i una bateria del mòbil esgotada en dues hores.

Recomanacions de productes. Aquí la clau és en un requisit que l'enunciat dona i que molta gent passa per alt: «actualitzades diàriament; no en temps real». Això canvia tota la solució.

Peça Servei Per què
Dades d'entrada Redshift Serverless, que ja té l'històric de compres No cal construir cap canalització nova
Càlcul Feina nocturna a Redshift + una Lambda que escriu el resultat Amb dades diàries, un càlcul per lots de 20 minuts n'hi ha prou
Emmagatzematge del resultat DynamoDB mercadofresco-recomendaciones, clau = id de client Lectura per clau en un dígit de mil·lisegons; una escriptura al dia per client
Servei al client L'API existent llegeix de DynamoDB Zero infraestructura nova al camí crític

Cost estimat: uns 40 USD al mes.

Alternativa descartada: Amazon Personalize. És el servei específic per a això i probablement donaria millors recomanacions. Es descarta en la primera versió per tres raons: costa força més, afegeix un servei nou per mantenir a un equip de cinc persones, i encara no hi ha una mesura de si les recomanacions funcionen. La decisió escrita: començar amb regles senzilles —«també van comprar això», «tornes a necessitar això»— sobre dades que ja hi són, mesurar la conversió durant tres mesos, i aleshores decidir si Personalize compensa. Introduir aprenentatge automàtic abans de tenir una mètrica d'èxit és la manera més cara de no saber si alguna cosa serveix.

(d) Seguretat i compliment.

L'existent es manté i s'estén: Identity Center, alias/mercadofresco-datos per a tot el que és nou, secrets a Secrets Manager, WAF a CloudFront i a l'ALB, Shield Standard, CloudTrail i Config centralitzats a 444455556666.

El que s'afegeix per l'aplicació mòbil:

  • Amazon Cognito per a la identitat dels clients, amb inici de sessió federat. Els tokens caduquen; res de claus a l'aplicació.
  • Certificats per dispositiu a IoT Core per als repartidors, amb política que només permet publicar al seu propi tema. Un repartidor no pot publicar la posició d'un altre.
  • Limitació de velocitat i protecció de bots al WAF de l'API mòbil, que és el nou objectiu obvi.

I la part delicada, la geolocalització:

Qüestió Tractament proposat
És dada personal? Sí, sense discussió. La posició d'una persona identificable és dada personal; la d'un repartidor identificat ho és a més en context laboral, amb normativa addicional
Base legal Execució del contracte per al repartiment; no consentiment genèric. Per al repartidor, la vigilància laboral té requisits propis: informació prèvia, proporcionalitat i consulta a la representació dels treballadors
Minimització Es desa només la posició del repartiment en curs, amb TTL de 4 hores a DynamoDB. No es construeix un històric de moviments del repartidor
Històric Només agregats i anonimitzats: temps mitjans per zona, sense identificar la persona
Xifratge En repòs amb KMS i en trànsit amb TLS i MQTT sobre TLS, d'extrem a extrem
Accés Rol específic i mínim; cada consulta queda a CloudTrail
Drets de l'interessat Procediment escrit d'accés, rectificació i supressió, amb l'esborrat propagat a S3 i Redshift

I l'advertiment que ha de figurar al lliurament i que forma part de la nota: això és un disseny tècnic, no un dictamen jurídic. El tractament de geolocalització de treballadors és un dels punts més sensibles del RGPD i de la normativa laboral, exigeix avaluació d'impacte i l'ha de revisar un professional de protecció de dades abans de posar-se en producció. Una proposta que resol la geolocalització sense esmentar això és incompleta per molt bona que sigui tècnicament.

(e) Observabilitat amb SLI i SLO.

SLI Definició mesurable SLO Finestra Pressupost d'error
Disponibilitat de la comanda Peticions a /pedido amb resposta 2xx o 3xx ÷ total 99,95 % 30 dies 21,9 min/mes
Latència de confirmació p99 de TiempoConfirmacionPedido < 900 ms 30 dies 1 % de peticions
Frescor del seguiment p95 del retard entre emissió i visualització < 3 s 7 dies 5 % d'actualitzacions
Èxit del repartiment Repartiments lliurats en el termini ÷ total > 98 % 30 dies Mètrica de negoci

Amb tres decisions importants: les alarmes es posen sobre la taxa de consum del pressupost d'error, no sobre llindars instantanis, per no despertar ningú per un pic de 30 segons; els taulers se separen per perfil —mercadofresco-produccion per al torn de guàrdia, mercadofresco-negocio per a la Sara i gerència, i un de nou mercadofresco-movil—; i el cost per comanda continua al tauler de negoci, al costat de les comandes, tal com es va establir a 11-02.

(f) Pipeline i desplegament. Es manté pipeline-mercadofresco-tienda amb blue/green i reversió, i s'hi afegeixen tres coses: una etapa per regió per al que es desplegui a eu-west-3, sempre desplegant primer a la regió secundària i només després a la principal; un pipeline propi per a l'API mòbil, que es versiona de manera independent perquè les aplicacions publicades a les botigues no es poden revertir —una versió antiga pot quedar instal·lada mesos, així que l'API ha de mantenir compatibilitat cap enrere durant almenys dues versions—; i banderes de funcionalitat per activar el seguiment en temps real per ciutat, cosa que permet obrir Lisboa sense tocar el codi.

(g) IaC i estructura de comptes. L'organització de sis comptes no canvia: continua sent l'adequada, i l'Entorno continua sent la millor dimensió de separació. El que canvia és la parametrització: les plantilles red-mercadofresco.yaml i aplicacion-mercadofresco.yaml i les piles del CDK reben la regió com a paràmetre, amb ss-mercadofresco-linea-base estès a la nova regió. Un sol repositori, una sola definició, dos destins.

L'únic compte que es planteja afegir és un de dades per a l'analítica i les recomanacions, i es descarta de moment: amb cinc persones, un compte més és més govern del que aporta. Es revisarà si l'equip de dades creix.

(h) Pressupost estimat.

Concepte Actual Amb ×4 i les funcions noves Comentari
Aurora 342,60 890,00 Escala gairebé amb el volum; +1 lector
Fargate 262,40 880,00 Escala amb el volum
CloudWatch 214,90 420,00 Creix menys que lineal amb retenció ben posada
NAT Gateway 243,80 290,00 El 81 % és càrrec fix: no escala
ElastiCache 71,83 185,00 Node més gran; amb reserva
S3 128,90 310,00 Escala amb fotos i registres
CloudFront 62,80 240,00 Escala amb el trànsit; més regions de vora
Redshift Serverless 104,50 190,00 Més dades, mateix patró
DynamoDB 58,40 240,00 Inclou posició i recomanacions
ALB i VPC 222,80 330,00 Majoritàriament càrrec fix
IoT Core + API Gateway WebSocket 0 95,00 Nou
Lambda i missatgeria 68,70 210,00 Escala amb el volum
Cognito 0 45,00 Nou; primers usuaris gratuïts
Govern, seguretat i CI/CD 190,10 240,00 Amb prou feines escala
Global Accelerator 0 35,00 Nou; càrrec fix + transferència
Total 1.681,60 ≈ 4.600,00
Comandes/mes 180.000 720.000 ×4
Cost per comanda 0,00934 USD 0,00639 USD −31,6 %

L'objectiu es compleix amb escreix, i la raó és exactament la que 11-02 anticipava: hi ha una part important de la factura —NAT, ALB, endpoints, govern, observabilitat base— que no creix amb el volum, i en repartir-se entre quatre vegades més comandes fa baixar el cost unitari. Multiplicar el negoci per quatre multiplica la factura per 2,7.

(i) Els tres riscos principals d'aquesta proposta:

# Risc Pilar Mitigació
1 Una sola regió per a l'estat transaccional. Una caiguda regional deixa fora de servei tres països en lloc d'un, i el RTO de 8 hores passa a ser molt més car en reputació Fiabilitat Reavaluar el RTO amb el negoci ara que hi ha tres països; si baixa de 4 h, passar a llum pilot a eu-west-3 (+12 % de factura, calculat a 11-01)
2 La geolocalització de repartidors és el punt de més exposició regulatòria de tot el sistema Seguretat Minimització amb TTL de 4 h, sense històric personal, avaluació d'impacte i revisió obligatòria per un professional de protecció de dades abans de producció
3 Cinc persones per a tres països, dues plataformes i sis serveis nous. El risc més gran d'aquesta proposta no és tècnic Excel·lència operativa Runbooks i guàrdia definida —pendents des d'11-01—; obrir per fases; descartar Personalize i el compte de dades en la primera versió; automatitzar abans de créixer

(j) Pla de migració per fases:

Fase Contingut Criteri per avançar Si falla
0 (2 set) Global Accelerator i ajust de CloudFront; mesurar latència real des de Lisboa i París Primer byte < 200 ms mesurat Reavaluar eu-west-3 per a lectura
1 (4 set) API mòbil i Cognito; aplicació sense seguiment ni recomanacions Aplicació a les botigues, 500 usuaris, sense incidències 2 setmanes Endarrerir; la web continua funcionant
2 (4 set) Seguiment en temps real, només a Madrid p95 de frescor < 3 s; bateria acceptable; validació de protecció de dades Desactivar la bandera; ningú no se n'assabenta
3 (3 set) Recomanacions diàries, amb mesurament de conversió Conversió mesurable durant 3 setmanes Desactivar; es perd una funció, no una comanda
4 (6 set) Obertura de Lisboa i Porto Operació estable 3 setmanes i SLO complerts Aturar l'expansió; Espanya no se'n veu afectada
5 (6 set) París i Lió Ídem Ídem
6 (continu) Prova de càrrega a 3.600 comandes/hora, simulacre de recuperació, revisió Well-Architected Riscos alts ≤ 5 Bloqueja la fase 5

Dos principis que governen el pla: cada fase és reversible sense afectar el que ja funciona —banderes de funcionalitat, no desplegaments irreversibles— i la prova de càrrega és requisit per obrir el segon país, no una tasca que es fa si sobra temps. És exactament la troballa de risc alt que 11-01 va deixar oberta.

Solució a l'exercici 2

(1) Què resol i què no. La proposta d'una sola regió resol: la residència de la dada, perquè Irlanda és la UE; el cost, perquè és de bon tros l'opció més barata; la simplicitat operativa, decisiva amb cinc persones; i la latència del contingut estàtic, que és el gruix d'una botiga. No resol per si sola: la latència de les peticions dinàmiques si no s'hi afegeix Global Accelerator o algun mecanisme d'acceleració; i no aporta res davant d'una caiguda regional completa, que continua sent el risc número u de la proposta.

(2) Latència estimada. L'anada i tornada de xarxa des de Lisboa fins a eu-west-1 ronda els 40-55 ms, i des de París els 25-35 ms. A sobre d'això cal sumar l'establiment de TLS —que amb reutilització de connexió i TLS 1.3 s'amortitza— i el temps de procés al servidor, que a MercadoFresco és per sota de 900 ms al p99 però molt més baix a la mediana. El requisit de 200 ms de primer byte és perfectament assolible per a contingut servit des de CloudFront —on la latència és la del punt de presència local, de l'ordre de 10-20 ms— i assolible per a l'API dinàmica amb Global Accelerator i connexions reutilitzades. El que no seria assolible és servir cada petició dinàmica des d'Irlanda sense memòria cau ni acceleració i amb una consulta lenta al darrere.

(3) Sobre el 99,95 %. Aquí cal ser precís amb els números, perquè és on la conversa se sol tòrcer. 99,95 % mensual són 21,9 minuts d'indisponibilitat al mes. Això és perfectament assolible en una sola regió amb Multi-AZ ben fet: ALB en dues zones, Aurora amb commutació per sota de 30 segons, tasques repartides i desplegaments sense tall. El que una sola regió no cobreix és una caiguda regional completa, que és un succés rar però real.

La resposta honesta al company és que té raó en la proposta i li falta una frase: l'arquitectura d'una sola regió compleix el SLO compromès, i el risc residual —una caiguda regional— ha d'estar escrit, quantificat i acceptat per qui signa el contracte del 99,95 %, exactament com es va fer a 11-01 amb el RPO regional de 6 hores. Si el negoci no accepta aquest risc residual ara que hi ha tres països en joc, aleshores la conversa canvia i cal pressupostar llum pilot a eu-west-3: +12 % de factura, uns 550 USD al mes amb la nova mida.

Solució a l'exercici 3

(1) Creixement lineal. Seria 1.681,60 × 4 = 6.726,40 USD, i el cost per comanda es mantindria exactament igual en 0,00934 USD, perquè el creixement lineal és la definició de cost unitari constant.

(2) Quatre partides que no creixen amb el volum:

Partida Import actual Per què no creix
NAT Gateway 243,80 USD El 81 % és càrrec fix per hora; només creixen les dades processades
ALB i endpoints de VPC 222,80 USD Càrrec fix per hora i per AZ; les unitats de capacitat creixen poc
Govern i seguretat (Config, CloudTrail, GuardDuty, Organizations) 132,90 USD Depèn del nombre de comptes i recursos, no de comandes
CI/CD (CodeBuild, Pipeline, ECR) 26,40 USD Depèn dels desplegaments, no del trànsit
Total que amb prou feines escala 625,90 USD 37,2 % de la factura actual

A aquestes quatre caldria afegir-hi la base fixa de CloudWatch —taulers, alarmes, mètriques personalitzades— i la part de Redshift que depèn del nombre d'informes i no del volum de comandes.

(3) Estimació realista.

Part que escala amb el volum ........  1.055,70 x 4  = 4.222,80 USD
Part que amb prou feines escala .....    625,90 x 1,2 =   751,08 USD
                                                       -------------
Subtotal                                                4.973,88 USD
Ajust per eficiencia d'escala (cache, trams, reserves, -8 %)  -397,91
                                                       -------------
Estimacio                                             ~4.576,00 USD

Cosa que coincideix, dins del marge d'una estimació, amb els 4.600 USD de l'apartat (h) de la solució de referència.

Cost per comanda = 4.600,00 / 720.000 = 0,00639 USD
Objectiu ......................................... 0,00934 USD

Es compleix l'objectiu amb un 31,6 % de marge. I la conclusió de fons és la que dona sentit a tot el mòdul 11: el cost per comanda baixa en créixer perquè el 37 % de la factura és infraestructura fixa que es reparteix entre més comandes. És la raó per la qual presentar el cost absolut a la reunió mensual porta a decisions equivocades, i per la qual la mètrica unitària d'11-02 és la que cal ensenyar al gerent. Amb un advertiment: aquest avantatge només existeix si la part fixa es manté sota control. Si en créixer s'afegeixen comptes, regions, clústers i eines sense criteri, la part fixa creix amb ells i l'economia d'escala desapareix.

Els camins de certificació d'AWS

Aquest curs no prepara per a cap certificació en concret, però cobreix bona part del temari de diverses. El mapa:

Certificació Nivell A qui li convé Mòduls d'aquest curs que la cobreixen
Cloud Practitioner (CLF) Fundacional Perfils no tècnics, comercial, gestió de projecte; o com a primer pas 1, 2, i parts de 4, 5 i 11. Aquest curs la supera amb escreix en profunditat tècnica
Solutions Architect – Associate (SAA) Associat El destí natural després d'aquest curs. Disseny d'arquitectures 1 a 11, gairebé del tot. Faltaria aprofundir en migracions i xarxes híbrides
Developer – Associate (DVA) Associat Qui escriu el codi que corre a AWS 2, 4, 5, 6, 7, 8, 10. Faltaria més SDK, Cognito i API Gateway
SysOps Administrator – Associate (SOA) Associat Operació, monitoratge i automatització 1, 3, 5, 9, 11. Faltaria Systems Manager en profunditat i l'examen té laboratoris pràctics
Solutions Architect – Professional (SAP) Professional Arquitectes amb dos o més anys d'experiència real Base coberta; exigeix a més multicompte avançat, migracions i escenaris molt llargs
DevOps Engineer – Professional (DOP) Professional Qui viu al pipeline 8, 9, 10 en són el nucli; exigeix més automatització i recuperació
Especialitat: Security Especialitat Seguretat al núvol 4, 5, 9 en donen la base; faltaria resposta a incidents i criptografia avançada
Especialitat: Advanced Networking Especialitat Xarxes complexes i híbrides 3 en dona la base; faltaria Transit Gateway, Direct Connect i BGP
Especialitat: Machine Learning Especialitat Ciència de dades i IA No coberta per aquest curs

Tres consells sobre certificacions, dits sense embuts:

  1. L'Associate d'arquitecte és la que té millor relació entre esforç i utilitat si ja has fet aquest curs. Amb dues o tres setmanes de repàs enfocat i exàmens de pràctica, és assolible.
  2. Una certificació no substitueix haver construït alguna cosa. Obre portes en processos de selecció i no ensenya a decidir. Les decisions difícils d'aquest curs —descartar EKS, descartar Shield Advanced, triar un any en lloc de tres— no surten a cap examen.
  3. Si et vols certificar, fes-ho pel temari, no pel segell. El valor real és a les àrees que l'examen t'obliga a estudiar i que tu mai no hauries tocat pel teu compte.

Recursos oficials per continuar

Recurs Què és Per a què fer-lo servir
Documentació d'AWS Referència oficial per servei La font de veritat. Comença sempre per la guia del desenvolupador, no pel blog
AWS Architecture Center Patrons de referència i diagrames Veure com es resolen problemes semblants al teu
AWS Well-Architected Labs Laboratoris pràctics per pilar El millor complement d'11-01, i són gratuïts
Workshops d'AWS Tallers guiats per servei Aprendre un servei nou amb les mans en dues hores
Blog d'arquitectura d'AWS Casos i patrons Subscriu-t'hi; una entrada a la setmana manté el nivell
Calculadora de preus d'AWS Estimació prèvia Fes-la servir abans de crear res, no després
What's New / anuncis Canvis i serveis nous Revisió mensual, no diària: el soroll és enorme
Guies de referència de seguretat Prescriptiu sobre seguretat i multicompte Quan muntis l'organització de debò
Prescriptive Guidance Patrons i fulls de ruta Migracions i modernització

I un consell sobre com llegir-los: la documentació d'AWS és enorme i està pensada per consultar-la, no per llegir-la. La manera productiva de fer-la servir és tenir un problema concret, buscar la pàgina exacta i llegir-la sencera, inclosa la secció de quotes i la de preus, que són les dues que més disgustos eviten.

Allò que aquest curs no ha tocat

Onze mòduls i unes dues-centes hores d'AWS després, això és el que queda fora i és el pas següent natural:

Àrea Serveis Per què importa Quan abordar-la
Analítica i dades Glue, Athena en profunditat, EMR, Kinesis, Lake Formation, QuickSight És l'evolució natural del que fa la Sara amb Redshift: un llac de dades de debò Quan els informes deixin de cabre en un magatzem
IA generativa i aprenentatge automàtic Bedrock, SageMaker, Comprehend, Textract, Personalize Recomanacions, cerca semàntica al catàleg, atenció al client Quan hi hagi una mètrica d'èxit, no abans
IoT IoT Core, Greengrass, SiteWise Vehicles de repartiment, sensors de temperatura a la cadena de fred Ja ha aparegut al projecte final
Migracions DMS, MGN, Migration Hub, Snow Family Portar sistemes existents des d'un centre de dades Quan adquireixis una empresa o migris un ERP
Xarxes avançades Transit Gateway, Direct Connect, PrivateLink, Cloud WAN Connectar desenes de VPC, comptes i oficines Quan la topologia deixi de cabre en un diagrama
Seguretat avançada GuardDuty en profunditat, Security Hub, Macie, Detective, Inspector, Firewall Manager Detecció, correlació i resposta a escala Quan hi hagi algú dedicat a seguretat
Contenidors avançats EKS en producció, App Mesh, Karpenter, GitOps amb Argo Si algun dia es compleixen els criteris de 10-03 Quan l'equip de plataforma tingui quatre persones
Aplicacions i usuaris Cognito, AppSync, Amplify, API Gateway en profunditat El front de les aplicacions mòbils i les API públiques Ja ha aparegut al projecte final
Resiliència Fault Injection Service, Resilience Hub, Elastic Disaster Recovery Provar de debò el que 11-01 va deixar pendent Ja: és el risc alt que continua obert

I l'ordre que té més sentit després d'aquest curs: primer Resiliència, perquè tanca el risc obert més greu; després Analítica, perquè és on hi ha el valor de negoci immediat; i llavors el que demani el problema que tinguis al davant.

Què saps fer ara

En començar aquest curs probablement sabies que AWS existia i que «té molts serveis». Ara saps fer coses concretes:

  • Dissenyar una arquitectura de tres capes al núvol, amb xarxa aïllada, computació elàstica i dades gestionades, i explicar cada decisió.
  • Triar el motor de dades adequat a partir del patró d'accés en lloc de per costum: relacional, clau-valor, en memòria, columnar.
  • Posar una aplicació en contenidors sense gestionar servidors, amb autoescalat, desplegament progressiu i reversió automàtica.
  • Aïllar i protegir: identitats sense credencials permanents, xifratge amb claus pròpies, secrets rotats, WAF i grups de seguretat amb mínim privilegi.
  • Saber què està passant: mètriques, registres, traces, alarmes i taulers que responen a preguntes de negoci i no només d'infraestructura.
  • Desacoblar amb cues, temes, busos i màquines d'estats, i fer-ho bé: idempotència, reintents, cues de missatges fallits i compensació.
  • Construir un pipeline que porti un commit a producció sense intervenció manual i que sàpiga tornar enrere sol.
  • Descriure tota la infraestructura en codi i desplegar-la en diversos comptes i regions sense copiar i enganxar.
  • Governar una organització multicompte amb unitats organitzatives, polítiques de control i una línia base comuna.
  • Auditar el que s'ha construït amb mètode —sis pilars, troballes, riscos i pla prioritzat— i documentar decisions amb les seves alternatives descartades.
  • Llegir una factura d'AWS, repartir-la per entorn i component, trobar el que sobra i posar-hi límits.
  • I sobretot: dir que no. Descartar Shield Advanced amb criteri, descartar EKS amb sis condicions escrites, descartar Beanstalk, descartar Personalize fins a tenir una mètrica. Un arquitecte es reconeix pel que deixa fora.

La neteja final, en l'ordre correcte

Si has seguit les pràctiques en un compte real, això no és opcional. L'ordre importa, perquè molts recursos no es poden esborrar mentre altres en depenguin.

Abans de començar, dues comprovacions: revisa Cost Explorer amb granularitat diària per saber què està costant de debò, i filtra per l'etiqueta Proyecto=mercadofresco a Tag Editor per tenir l'inventari complet. Canvia de regió i repeteix: allò oblidat sol ser a us-east-1.

Fase 1 — Aturar el que consumeix ara (minuts).

REGION=eu-west-1
# Serveis d'ECS a zero tasques abans d'esborrar res
aws ecs update-service --region $REGION --cluster ecs-mercadofresco \
  --service svc-mercadofresco-tienda-fg --desired-count 0
aws ecs update-service --region $REGION --cluster ecs-mercadofresco \
  --service svc-mercadofresco-trabajadores --desired-count 0

# Grups de treball de Redshift Serverless (el mes car si s'oblida)
aws redshift-serverless delete-workgroup --region $REGION \
  --workgroup-name wg-mercadofresco-analitica

# Clusters d'EKS de l'exercici de 10-03: 73 USD/mes cadascun
aws eks list-clusters --region $REGION

Fase 2 — Computació i contenidors. Serveis d'ECS, després el clúster; funcions Lambda; instàncies EC2 —acabar-les, no aturar-les, perquè una instància aturada continua pagant el seu volum EBS—; grups d'Auto Scaling; i les imatges d'ECR, que es cobren per GB emmagatzemat.

Fase 3 — Balanceig i lliurament. Oients de l'ALB, després l'ALB, després els grups de destí. La distribució de CloudFront s'ha de deshabilitar primer i esperar que es propagui abans d'esborrar-la, cosa que triga de l'ordre de 15 minuts. Les adreces IP elàstiques s'alliberen a part: una IP sense associar costa més que una d'associada.

Fase 4 — Dades. Aquí convé aturar-se a pensar, perquè és irreversible. Clústers d'Aurora i RDS amb --skip-final-snapshot només si de debò no vols conservar res; grups de rèplica d'ElastiCache; taules de DynamoDB; i els buckets de S3, que s'han de buidar abans d'esborrar, incloses les versions antigues i els marcadors d'esborrat si el versionat està actiu, que és la causa número u de «no puc esborrar aquest bucket».

Fase 5 — Xarxa. L'ordre és estricte i no admet dreceres:

endpoints de VPC  ->  NAT Gateway  ->  alliberar IP elastiques  ->
taules de rutes   ->  subxarxes    ->  grups de seguretat       ->
porta d'enllac d'internet (desassociar i esborrar)  ->  VPC

Els endpoints d'interfície són la fuita més silenciosa: costen uns 0,011 USD per hora, per AZ i per endpoint, encara que no hi passi ni un sol byte. Set endpoints en dues AZ són 112 USD al mes per res.

Fase 6 — Observabilitat i govern. Alarmes i taulers de CloudWatch; grups de registres, que continuen costant emmagatzematge indefinidament; canaris de Synthetics; l'enregistrador de Config, que cobra per element de configuració; els trails de CloudTrail més enllà del primer, que és gratuït; i les regles d'EventBridge.

Fase 7 — Seguretat i gestió. Programar l'esborrat de les claus de KMS, amb un període d'espera d'entre 7 i 30 dies —costen 1 USD al mes mentrestant—; secrets de Secrets Manager, també amb període de recuperació; paràmetres avançats de Parameter Store, que són els únics que cobren; i les Web ACL de WAF, que costen 5 USD al mes més 1 per regla encara que no estiguin associades a res.

Fase 8 — Comprovació final. Quatre passos que ningú no fa i que eviten la sorpresa del mes següent:

  1. Espera 48 hores i torna a mirar Cost Explorer amb granularitat diària. El que continuï apareixent és el que se t'ha oblidat.
  2. Recorre les regions, especialment us-east-1, on acaben les Web ACL de CloudFront i moltes proves.
  3. Revisa Trusted Advisor, que llista recursos orfes.
  4. Deixa un pressupost d'1 USD actiu amb avís al 100 %. És la teva xarxa de seguretat permanent i costa zero.

I el que no s'ha d'esborrar: el compte en si, si vols continuar practicant; el trail de gestió, que és gratuït; i el pressupost de vigilància. Tancar el compte és l'opció nuclear i només té sentit si no hi penses tornar.

Conclusió

Aquí s'acaba el curs, i val la pena mirar el camí complet abans de tancar.

Vas començar amb un compte buit i una botiga que queia els divendres. Acabes amb una arquitectura que serveix quatre ciutats amb 900 comandes per hora al pic, que es desplega gairebé cinc vegades per setmana en horari laboral, que es restaura en quatre minuts, que està descrita íntegrament en codi, governada en sis comptes, auditada amb els sis pilars del marc Well-Architected i pressupostada fins al cèntim per comanda. Els cinc problemes que van obrir el curs estan resolts i cadascun té un número al costat.

Però el que t'endús no són els serveis. Els serveis canvien: la meitat de les pantalles d'aquest curs seran diferents d'aquí a tres anys i hi haurà noms nous que avui no existeixen. El que no canvia és el mètode, i això és el que has practicat onze mòduls seguits: començar pel problema i no per la tecnologia; triar el motor de dades pel seu patró d'accés; mesurar abans d'optimitzar i optimitzar abans de comprometre; provar la recuperació en lloc de suposar-la; automatitzar el que es fa dues vegades; escriure les decisions amb les seves alternatives descartades; i posar un número al costat de cada afirmació.

I amb aquest mètode ve la seva part menys vistosa i més valuosa: la capacitat de dir que no. Aquest curs va descartar Shield Advanced amb criteri, va descartar EKS amb sis condicions escrites que el canviarien, va descartar Elastic Beanstalk, va descartar una segona regió activa, va descartar Personalize fins a tenir una mètrica d'èxit i va descartar un compromís a tres anys que hauria condicionat l'arquitectura. Cap d'aquestes decisions no surt en un diagrama i totes elles són la feina real d'un arquitecte. Se't reconeixerà abans pel que deixis fora amb arguments que pel que aconsegueixis encabir.

Queda un últim consell, i és l'únic que de debò importa a partir d'aquí: munta't alguna cosa teva. No un altre laboratori guiat, ni un altre tutorial. Alguna cosa petita i real, que resolgui un problema que t'importi: el web d'un club, un servei per automatitzar alguna cosa tediosa, un tauler amb dades que t'interessin. Posa-ho en un compte propi amb MFA i un pressupost de cinc dòlars. Trenca-ho. Arregla-ho a les onze de la nit. Descobreix per tu mateix que les còpies no funcionaven, que aquell grup de seguretat estava obert i que l'endpoint que vas deixar encès t'ha costat catorze dòlars. Aquell dia hauràs après més que en qualsevol mòdul d'aquest curs, perquè l'error propi es recorda i l'aliè s'oblida.

MercadoFresco, mentrestant, continua repartint producte fresc en vint-i-quatre hores. Els divendres a la tarda, quan entren nou-centes comandes per hora, les tasques ja són amunt des de les 16:45 perquè algú va programar aquest escalat. Ningú no se n'assabenta. I aquest és exactament el senyal que la feina està ben feta: la millor arquitectura és la que ningú no nota.

Gràcies per arribar fins aquí. Ara esborra els recursos i ves a construir alguna cosa.

Curs d'AWS

Mòdul 1: Introducció a AWS

Mòdul 2: Serveis principals d'AWS

Mòdul 3: Xarxes i lliurament de contingut

Mòdul 4: Seguretat i identitat

Mòdul 5: Monitoratge i gestió

Mòdul 6: Bases de dades

Mòdul 7: Integració d'aplicacions

Mòdul 8: Eines per a desenvolupadors

Mòdul 9: Infraestructura com a codi i govern de comptes

Mòdul 10: Contenidors a AWS

Mòdul 11: Millors pràctiques i gestió de costos

© Copyright 2026. Tots els drets reservats