SAA-C03
Deep Dive
Los costos de red son una trampa frecuente en SAA-C03. NAT Gateway puede ser sorprendentemente caro para cargas de trabajo que acceden masivamente a S3 o DynamoDB. VPC Endpoints eliminan esos costos. CloudFront reduce el egress de S3. Entender qué tráfico se cobra y cómo evitarlo es clave para arquitecturas cost-optimized.
Contenido
Regla general: ingress a AWS es gratis. Egress desde AWS cobra (hacia Internet). Transferencia entre servicios en la misma región puede ser gratis o de bajo costo dependiendo de las AZs.
Internet → AWS (ingress)
Subir datos a S3, enviar requests a EC2, etc. Siempre gratis.
AWS → Internet (egress)
EC2, S3, etc. enviando datos al cliente. Principal costo de red.
Entre AZs misma región
EC2 en AZ-a enviando a EC2 en AZ-b. Se cobra en ambos sentidos.
Entre servicios misma AZ
EC2 y RDS en la misma AZ comunicándose por IP privada.
VPC Peering misma región
Igual que inter-AZ. Si están en la misma AZ, puede ser gratis.
AWS Direct Connect (datos salida)
Mucho más barato que egress a Internet. Ventaja de DX para grandes volúmenes.
CloudFront → Internet
Más barato que egress directo desde S3/EC2. Reducción de costos con CDN.
NAT Gateway es caro si no se optimiza. Cobra por hora de disponibilidad (~$0.045/hr) y por GB procesado (~$0.045/GB). Para workloads que procesan grandes volúmenes de datos hacia S3 o DynamoDB, el costo se dispara.
Ejemplo de costo real
Escenario: 10 instancias EC2 en subred privada. Cada una procesa 100 GB/día de datos hacia S3.
NAT GW por hora: $0.045 × 24 × 30 = $32.40/mes
Datos procesados: $0.045 × 100 GB × 10 × 30 = $1,350/mes
Total: ~$1,382/mes solo por NAT Gateway
Con S3 Gateway Endpoint: $0 por los datos hacia S3. Solo paga el NAT GW si necesitas acceder a Internet.
Cuándo NAT Gateway es necesario vs cuándo evitarlo
Necesitas acceder a Internet público desde subred privada (updates de SO, APIs externas)
Acceder a servicios AWS sin endpoint disponible como Gateway (la mayoría de servicios)
Acceder a S3 o DynamoDB → usar Gateway Endpoint (gratis, elimina necesidad de NAT GW para ese tráfico)
Acceder a servicios AWS con Interface Endpoint disponible → usar Interface Endpoint (más barato que NAT GW para alto volumen)
Tráfico solo dentro de la VPC o entre VPCs → no necesita NAT GW en absoluto
Los VPC Endpoints permiten que recursos en subredes privadas accedan a servicios AWS sin pasar por NAT Gateway ni Internet. Hay dos tipos con modelos de costo muy diferentes.
Gateway Endpoint
Servicios
Solo S3 y DynamoDB
Costo
Completamente GRATIS
Cómo funciona
Añade una entrada en la Route Table de la subred. El tráfico hacia S3/DynamoDB va directamente sin pasar por NAT GW.
Trampa de examen
No funciona entre cuentas ni desde on-premises. Solo desde dentro de la VPC.
Interface Endpoint (PrivateLink)
Servicios
Casi todos los servicios AWS (EC2 API, SSM, Secrets Manager, KMS, etc.)
Costo
~$0.01/hr por AZ + $0.01/GB procesado
Cómo funciona
Crea una ENI (Elastic Network Interface) en la subred. DNS resuelve el endpoint al IP privado de la ENI.
Trampa de examen
Sí funciona desde on-premises vía DX o VPN. Más caro que Gateway Endpoint pero más barato que NAT GW para alto volumen.
CloudFront actúa como CDN delante de S3 o un origen HTTP. El tráfico entre CloudFront y el origen (S3) es gratis dentro de AWS. El egress va de CloudFront a los usuarios, que tiene tarifa más baja que egress directo desde S3.
S3 directo → usuario
~$0.09/GB egressS3 → CloudFront → usuario
~$0.0085/GB + cache hit = $0Adicionalmente: CloudFront + S3 OAC evita que los usuarios accedan a S3 directamente. S3 solo responde a CloudFront. Esto reduce egress de S3 a prácticamente $0 (solo paga el egress de CloudFront, que es más barato y con cache).
Price Classes de CloudFront
Price Class 100 (solo US/Europa): más barato. Price Class 200 (+ Asia/Latam): intermedio. Price Class All (todas las edge locations): más completo pero más caro. Elegir según dónde estén los usuarios.
EC2/Lambda en subred privada accede a S3 masivamente
Problema
NAT Gateway cobra $0.045/GB — muy caro para TB de datos
Solución
S3 Gateway Endpoint (gratis). Añadir entrada en Route Table. Elimina costo de NAT GW para S3.
Aplicación con muchos usuarios globales que descarga archivos de S3
Problema
Egress de S3 directamente = $0.09/GB × TB = miles de dólares
Solución
CloudFront delante de S3. Cache hit = $0 de S3. Egress de CF = $0.0085/GB. Reducción de 90%+.
Microservicios en múltiples AZs se comunican mucho entre sí
Problema
Tráfico inter-AZ = $0.01/GB en cada sentido. Si hay TB de datos, suma rápido.
Solución
Colocar servicios que se comunican frecuentemente en la misma AZ. O usar Private Link/endpoints para reducir saltos.
Lambda accede a Secrets Manager, KMS o SSM frecuentemente
Problema
Sin endpoint, tráfico va por Internet (NAT GW o IP pública). Costo de NAT GW + latencia.
Solución
Interface Endpoints para Secrets Manager, KMS, SSM. El tráfico permanece dentro de la VPC.
S3/DynamoDB → Gateway Endpoint siempre
Si la arquitectura tiene subredes privadas accediendo a S3 o DynamoDB, usar Gateway Endpoint. Es gratis, elimina la necesidad de NAT GW para ese tráfico, y reduce latencia (ruta más directa).
Ingress gratis, egress caro
Subir datos a AWS es gratis. Descargar desde AWS cobra. Cuando el escenario menciona usuarios descargando datos masivamente, la solución de costo implica CloudFront.
Inter-AZ cobra $0.01/GB
Tráfico entre AZs dentro de la misma región tiene costo. Para workloads con comunicación muy frecuente entre servicios, considera colocarlos en la misma AZ (con trade-off de disponibilidad).
CloudFront + S3 = menos egress + más seguro
CloudFront con S3 OAC bloquea acceso directo al bucket. El egress de CloudFront es más barato. Los hits de cache son $0 de S3. Triple beneficio: seguridad + rendimiento + costo.
Direct Connect para grandes volúmenes de transferencia
El egress por DX (~$0.02/GB) es mucho más barato que por Internet (~$0.09/GB). Para workloads que transfieren TB regularmente, DX se amortiza rápidamente vs costo de Internet.
Visualiza los dos caminos de tráfico y su diferencia de costo para acceder a S3 desde una subred privada.
¿Entendiste este tema?
Pon a prueba lo que acabas de aprender
Una empresa tiene 20 instancias EC2 en subredes privadas que procesan 500 GB de datos diarios desde S3 y 100 GB desde DynamoDB. Actualmente usan un NAT Gateway. ¿Cuál es la forma más efectiva de reducir costos de red?