Brains4Cloud
ESEN
Practicar

Tema 1 de 11

D2 · Planificar e implementar una solución en la nube

Elegir la opción de cómputo

La primera línea del apartado 2.1 del temario es elegir el cómputo adecuado para cada carga: Compute Engine, GKE, Cloud Run, Cloud Run functions o Agent Runtime en Gemini Enterprise Agent Platform (antes Vertex AI Agent Engine). También pide saber cuándo usar GPU o TPU. Todo se reduce a cuánto control quieres sobre la infraestructura y cuánto quieres que gestione Google.

El árbol de decisión oficial

La guía «Choose compute options» de Google Cloud resume la elección en cinco preguntas:

1

¿Quieres que Google gestione toda la infraestructura? Sí → Cloud Run. No → pregunta 2.

2

¿Quieres orquestación de clústeres (Kubernetes o Slurm)? Sí → pregunta 4. No → pregunta 3.

3

¿Quieres gestionar tú las VM o las instancias bare metal? Sí → Compute Engine. No → Batch.

4

¿Ejecutas aplicaciones en contenedores estándar (microservicios, APIs)? Sí → GKE. No → pregunta 5.

5

¿Quieres que Google gestione el ciclo de vida del clúster? Sí → Cluster Director. No → Cluster Toolkit.

Compute Engine (más control)→
GKE Standard→
GKE Autopilot→
Cloud Run (más gestionado)

El IaaS de Google Cloud: VM e instancias bare metal autogestionadas, con hipervisor KVM y sistemas Linux o Windows. Elígelo cuando necesites configuraciones a medida, ajustes especiales del kernel o control administrativo del servidor.

  • Controlas el SO, el kernel y los archivos de arranque, y eliges procesador, memoria, almacenamiento y SO invitado.
  • La orquestación es manual: tú gestionas instancias, reglas de red, rutas y copias de seguridad. Para escalar, añades instancias o usas grupos de instancias administrados (MIG).
  • Admite todas las GPU de NVIDIA y todas las TPU disponibles.
  • Familias de máquinas: uso general, optimizadas para cómputo, para red, para almacenamiento, para memoria y para aceleradores. Algunas series permiten tipos de máquina personalizados.
  • SLO mínimo de disponibilidad del 99,5 %, variable según región, nivel de red y configuración.

Implementación gestionada de Kubernetes, que Google desarrolló a partir de su experiencia con Borg. Es ideal cuando quieres configurar la infraestructura de tus contenedores (red, escalado, hardware, seguridad) sin gestionar el plano de control.

Autopilot (recomendado)

Google gestiona plano de control y nodos. Pagas solo por los recursos que piden los Pods en ejecución. SLA a nivel de Pod.

Standard

Tú gestionas los grupos de nodos. Pagas todos los recursos de los nodos, los usen o no los Pods.

  • Los nodos son VM de Compute Engine agrupadas en un clúster; las apps se empaquetan en contenedores que se despliegan como Pods.
  • Escala con Horizontal y Vertical Pod Autoscaler (Pods) y con el cluster autoscaler (nodos). Los trabajos por lotes se orquestan con Kueue.
  • Admite GPU y TPU para contenedores. Tiene un nivel gratuito para la gestión del clúster.

Plataforma totalmente gestionada para ejecutar código, funciones o contenedores. Google gestiona el SO, el kernel, la red y la capacidad. Puedes desplegar una imagen de contenedor o, en Go, Node.js, Python, Java, .NET y Ruby, directamente el código fuente.

RecursoPara qué
ServiceResponde a peticiones HTTP en un endpoint HTTPS estable (*.run.app) y también a eventos y funciones
JobTareas que se ejecutan hasta terminar, a mano o programadas. Los array jobs lanzan muchas instancias en paralelo
Worker poolCargas en segundo plano siempre activas, como consumir colas de Kafka, Pub/Sub o RabbitMQ
InstanceCargas de larga duración que necesitan un único entorno de ejecución
  • Escala a cero sin tráfico; puede llegar a mil instancias o más con aumento de cuota. Con instancias mínimas evitas el arranque en frío.
  • Facturación basada en peticiones (no pagas sin peticiones, más una tarifa por petición) o basada en instancias (pagas toda la vida de la instancia, sin tarifa por petición). Granularidad de 100 ms.
  • El sistema de archivos del contenedor es efímero: para persistir, usa Cloud Storage o un montaje NFS.
  • Admite GPU NVIDIA RTX PRO 6000 Blackwell y L4. No admite TPU.

