CDL

Deep Dive

Practicar ahora
D4 · Modernización de infraestructura y aplicaciones

Cómputo en Google Cloud

Compute Engine, GKE, Cloud Run, Cloud Functions y App Engine. Cuándo usar cada opción y los trade-offs clave para el examen CDL.

El espectro de cómputo en GCP

Google Cloud ofrece cómputo en un espectro de control vs abstracción. Más control = más responsabilidad. Más abstracción = más velocidad de desarrollo.

Compute Engine (IaaS)

GKE (Contenedores)

Cloud Run (Serverless containers)

Cloud Functions (FaaS)

App Engine (PaaS)

← Más control / más gestiónMás abstracción / más velocidad →

Compute Engine: IaaS de Google Cloud

VMs (instancias) en la infraestructura de Google. Control total: sistema operativo, red, almacenamiento. Equivalente a AWS EC2 o Azure VMs.

Machine types

General purpose (N2, E2), memory-optimized (M3), compute-optimized (C3), GPU/TPU. Ajusta vCPUs y RAM a la medida.

Persistent Disk

Almacenamiento en bloque adjunto a VMs. Standard HDD, Balanced SSD o Extreme SSD. Independiente del ciclo de vida de la VM.

Managed Instance Groups

Grupo de VMs idénticas con auto-scaling, auto-healing y load balancing. Para alta disponibilidad y escala.

Spot VMs

VMs con hasta 91% de descuento que GCP puede revocar con 30s de aviso. Ideal para cargas batch tolerantes a fallos.

GKE: Google Kubernetes Engine

GKE es Kubernetes totalmente gestionado. Google creó Kubernetes internamente (Borg) y lo donó como open source — GKE es su implementación más madura y optimizada.

Autopilot mode

Google gestiona todos los nodos y el plano de control. Pagas por pods, no por nodos. Máxima automatización.

Standard mode

Tú controlas los nodos (VMs). Más flexibilidad para workloads con requisitos especiales de hardware.

Auto-scaling

Horizontal Pod Autoscaler (pods) + Cluster Autoscaler (nodos). Escala automáticamente según carga.

Integración GCP

Integrado con Cloud Load Balancing, Cloud Storage, Artifact Registry, Cloud Monitoring y IAM.

Cuándo elegir GKE

Apps en contenedores con múltiples microservicios, necesitas orquestación avanzada (rolling updates, canary deployments, service mesh), o tu equipo ya usa Kubernetes on-premises.

Cloud Run: serverless para contenedores

Cloud Run ejecuta contenedores sin gestionar infraestructura. Sube tu imagen Docker, Cloud Run escala de 0 a N instancias automáticamente y pagas solo por las solicitudes procesadas.

Scale-to-zero

Si no hay tráfico, Cloud Run escala a 0. No pagas nada en reposo. Escala en milisegundos cuando llega una petición.

Cualquier lenguaje

Si corre en un contenedor, corre en Cloud Run: Python, Node.js, Go, Java, Ruby, Rust, .NET...

Cloud Run Jobs

Para tareas batch que se ejecutan hasta completarse (no HTTP). Procesar archivos, ETL, ML training.

Pricing

Pagas por solicitudes + CPU/memoria mientras procesa. 2M solicitudes/mes gratis. Muy económico para APIs con tráfico variable.

Cloud Functions y App Engine

Cloud Functions (FaaS)

Ejecuta funciones individuales en respuesta a eventos: HTTP, Pub/Sub, Cloud Storage, Firestore. Serverless completo — cero gestión de infraestructura.

Triggers: HTTP, Pub/Sub, Cloud Storage events, Firestore, Firebase
Gen 2: basado en Cloud Run, ejecuta hasta 60 min, más memoria
Casos: webhooks, procesamiento de imágenes al subir, notificaciones
Pagas por invocaciones + tiempo de ejecución (2M invoc/mes gratis)

App Engine (PaaS)

Plataforma gestionada para aplicaciones web y APIs. Sube tu código, Google gestiona el runtime, escala y parches del SO.

