AWS

La mayor plataforma cloud del mundo - compute, storage, bases de datos, AI/ML y 200+ servicios detrás de Netflix y Airbnb

TL;DR

En una línea: AWS es la plataforma cloud de Amazon con 200+ servicios - el líder de la industria que impulsa Netflix, Airbnb y millones de empresas.

Capacidades principales:

  • Compute - Instancias EC2, Lambda serverless, contenedores
  • Almacenamiento - S3 almacenamiento de objetos, EBS almacenamiento en bloque
  • Base de datos - RDS, DynamoDB, ElastiCache
  • Infraestructura global - 30+ regiones, 100+ ubicaciones edge

Architecture

Service Categories

  • Compute: EC2 (servidores virtuales), Lambda (serverless), ECS/EKS (contenedores)
  • Storage: S3 (objetos), EBS (bloque), EFS (sistema de archivos), Glacier (archivo)
  • Database: RDS (relacional), DynamoDB (NoSQL), ElastiCache (en memoria)
  • Networking: VPC (red virtual), Route 53 (DNS), CloudFront (CDN)
  • Security: IAM (identidad), KMS (cifrado), Secrets Manager

Core Concepts

  • Region: Área geográfica con múltiples centros de datos (ej: us-east-1)
  • Availability Zone: Centro de datos aislado dentro de una región
  • ARN: Amazon Resource Name - identificador único para cualquier recurso
  • IAM: Identity and Access Management - controla quién puede hacer qué

Quick Start

Create Account

  1. Ve a aws.amazon.com
  2. Haz clic en “Create an AWS Account”
  3. Proporciona email, info de pago (capa gratuita disponible)
  4. Habilita MFA para la cuenta root (Security → MFA)

Install CLI

# macOS
brew install awscli

# Linux
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip && sudo ./aws/install

# Verificar
aws --version

Configure Credentials

# Crear clave de acceso: IAM → Users → Security credentials → Create access key
aws configure
# Ingresa: Access Key ID, Secret Access Key, Region (ej: us-east-1), Formato de salida (json)

First Commands

# Verificar identidad
aws sts get-caller-identity

# Listar buckets S3
aws s3 ls

Core Services

Compute

ServicioCaso de usoModelo de precios
EC2Servidores virtualesPor hora/segundo
LambdaFunciones serverlessPor solicitud + duración
ECS/EKSOrquestación de contenedoresRecursos subyacentes
LightsailVPS simpleMensual fijo

Storage

ServicioCaso de usoModelo de precios
S3Almacenamiento de objetos, hosting estáticoPor GB + solicitudes
EBSAlmacenamiento en bloque para EC2Por GB provisionado
EFSSistema de archivos compartidoPor GB usado
GlacierAlmacenamiento de archivoPor GB (económico)

Database

ServicioCaso de usoModelo de precios
RDSMySQL, PostgreSQL gestionadoInstancia + almacenamiento
DynamoDBNoSQL, serverlessPor solicitud o provisionado
ElastiCacheRedis/MemcachedHoras de instancia

Gotchas

Cost Traps

  • EC2 olvidado: Las instancias corren 24/7 → Configurar alertas de facturación y usar auto-stop
  • NAT Gateway: $0.045/hora + datos → Usar instancias NAT para entornos de desarrollo
  • Transferencia de datos saliente: Los costos se acumulan → Usar CloudFront para tráfico alto
  • Snapshots EBS: Se acumulan silenciosamente → Automatizar limpieza con políticas de ciclo de vida

Permission Issues

  • AccessDenied: Verificar políticas IAM → Usar aws iam simulate-principal-policy para depurar
  • Assume role fallido: La política de confianza debe permitir la entidad que llama

Common Errors

# "Unable to locate credentials"
aws configure  # Configurar credenciales

# "An error occurred (UnauthorizedOperation)"
# → Falta permiso IAM, verificar política

# "The security token included in the request is expired"
# → Actualizar credenciales o token de sesión

Next Steps