Cloud Run functions

Cambio de nombre

Cloud Functions se llama ahora Cloud Run functions. Una función desplegada en Cloud Run obtiene todas las ventajas de Cloud Run.

Sirven para servicios dirigidos por eventos, APIs ligeras y tareas en segundo plano. Google gestiona el runtime y los parches del SO, y escala según el tráfico o los eventos.

ETL y procesamiento

Responder cuando se crea, cambia o borra un archivo en Cloud Storage.

Webhooks

Trigger HTTP para eventos de GitHub, Slack, Stripe o cualquier sistema.

IoT

Procesar los datos que miles de dispositivos envían a Pub/Sub.

Conectar servicios

Lógica entre servicios: subidas de archivos, cambios en logs, mensajes de Pub/Sub.

Para compatibilidad con funciones existentes sigue existiendo gcloud functions deploy y la API Cloud Functions v2.

Agent Runtime en Gemini Enterprise Agent Platform

El temario lo nombra como «Agent Runtime on Gemini Enterprise Agent Platform (formerly Vertex AI Agent Engine)». Es un runtime gestionado y serverless para desplegar, operar y escalar agentes de IA sin gestionar infraestructura, con observabilidad integrada.

  • Admite agentes de Agent Development Kit (ADK), LangChain, LangGraph, LlamaIndex, Agent2Agent, AG2 o código personalizado.
  • Servicios asociados: Sessions (estado de la conversación), Memory Bank (memoria a largo plazo), Example Store y Evaluation Service, y ejecución de código en sandbox.
  • Seguridad: identidad de agente en IAM, cuentas de servicio, Agent Gateway y Private Service Connect para conectar con tu VPC.
  • Se supervisa con Cloud Trace, Cloud Logging y Cloud Monitoring.

Elígelo cuando la carga sea un agente de IA. Si es una API o una web normal, Cloud Run sigue siendo la opción gestionada.

Batch, VMware Engine y clústeres de IA

OpciónCuándo
BatchTrabajos por lotes en cola (análisis, conversión de vídeo, simulaciones) sin gestionar servidores. Arranca y para VM según la cola. GPU sí, TPU no
Google Cloud VMware EngineMigrar cargas VMware sin cambiar las aplicaciones. Sin GPU ni TPU
Cluster DirectorClústeres de IA, ML y HPC con Slurm gestionados por Google
Cluster ToolkitHerramienta de código abierto que despliega clústeres con plantillas (blueprints) y te deja el control del SO

Comparativa

OpciónSO y kernelEscaladoGPU / TPUFacturación
Compute EngineAutogestionadoManual o con MIGTodas / todasPor recursos aprovisionados
GKEGestionado (Autopilot) o semigestionado (Standard)Pods y nodos automáticosTodas / todasPor recursos (Autopilot: por lo que piden los Pods)
Cloud RunGestionado por GoogleAutomático por peticiones o CPURTX PRO 6000 y L4 / noPor uso
BatchGestionado por GoogleSegún la colaHasta RTX PRO 6000 / noPor las VM que lanza

GKE o Cloud Run

GKE

Microservicios complejos, aplicaciones con estado, cargas que necesitan infraestructura o red a medida. Tú sigues siendo responsable de los aspectos de Kubernetes.

Cloud Run

Servicios web y APIs sin estado, trabajos por lotes y cargas que se benefician del pago por uso.

No es una elección excluyente: ambos usan imágenes de contenedor estándar (la misma imagen funciona en los dos), APIs declarativas en YAML (la API Admin v1 de Cloud Run es compatible con la de Kubernetes), Cloud Logging y Monitoring, Cloud Deploy y balanceadores que pueden repartir tráfico entre los dos para migrar poco a poco.

CPU, GPU o TPU

Las TPU (Tensor Processing Units) son ASIC diseñados por Google para acelerar ML, optimizados para grandes operaciones matriciales, con memoria HBM en el chip y agrupables en slices. El código debe compilarse con XLA. Se usan desde Compute Engine, GKE y Gemini Enterprise Agent Platform; la API de Cloud TPU está obsoleta.