Standard: entorno sandbox limitado, escala a 0, runtimes fijos (Python, Java, Go, Node)
Flexible: usa VMs Compute Engine, cualquier runtime en Docker
Tráfico splitting: distribuye % de tráfico entre versiones (A/B testing, canary)
Legado: muchas apps nuevas prefieren Cloud Run por mayor flexibilidad

Comparativa: cuándo usar cada servicio

ServicioÚsalo cuandoNo úsalo cuando
Compute EngineNecesitas control total del SO, tienes apps legacy que no se pueden contenerizar, requieres hardware específico (GPUs, TPUs)Quieres olvidarte de parchear el OS o gestionar actualizaciones
GKEMicroservicios en contenedores, necesitas orquestación avanzada, ya usas Kubernetes on-premisesTienes pocas apps simples — el overhead de K8s no compensa
Cloud RunAPIs y servicios HTTP en contenedores, tráfico variable o impredecible, quieres serverless pero con tu propia imagenNecesitas ejecutar procesos de larga duración sin HTTP (usa Cloud Run Jobs)
Cloud FunctionsLógica simple event-driven (máx 60 min), responder a eventos de GCP (Storage, Pub/Sub), webhooks rápidosLógica compleja con múltiples dependencias — mejor Cloud Run
App EngineMigrar apps web legacy a la nube rápidamente sin contenerizar, apps con tráfico predecibleProyectos nuevos — Cloud Run ofrece más flexibilidad con menos limitaciones

Contenedores vs VMs: diferencias clave

DimensiónVMs (Compute Engine)Contenedores (GKE/Cloud Run)
Qué incluyenOS completo + runtime + app. Todo el stack virtualizado.Solo app + dependencias. Comparten el OS kernel del host.
Tamaño típicoGB (imagen incluye todo el SO)MB (solo la app y sus librerías)
Tiempo de inicioMinutos (boot completo del SO)Segundos o menos (sin boot de SO)
AislamientoHardware virtualizado — aislamiento fuerte entre VMsProceso aislado — comparten el kernel del host
PortabilidadDepende del hipervisor y la imagenAlta: corre igual en cualquier host con Docker/Kubernetes
Overhead de recursosAlto: cada VM tiene su propio OS completoBajo: comparten el kernel, más apps por servidor
Cuándo usarApps legacy, SO específico, aislamiento de hardware necesarioMicroservicios, CI/CD rápido, alta densidad de apps

El valor de las APIs y Apigee

Una API (Application Programming Interface) es un contrato que define cómo dos sistemas de software pueden comunicarse entre sí. Las APIs permiten que diferentes aplicaciones compartan datos y funcionalidades sin revelar su implementación interna.

En la economía digital, las APIs son activos de negocio: permiten crear ecosistemas de partners, abrir nuevos canales de ingresos y acelerar la integración entre servicios.

Nuevos canales de venta

Una aerolínea expone una API de vuelos → Kayak, Google Flights la integran → más ventas sin más infraestructura.

Monetización directa

Google Maps API, Stripe, Twilio cobran por llamadas a sus APIs. Las APIs son el producto.

Ecosistema de partners

Las APIs permiten que terceros construyan sobre tu plataforma. El App Store es un ecosistema de APIs.

Integración interna

Microservicios se comunican por APIs internas. Equipos desarrollan de forma independiente y desacoplada.

Apigee API Management

Plataforma de Google Cloud para diseñar, desplegar, asegurar y escalar APIs. Actúa como la "puerta de entrada" gestionada a todos los servicios backend. Apigee es la solución líder de mercado en API management.

API Gateway: punto de entrada unificado para todas las APIs
Seguridad: OAuth 2.0, API keys, rate limiting, JWT
Analytics: métricas de uso (quién llama, cuánto, desde dónde)
Monetización: planes de precios y billing para APIs de terceros
Developer Portal: documentación y sandbox para developers
Versioning: gestiona múltiples versiones de API en paralelo

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

Una startup está construyendo una API REST que recibe tráfico impredecible — alta carga durante el día y casi nada por las noches. No tienen equipo de infraestructura y quieren desplegar contenedores Docker. ¿Qué servicio de GCP es más adecuado?