Acceso a recursos privados en una VPC

Aplicaciones sin servidor con AWS Lambda

Claudio Canales

Senior DevOps Engineer

¿Qué es una VPC?

  • Una VPC es tu red privada en AWS.
  • Ofrece espacio de direcciones, routing y controles de firewall.
  • Tú decides cómo se conectan los recursos.

Resumen de componentes de VPC

Aplicaciones sin servidor con AWS Lambda

Una analogía simple: una comunidad cerrada

  • Las subredes son barrios.
  • Los security groups son las reglas de la puerta.
  • NAT es la salida compartida a internet pública.

Analogía de comunidad cerrada

Aplicaciones sin servidor con AWS Lambda

¿Por qué ejecutar Lambda en una VPC?

  • Accede a recursos privados como servicios internos o bases de datos.
  • Los security groups controlan a qué puede conectarse Lambda.

Acceso privado de Lambda en VPC

Aplicaciones sin servidor con AWS Lambda

Qué configuras

  • Selecciona subredes.
  • Selecciona un security group.
  • Lambda obtiene una IP dentro de tu VPC para llegar a endpoints privados.

Entradas y efectos de configuración de VPC

Aplicaciones sin servidor con AWS Lambda

Subredes: dónde se ejecuta tu función

  • Las subredes deciden dónde se ubica la función en la red.
  • Las subredes privadas no tienen ruta directa a internet.
  • Elige subredes que alcancen lo que necesita tu handler.

Impacto de la selección de subred

Aplicaciones sin servidor con AWS Lambda

Security groups: reglas de firewall

  • Los security groups son reglas de firewall para la interfaz de red.
  • Controlan el tráfico de entrada y salida.
  • Las reglas de salida suelen decidir si Lambda llega a una base de datos.

Analogía del portero de security group

Aplicaciones sin servidor con AWS Lambda

ENI y cold starts

  • ENI = Elastic Network Interface.
  • Lambda puede crear y adjuntar un ENI antes de invocar tu handler.
  • Ese setup extra puede añadir latencia en cold start.

Secuencia de cold start con ENI

Aplicaciones sin servidor con AWS Lambda

Analogía ENI: enchufar un cable de red

  • ENI = la conexión de red de tu función.
  • Se crea en la subred que elijas.
  • Más trabajo de setup puede hacer más lentos los cold starts.

Analogía: enchufar un cable de red (ENI)

Aplicaciones sin servidor con AWS Lambda

Acceso saliente a internet

  • Las subredes privadas normalmente no alcanzan internet pública.
  • Sin ruta de salida, las llamadas a APIs públicas caducan.
  • Enfoque común: un NAT gateway.

Flujo de salida con NAT gateway

Aplicaciones sin servidor con AWS Lambda

¿Cuándo necesitas NAT?

  • Necesitas NAT al llamar a endpoints de internet pública.
  • Puede no hacer falta si solo usas recursos privados de la VPC.

Diagrama para decidir si necesitas NAT

Aplicaciones sin servidor con AWS Lambda

Síntomas comunes de fallos de red

  • Timeouts sugieren rutas o NAT faltantes.
  • Conexiones rechazadas apuntan a reglas de security group.

Lista de síntomas de red

Aplicaciones sin servidor con AWS Lambda

Mejores prácticas

  • Usa VPC solo para conectividad privada.
  • Mantén el setup mínimo.
  • Monitorea la latencia de cold start y errores de conexión.

Mejores prácticas de VPC

Aplicaciones sin servidor con AWS Lambda

Ideas clave

  • VPC da a Lambda red privada.
  • Configuras subredes y security groups.
  • Los ENI pueden añadir coste en cold start.
  • Subredes privadas necesitan NAT para salida a internet.

Compensaciones de conectividad en VPC

Aplicaciones sin servidor con AWS Lambda

¡Vamos a practicar!

Aplicaciones sin servidor con AWS Lambda

Preparing Video For Download...