CPU

  • Prototipos rápidos que necesitan máxima flexibilidad
  • Modelos sencillos o pequeños que entrenan rápido
  • Muchas operaciones personalizadas de TensorFlow en C++
  • Limitados por E/S o red del host

GPU

  • Muchas operaciones personalizadas de PyTorch o JAX que deben correr en parte en CPU
  • Operaciones de TensorFlow no disponibles en TPU
  • Modelos medianos o grandes con lotes mayores
  • Gráficos, transcodificación de vídeo, escritorios virtuales

TPU

  • Modelos dominados por cálculo matricial
  • Sin operaciones personalizadas en el bucle principal
  • Entrenamientos de semanas o meses
  • Modelos grandes con lotes grandes y embeddings enormes (ranking, recomendación)

Cuándo no usar TPU

Programas con muchas ramificaciones u operaciones elemento a elemento, cargas que requieren aritmética de alta precisión, operaciones personalizadas en el bucle de entrenamiento y modelos con tensores de forma dinámica (XLA compila para la forma del primer lote).

GPU en Compute EngineUso
Serie A (A4X Max, A4X, A4, A3, A2)HPC, IA y ML. Las generaciones recientes, para preentrenar y ajustar modelos fundacionales; A2, para modelos pequeños e inferencia en un solo host. GPU incluida en el tipo de máquina
Serie G (G4, G2)Gráficos, simulación, transcodificación, escritorios virtuales (NVIDIA RTX vWS). G2 lleva NVIDIA L4
N1 + GPUSe eligen modelo y número de GPU al crear la VM (T4, P4, V100). Menos GPU limita el máximo de vCPU

Escenarios de examen

SituaciónRespuestaPor qué
Una aplicación antigua necesita un kernel con parámetros especialesCompute EngineControl total del SO, el kernel y el arranque.
API sin estado con picos de tráfico y periodos sin usoCloud RunEscala a cero y cobra por uso.
Decenas de microservicios con service mesh y despliegues canaryGKEOrquestación con Kubernetes.
Procesar cada imagen que se sube a un bucketCloud Run functionsFunción ligera disparada por eventos.
Desplegar en producción un agente hecho con ADK o LangGraph sin gestionar servidoresAgent RuntimeRuntime gestionado para agentes.
Cola de trabajos de conversión de vídeo sin gestionar VMBatchGoogle programa y ejecuta los trabajos.
Migrar un entorno VMware sin cambiar las aplicacionesGoogle Cloud VMware EngineEjecuta las VM de VMware en hardware de Google.
Entrenar durante semanas un modelo grande dominado por multiplicaciones de matricesTPUDiseñadas para operaciones matriciales a gran escala.

Trampas frecuentes del examen

❓ ¿Cloud Run admite TPU?

No. Admite GPU NVIDIA RTX PRO 6000 Blackwell y L4. Las TPU se usan desde Compute Engine, GKE o Gemini Enterprise Agent Platform.

❓ ¿En GKE Autopilot pagas por nodo?

No. Pagas por los recursos que piden los Pods en ejecución. En Standard pagas todos los recursos de los nodos.

❓ ¿Cloud Functions y Cloud Run functions son productos distintos?

No. Cloud Functions pasó a llamarse Cloud Run functions.

❓ ¿Se pueden conservar archivos en el disco de un contenedor de Cloud Run?

No de forma persistente: el sistema de archivos es efímero. Usa Cloud Storage o NFS.

❓ ¿Un modelo con tensores de forma dinámica es buen candidato para TPU?

No. XLA compila para la forma del primer lote y recompilar en cada cambio es demasiado lento.

❓ ¿Qué modo de GKE recomienda Google?

Autopilot, en el que Google gestiona también los nodos.

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

Una startup tiene una API REST en un contenedor. El tráfico es impredecible y por la noche cae a cero. No quiere gestionar clústeres ni pagar cuando no hay peticiones. ¿Qué opción elige?

¿Listo para poner a prueba "Elegir la opción de cómputo"?

Preguntas originales, cada una con su explicación.

Empezar un simulacro