CLF-C02

Deep Dive

Practicar ahora
D3 · Tecnología y servicios en la nube

Cómputo: EC2, Lambda y contenedores

D3 es el dominio con mayor peso (34%). AWS ofrece múltiples opciones de cómputo. El examen CLF-C02 evaluará escenarios donde debes elegir el servicio correcto: EC2 vs Lambda, On-Demand vs Reserved vs Spot, ECS vs EKS vs Fargate.

Opciones de cómputo en AWS

EC2

IaaS

VMs con control total

Lambda

Serverless

Código sin servidores

ECS/EKS

Containers

Orquestación de contenedores

Beanstalk

PaaS

Deploy gestionado de apps

Amazon EC2 — IaaS detallado

Icon-Architecture/48/Arch_Amazon-EC2_48

Elastic Compute Cloud — servidores virtuales en la nube AWS

Amazon EC2 proporciona capacidad de cómputo segura y redimensionable en la nube. Permite aprovisionar instancias (servidores virtuales) con el sistema operativo, tipo de CPU, RAM y almacenamiento que necesites.

Conceptos clave de EC2

Instance Types

Combinaciones de CPU, memoria, almacenamiento y red. Ej: t3.micro (propósito general), c5.xlarge (optimizado para CPU), r5.large (optimizado para memoria).

AMI (Amazon Machine Image)

Plantilla que contiene el SO y software. Es la "imagen" de la que se lanza una instancia. Pueden ser de AWS, del AWS Marketplace o personalizadas.

Security Groups

Firewall virtual a nivel de instancia. Son stateful: si permites entrada, la respuesta de salida es automática. Solo tienen reglas Allow (no Deny).

Key Pairs

Par de claves pública/privada para acceso SSH (Linux) o para descifrar contraseña de Windows. AWS guarda la pública, tú la privada.

User Data

Script que se ejecuta al lanzar la instancia por primera vez. Útil para instalar software, configurar settings, etc.

Instance Store vs EBS

Instance Store = almacenamiento efímero (se pierde al parar la instancia). EBS = almacenamiento persistente (sobrevive a paradas y reinicios).

Familias de tipos de instancia

FamiliaOptimizado paraEjemplos
t, mPropósito generalt3.micro, m5.large
cCómputo (CPU)c5.xlarge, c6g.medium
r, x, zMemoria (RAM)r5.large, x1e.32xlarge
i, d, hAlmacenamientoi3.xlarge, d3.xlarge
p, g, infGPU / MLp3.2xlarge, g4dn.xlarge
a1, c6gARM (Graviton)c6g.medium (más económico)

Modelos de precios EC2

On-Demand

Precio base (referencia)

Paga por el tiempo de cómputo de las instancias que uses (por hora o por segundo). Sin compromisos a largo plazo ni pagos por adelantado.

Cuándo usar

Apps con cargas impredecibles. Desarrollo y testing. Usuarios que NO quieren compromiso a largo plazo.

Reserved Instances (RI)

Hasta 72% vs On-Demand

Compromiso de usar una configuración específica de instancia por 1 o 3 años. Pago total por adelantado, parcial o mensual.

Cuándo usar

Apps con estado estable y uso predecible. Cargas de producción que corren 24/7. Cuando sabes exactamente qué tipo de instancia necesitas por al menos 1 año.

Savings Plans

Hasta 66% vs On-Demand

Compromiso de gasto ($/hora) por 1 o 3 años. Más flexible que Reserved — aplica a cualquier tipo de instancia, región o familia (Compute Savings Plans).

Cuándo usar

Cuando quieres el ahorro de Reserved pero con más flexibilidad. Cargas estables pero con posibles cambios de tipo de instancia o región.

Spot Instances

Hasta 90% vs On-Demand

Usa la capacidad sobrante de AWS al precio spot del mercado. AWS puede interrumpir la instancia con 2 minutos de aviso cuando necesita esa capacidad.

Cuándo usar

Cargas tolerantes a interrupciones: procesamiento de imágenes, renderizado, análisis de big data, HPC. NO para producción crítica.

Dedicated Hosts

Variable — sin descuento por capacidad

Servidor físico completamente dedicado a tu uso. Te ves el socket físico, los cores y la identificación del host.

Cuándo usar

Licencias de software que requieren sockets/cores físicos (BYOL). Requisitos de compliance que prohíben hardware compartido. Más caro que las otras opciones.

Familias de instancias EC2 — Nomenclatura

AWS organiza las instancias EC2 en familias según su optimización. El nombre de la instancia codifica familia, generación y tamaño: t3.micro = familia T, generación 3, tamaño micro.

