¿Qué es la computación en la nube?
En términos simples, computación significa ejecutar código y programas en algún lugar. AWS proporciona este "lugar" de varias formas diferentes. Esta guía explica los tres enfoques principales.
---
Imagínalo como distintos tipos de alojamiento
Amazon EC2 = alquilar un apartamento. Lo decoras como quieres, permaneces el tiempo que necesitas, pero la limpieza y el mantenimiento son tu responsabilidad. AWS Lambda = quedarse en un hotel. Usas la habitación cuando la necesitas, te vas cuando terminas, y el hotel se encarga de todo. Contenedores = una casa modular móvil. Donde sea que la muevas, el entorno interior siempre es idéntico.
---
Amazon EC2 — Tu propio servidor virtual
EC2 (Elastic Compute Cloud) te permite alquilar una computadora virtual en el centro de datos de AWS.
Puedes tener un nuevo servidor funcionando en minutos y eliminarlo cuando ya no lo necesites.
Tres conceptos clave:
Una AMI (Amazon Machine Image) es una plantilla para crear un servidor. Contiene un sistema operativo preconfigurado y el software que quieras preinstalado. Un AMI permite crear docenas de servidores idénticos al instante.
Los Tipos de Instancia definen las especificaciones de rendimiento del servidor: cuántas CPUs, cuánta memoria. Eliges el tipo que coincida con tu carga de trabajo.
Facturación por segundo: solo pagas por el tiempo que tu servidor está realmente en funcionamiento.
---
AWS Lambda — Ejecutar código sin servidor
Lambda es un servicio de computación "sin servidor" (serverless). Esto no significa que no haya servidor, sino que AWS gestiona toda la infraestructura del servidor de forma invisible para ti.
Subes tu código a Lambda y se ejecuta automáticamente cuando ocurre un evento específico. Si no ocurre ningún evento, Lambda no se ejecuta y no se te cobra.
Ejemplo cotidiano: cuando un usuario sube una foto de perfil en una app, Lambda la redimensiona automáticamente. Lambda se ejecuta solo durante ese proceso y luego se detiene.
Cuatro características clave: sin gestión de servidores, ejecución basada en eventos, facturación por milisegundo (cero ejecución = cero costo), tiempo máximo de ejecución de 15 minutos.
---
Servicios de contenedores — El mismo entorno en todas partes
Un contenedor empaqueta tu código junto con todas las bibliotecas y configuraciones necesarias. Donde sea que el contenedor se ejecute, el entorno interior es siempre idéntico.
| Servicio | Descripción | |---------|-------------| | Amazon ECS | Servicio de gestión de contenedores propio de AWS | | Amazon EKS | Kubernetes administrado en AWS | | AWS Fargate | Ejecutar contenedores sin gestionar servidores EC2 | | Amazon ECR | Almacén de imágenes de contenedores |
!EC2 vs Lambda vs contenedores
¿Qué servicio usar en cada situación?
| Situación | Servicio recomendado | |-----------|---------------------| | Necesitas elegir tu propio sistema operativo | Amazon EC2 | | Quieres que el código se ejecute solo cuando ocurre un evento | AWS Lambda | | La app debe funcionar igual en múltiples entornos | Contenedores (ECS/EKS + Fargate) |
---
Puntos clave para el examen
"Ejecutar código sin gestionar servidores, basado en eventos" → AWS Lambda "Tiempo máximo de ejecución de Lambda" → 15 minutos "Elegir y gestionar el sistema operativo tú mismo" → Amazon EC2 "Plantilla para crear un servidor" → AMI (Amazon Machine Image) "Ejecutar en entornos idénticos en cualquier lugar" → Contenedores "Ejecutar contenedores sin gestionar servidores" → AWS Fargate "Servicio Kubernetes administrado" → Amazon EKS Lambda cobra solo por milisegundos de ejecución real — sin ejecución, sin costo