|
2 | 2 |
|
3 | 3 | - **Curso:** rust-cloud |
4 | 4 | - **Semestre:** 5 |
5 | | -- **Estado:** planned |
| 5 | +- **Estado:** draft |
6 | 6 | - **Milestone:** 09. AWS en la práctica |
| 7 | +- **Issue:** #33 |
7 | 8 | - **Módulo Rust:** `src/aws_practice.rs` |
8 | 9 |
|
| 10 | +## Concepto |
| 11 | + |
| 12 | +AWS en la práctica es el aterrizaje de los fundamentos del curso en una |
| 13 | +plataforma concreta. No es un catálogo de servicios ni una guía de consola. Es |
| 14 | +un ejercicio de traducción: tomar una necesidad de producto y expresarla como |
| 15 | +decisiones AWS explícitas sobre cómputo, almacenamiento, red, identidad, |
| 16 | +operación, costo y frontera de responsabilidad. |
| 17 | + |
| 18 | +La pregunta central no es "¿qué servicio de AWS uso?", sino "¿qué contrato del |
| 19 | +sistema necesito y qué servicio de AWS lo representa con menos deuda para este |
| 20 | +caso?". |
| 21 | + |
| 22 | +## Imagen mental |
| 23 | + |
| 24 | +Piensa en AWS como una ciudad con infraestructura compartida. |
| 25 | + |
| 26 | +- **VPC** define calles, zonas y fronteras de tráfico. |
| 27 | +- **IAM** define credenciales, permisos y llaves de acceso. |
| 28 | +- **EC2, ECS, Lambda y servicios administrados** son formas distintas de operar |
| 29 | + trabajo. |
| 30 | +- **S3, EBS, EFS y bases administradas** son formas distintas de guardar datos. |
| 31 | +- **CloudWatch, CloudTrail y métricas** permiten investigar qué ocurrió. |
| 32 | +- **Budgets, tags y Cost Explorer** ayudan a explicar gasto y responsabilidad. |
| 33 | + |
| 34 | +La ciudad ofrece muchas herramientas, pero la ingeniería sigue siendo elegir |
| 35 | +rutas, límites, dueños y señales que sostengan un sistema real. |
| 36 | + |
| 37 | +## Problema |
| 38 | + |
| 39 | +AWS es amplio y cambia con frecuencia. Enseñarlo como lista de productos |
| 40 | +produce estudiantes que reconocen nombres, pero no necesariamente entienden la |
| 41 | +decisión detrás de esos nombres. Además, las demos rápidas pueden ocultar temas |
| 42 | +centrales: permisos excesivos, redes públicas por comodidad, recursos sin tags, |
| 43 | +costos invisibles, datos sin ciclo de vida, dependencia innecesaria de servicios |
| 44 | +específicos y operación sin señales. |
| 45 | + |
| 46 | +La enseñanza de AWS suele caer en cuatro errores: |
| 47 | + |
| 48 | +- empezar por consola y no por contrato de arquitectura; |
| 49 | +- presentar servicios como equivalentes sin hablar de responsabilidad operativa; |
| 50 | +- usar credenciales amplias para avanzar rápido; |
| 51 | +- ignorar costo, tags, regiones, límites y observabilidad hasta el final. |
| 52 | + |
| 53 | +Sin una base clara, el estudiante puede creer que AWS se aprende memorizando |
| 54 | +nombres de servicios, copiando diagramas de referencia o desplegando recursos |
| 55 | +sin explicar sus invariantes. |
| 56 | + |
| 57 | +## Alternativas consideradas |
| 58 | + |
| 59 | +1. **Curso guiado por consola.** Es vistoso y rápido, pero envejece pronto y |
| 60 | + puede enseñar clics antes que criterios. |
| 61 | +2. **Curso guiado por certificación.** Ordena vocabulario, pero prioriza |
| 62 | + cobertura de examen sobre diseño de sistemas. |
| 63 | +3. **Curso guiado por patrones transferibles.** Parte de cargas, datos, red, |
| 64 | + identidad, observabilidad y costo; después nombra servicios AWS como |
| 65 | + implementaciones posibles. |
| 66 | + |
| 67 | +## Justificación |
| 68 | + |
| 69 | +Este capítulo adopta la tercera alternativa. AWS aparece como proveedor |
| 70 | +concreto, pero no reemplaza el canon del curso. Cada servicio se estudia como |
| 71 | +representación de una decisión ya trabajada: modelo de servicio, cómputo, |
| 72 | +almacenamiento, VPC, IAM, managed services, serverless y FinOps. |
| 73 | + |
| 74 | +La decisión conserva RFC-0001 §2: concepto antes de implementación, problema |
| 75 | +antes de herramienta, alternativas antes de elección. También mantiene |
| 76 | +RFC-0001 §10: proveedor después de fundamentos. |
| 77 | + |
| 78 | +## Invariantes del capítulo |
| 79 | + |
| 80 | +- AWS se enseña como traducción de fundamentos, no como catálogo. |
| 81 | +- Todo recurso debe declarar región, ambiente, dueño y propósito. |
| 82 | +- IAM debe preferir permisos mínimos y credenciales temporales cuando aplique. |
| 83 | +- Una VPC debe distinguir tráfico público, privado y dependencias externas. |
| 84 | +- La elección de cómputo debe explicar operación delegada, escalado y límites. |
| 85 | +- Los datos deben declarar durabilidad, recuperación, ciclo de vida y frontera |
| 86 | + de acceso. |
| 87 | +- Serverless debe declarar evento, timeout, concurrencia, retry e idempotencia. |
| 88 | +- Los servicios administrados no eliminan responsabilidad: cambian qué se |
| 89 | + delega y qué sigue siendo del equipo. |
| 90 | +- Toda decisión AWS debe tener señal operativa: logs, métricas, auditoría o |
| 91 | + trazas según el caso. |
| 92 | +- El costo debe ser atribuible mediante tags, unidad económica y presupuesto. |
| 93 | +- Los nombres, precios, cuotas y límites de AWS son material vivo y deben |
| 94 | + revisarse cuando se usen ejemplos fechados. |
| 95 | + |
| 96 | +## Comparación educativa inicial |
| 97 | + |
| 98 | +| Necesidad | Pregunta de ingeniería | Ejemplo AWS posible | Riesgo común | |
| 99 | +|-----------|------------------------|---------------------|--------------| |
| 100 | +| Ejecutar API estable | ¿Quién opera runtime, hosts y escalado? | EC2, ECS, App Runner o Lambda | Elegir por moda, no por contrato | |
| 101 | +| Publicar assets | ¿Qué durabilidad y acceso necesitan los objetos? | S3 y CloudFront | Hacer público lo que debía ser privado | |
| 102 | +| Separar red | ¿Qué debe vivir público y qué debe vivir privado? | VPC, subnets, route tables | Exponer bases o SSH por comodidad | |
| 103 | +| Acceso humano | ¿Qué permisos y duración son aceptables? | IAM Identity Center, roles | Usuarios permanentes con permisos amplios | |
| 104 | +| Procesar eventos | ¿Qué pasa si se repite el evento? | Lambda, SQS, EventBridge | Retry sin idempotencia | |
| 105 | +| Observar operación | ¿Qué señal permite investigar incidentes? | CloudWatch, CloudTrail | Logs sin retención ni correlación | |
| 106 | +| Controlar costo | ¿Quién entiende el gasto y contra qué unidad? | Tags, Budgets, Cost Explorer | Factura agregada sin dueño | |
| 107 | + |
| 108 | +## Decisiones registradas |
| 109 | + |
| 110 | +- El capítulo no empieza por comandos de AWS CLI ni por consola. |
| 111 | +- AWS se modela como una traducción de fundamentos a servicios concretos. |
| 112 | +- Los servicios se nombran solo cuando ayudan a explicar una decisión. |
| 113 | +- El modelo Rust mínimo deberá representar una carga AWS educativa sin |
| 114 | + depender de SDKs. |
| 115 | +- Las recomendaciones dependientes de precios, cuotas o límites concretos se |
| 116 | + consideran material vivo y no se publican sin fecha y revisión humana. |
| 117 | + |
9 | 118 | ## Nota editorial |
10 | 119 |
|
11 | | -Capítulo planeado. No está marcado como `reviewed` ni `published`. |
| 120 | +Este capítulo está en borrador. No está marcado como `reviewed` ni `published`. |
0 commit comments