FamiliaSeriesOptimizaciónCasos de uso
Propósito generalM, T (t2/t3/t4g)CPU/memoria balanceadosServidores web, aplicaciones pequeñas, bases de datos dev
Optimizadas para cómputoC (c5/c6/c7g)Procesadores de alto rendimientoProcesamiento batch, gaming, HPC, encoding de video
Optimizadas para memoriaR, X, z (r5/x1e/z1d)Gran cantidad de RAMBases de datos in-memory, Big Data en tiempo real, SAP HANA
Optimizadas para almacenamientoI, D, H (i3/d3/h1)Alta E/S secuencial y randomData warehousing, sistemas de archivos distribuidos, Hadoop
Cómputo aceleradoP, G, Inf (p3/g4dn/inf1)GPUs / aceleradores hardwareML training e inferencia, renderizado 3D, gaming

Nomenclatura de instancias

tFamilia (propósito general burstable)3Generación (3ª gen — más nuevo = mejor rendimiento/precio).microTamaño: nano < micro < small < medium < large < xlarge < 2xlarge...

Auto Scaling y Elastic Load Balancing

Icon-Architecture/48/Arch_Amazon-EC2-Auto-Scaling_48

AWS Auto Scaling

Ajusta automáticamente el número de instancias EC2 según la demanda. Define un grupo de escalado con capacidad mínima, deseada y máxima.

Mínimo

Siempre activas (ej: 2)

Deseado

Estado normal (ej: 4)

Máximo

Límite de escala (ej: 10)

  • • Scale-out: añade instancias cuando CPU > 70%
  • • Scale-in: elimina instancias cuando CPU < 30%
  • • Basado en métricas de CloudWatch o schedule

Elastic Load Balancing (ELB)

Distribuye el tráfico entrante entre múltiples instancias EC2, contenedores o IPs en una o más AZs.

ALB — Application LB

Capa 7 HTTP/S. Routing por URL, headers, métodos HTTP. Para apps web y microservicios.

NLB — Network LB

Capa 4 TCP/UDP/TLS. Ultra-baja latencia, millones de req/seg. Para aplicaciones de alto rendimiento.

GWLB — Gateway LB

Para appliances de seguridad de terceros (firewalls, IDS). Capa 3.

CLB — Classic LB

Legacy. No usar para nuevas aplicaciones. Usa ALB o NLB.

Auto Scaling + ELB = Arquitectura elástica y altamente disponible

ELB distribuye el tráfico entre instancias saludables. Auto Scaling añade o elimina instancias según la carga. Juntos permiten que la aplicación responda a cualquier nivel de tráfico sin intervención manual, con alta disponibilidad multi-AZ.

Otros servicios de cómputo

Icon-Architecture/48/Arch_AWS-Batch_48

AWS Batch

Ejecuta trabajos de cómputo por lotes (batch) a cualquier escala sin gestionar la infraestructura subyacente. Define el trabajo en un contenedor, AWS aprovisiona los recursos necesarios automáticamente.

  • • Gestiona la cola de trabajos automáticamente
  • • Aprovisiona EC2 o Fargate según la carga
  • • Diferencia de Lambda: sin límite de tiempo de ejecución
  • • Ideal para: simulaciones, rendering, análisis genómico

AWS Outposts

Hardware físico de AWS instalado en el datacenter del cliente. Proporciona las mismas APIs, herramientas y servicios de AWS, pero localmente.

  • • Misma experiencia que AWS, pero on-premises
  • • Para latencia ultra-baja o residencia de datos local
  • • AWS gestiona el hardware remotamente
  • • Modelo de despliegue híbrido

AWS Lambda — Serverless

Icon-Architecture/48/Arch_AWS-Lambda_48

Ejecuta código sin aprovisionar ni gestionar servidores

AWS Lambda permite ejecutar código sin aprovisionar ni administrar servidores. Pagas solo por el tiempo de cómputo consumido — no se cobra cuando el código no está en ejecución.

Características de Lambda

  • Lenguajes: Node.js, Python, Java, Go, Ruby, .NET, custom runtime
  • Timeout: máximo 15 minutos por ejecución
  • Memoria: 128 MB a 10 GB configurable
  • Concurrencia: escala a miles de ejecuciones paralelas automáticamente
  • Cold start: primera invocación puede tener latencia adicional (milisegundos a segundos)

Triggers comunes de Lambda

  • • S3: evento cuando se sube/elimina un objeto
  • • API Gateway: request HTTP/REST/WebSocket
  • • DynamoDB Streams: cambios en tablas
  • • SNS: mensaje en topic
  • • SQS: mensaje en cola
  • • CloudWatch Events/EventBridge: eventos programados (cron)
  • • Cognito: triggers de autenticación
  • • Kinesis: stream de datos en tiempo real

Precios Lambda

Por solicitudes

$0.20 por millón de requests. Las primeras 1 millón son gratis (siempre, no solo free tier).

Por duración

Se factura en incrementos de 1ms. Basado en memoria configurada × tiempo de ejecución.

Contenedores: ECS, EKS y Fargate

Icon-Architecture/48/Arch_Amazon-Elastic-Container-Service_48

Amazon ECS

Elastic Container Service

Orquestación de contenedores Docker gestionada por AWS. Más simple que Kubernetes. Integración nativa con servicios AWS.

  • • Orquestación propia de AWS (no K8s)
  • • Más fácil de configurar que EKS
  • • Se puede usar con Fargate (serverless) o EC2
Icon-Architecture/48/Arch_Amazon-Elastic-Kubernetes-Service_48

Amazon EKS

Elastic Kubernetes Service

Kubernetes gestionado en AWS. Si ya usas Kubernetes en otro cloud o on-premises, EKS facilita la migración y consistencia.

  • • Kubernetes estándar (portabilidad)
  • • Más complejo que ECS
  • • Compatibilidad con ecosistema K8s
Icon-Architecture/48/Arch_AWS-Fargate_48

AWS Fargate

Serverless containers

Motor serverless para contenedores. Elimina la necesidad de gestionar instancias EC2 para ECS o EKS. Pagas solo por los recursos de CPU y memoria usados.

  • • Sin gestión de servidores
  • • Compatible con ECS y EKS
  • • Pago por uso (CPU + memoria)

Regla rápida para el examen

ECS = contenedores en AWS, orquestación de AWS, sin experiencia K8s previa

EKS = ya usas Kubernetes, necesitas portabilidad multi-cloud

Fargate = contenedores SIN gestionar servidores EC2 (serverless containers)

Lambda = código SIN contenedores, event-driven, funciones cortas

Elastic Beanstalk y Amazon Lightsail

Icon-Architecture/48/Arch_AWS-Elastic-Beanstalk_48

AWS Elastic Beanstalk

PaaS — Deploy sin gestionar infraestructura

Desplega y escala aplicaciones web automáticamente. Solo sube tu código y Beanstalk gestiona el aprovisionamiento, balanceo de carga, escalado y monitoreo.

  • • Soporta: Node.js, Python, Java, PHP, Ruby, Go, .NET
  • • Acceso completo a los recursos EC2 subyacentes
  • • Sin costo adicional — pagas por los recursos (EC2, RDS)
  • • Ideal: desarrolladores que no quieren gestionar infra
Icon-Architecture/48/Arch_Amazon-Lightsail_48

Amazon Lightsail

VPS simple — precio fijo predecible

Servidores virtuales simples con precio fijo mensual. Diseñado para usuarios menos técnicos o proyectos pequeños que necesitan VPS simple sin complejidad de AWS completo.

  • • Desde $3.50/mes con 512MB RAM, 1vCPU, 20GB SSD
  • • Precio fijo y predecible (no pago por uso variable)
  • • Incluye IP estática, DNS, monitoreo, backups
  • • Ideal: sitios web simples, blogs, dev/test pequeño

Tabla comparativa — ¿Cuándo usar cada servicio?

ServicioControl SOGestión infraEscaladoMejor para
EC2TotalClienteManual o Auto ScalingLift-and-shift, control total, custom SO
LambdaNingunoAWS 100%Automático a ceroEvent-driven, funciones cortas, cero infra
ECS (EC2)EC2 síContainers: AWS; EC2: clienteECS AutoscalingContenedores con control del servidor
ECS/EKS (Fargate)NingunoAWS 100%AutomáticoContenedores serverless, sin gestionar EC2
EKSControl plane: AWSKubernetes nativoKubernetes HPAPortabilidad K8s, equipos con expertise K8s
Elastic BeanstalkAcceso EC2 disponibleAWS gestiona deployAutomáticoDevs que solo quieren subir código
LightsailSí (VPS)Simple UI de AWSManualVPS simple, precio fijo, proyectos pequeños

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

Una empresa ejecuta una aplicación web en producción que corre 24/7 los 365 días del año, sin interrupciones previstas. El equipo quiere reducir los costos de cómputo en EC2 al máximo. La app tiene un perfil de carga estable y predecible. ¿Qué modelo de precios de EC2 se recomienda?