Brains4Cloud
ESEN
Practicar

Tema 11 de 11

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

Infraestructura como código y herramientas con IA

El apartado 2.4 del temario tiene dos partes: las herramientas de infraestructura como código (Fabric FAST, Config Connector, Terraform y Helm) y la planificación e implementación asistidas por IA (Gemini CLI, Google Antigravity, Gemini Cloud Assist y Application Design Center). Gemini Cloud Assist se explica en el dominio D1; aquí se ve cómo encaja con el resto.

Por qué infraestructura como código

En lugar de crear recursos a mano en la consola, se describe el estado final deseado en archivos que se versionan, revisan y aplican de forma repetible. Las herramientas del temario cubren capas distintas:

Recursos de Google Cloud

Terraform (y su servicio gestionado, Infrastructure Manager) o Config Connector desde Kubernetes.

Una organización completa

Fabric FAST: diseño de referencia implementado en Terraform.

Aplicaciones en Kubernetes

Helm: empaquetar e instalar manifiestos como charts.

Diseño asistido

Application Design Center, Gemini Cloud Assist, Gemini CLI y Antigravity.

Terraform en Google Cloud

Herramienta de IaC de HashiCorp y, según Google, la más usada para aprovisionar y automatizar Google Cloud. Usa proveedores (plugins) para hablar con las APIs: google para las APIs generales y google-beta para las beta.

1

Escribir la configuración: Describes de forma declarativa la infraestructura que quieres, no cómo crearla.

2

terraform plan: Evalúa la configuración y genera un plan de ejecución para revisar antes de cambiar nada.

3

terraform apply: Llama a las APIs de Google Cloud y crea el archivo de estado (JSON) que mapea la configuración con los recursos reales.

4

Siguientes apply: Compara el estado con el código: crea lo que falta, actualiza lo que difiere y deja igual lo que coincide.

  • Los módulos empaquetan y reutilizan código. Google publica módulos como blueprints y ejemplos de Jump Start Solutions.
  • El archivo de estado lleva la cuenta de todos los recursos del despliegue.
  • La misma configuración se puede desplegar varias veces para tener entornos reproducibles.

Infrastructure Manager

Servicio gestionado de Google que automatiza el despliegue y la gestión de infraestructura con configuraciones de Terraform (llamadas blueprints).

  • Despliega configuraciones guardadas en buckets de Cloud Storage, repositorios Git o directorios locales.
  • Gestiona el ciclo de vida con despliegues y revisiones; de cada revisión guarda los logs, la configuración, los recursos creados y el archivo de estado.
  • Permite despliegues de vista previa para ver el efecto de los cambios antes de aplicarlos, e integrarse con Cloud Build.
  • No despliega aplicaciones sobre los recursos: para eso están Cloud Build, Cloud Deploy o App Lifecycle Manager.

Fabric FAST

Parte del repositorio de código abierto Cloud Foundation Fabric, creado por ingenieros de los servicios profesionales de Google Cloud. Persigue dos objetivos:

Un diseño

El de una organización de Google Cloud con los elementos típicos que necesita una empresa, basado en patrones probados.

Una implementación

La implementación de referencia de ese diseño en Terraform.

  • Etapas: cada una hace una tarea concreta (la primera, la seguridad de toda la organización; otra, la red) y juntas montan la organización. Se modelan según los límites de seguridad, para delegar cada etapa al equipo responsable.
  • Seguridad primero: mínimos permisos con grupos, cuentas de servicio, roles personalizados y condiciones de IAM.
  • Factorías: crean recursos a partir de descripciones sencillas en YAML.
  • Sirve para organizaciones de todos los tamaños, desde startups a grandes empresas.

Complemento de código abierto para Kubernetes que permite gestionar recursos de Google Cloud con las herramientas y APIs de Kubernetes, igual que gestionas tus aplicaciones.

  • Aporta Custom Resource Definitions (CRD) y controladores. Al aplicar un objeto en el clúster, Config Connector reconcilia el estado con las APIs de Google Cloud de forma asíncrona.
  • Aprovecha lo de Kubernetes: RBAC para el control de acceso, eventos para la visibilidad y una sola fuente del estado deseado.
  • La reconciliación usa la identidad de la cuenta de servicio de Config Connector, no la de quien aplicó el manifiesto. Por eso hay que controlar bien quién puede crear esos objetos, por ejemplo aplicándolos desde un repositorio de confianza.
  • Puede gestionar recursos existentes y usar Secrets de Kubernetes para datos sensibles.

Helm

El gestor de paquetes de Kubernetes. Agrupa los manifiestos relacionados (Deployments, Services, ConfigMaps…) en una unidad llamada chart, que se versiona, comparte, instala y revierte como una release.

Instalar aplicaciones

Bases de datos, monitorización o ingress desde un chart, sin montar los manifiestos.

Configurar por entorno

El mismo chart con distintos valores para desarrollo, staging y producción.

Actualizar y revertir

Subir una release a otra versión y volver a una revisión anterior si falla.

Dependencias

Declarar otros charts necesarios e instalarlos juntos.

  • helm search hub busca charts en Artifact Hub; helm repo add añade repositorios.
  • Artifact Registry guarda charts de Helm 3 empaquetados como imágenes OCI en repositorios Docker (no admite charts nativos no OCI).

Herramientas con IA

HerramientaDóndePara qué
Gemini Cloud AssistConsola de Google CloudDiseñar, operar, investigar problemas y optimizar con contexto de tu proyecto (ver D1)
Gemini CLITerminal local o Cloud ShellAgente de IA de código abierto para programar y otras tareas
Google AntigravityAplicación de escritorio, IDE, CLI y SDKPlataforma de desarrollo con agentes que planifican, programan y navegan
Application Design CenterConsola de Google CloudDiseñar y desplegar aplicaciones a partir de plantillas aprobadas

Como con cualquier IA generativa, Google recomienda validar lo que generan antes de usarlo.

Gemini CLI

Agente de IA de código abierto que lleva Gemini a tu terminal local o a Cloud Shell, donde está disponible sin configuración adicional.

  • Funciona con un bucle de razonar y actuar (ReAct) usando herramientas integradas y servidores MCP locales o remotos.
  • Destaca en código (corregir bugs, crear funciones, mejorar las pruebas), pero sirve también para generar contenido, investigar o gestionar tareas.
  • Las ediciones de Gemini Code Assist incluyen cuotas compartidas con el modo agente de Code Assist; también admite una clave de la Gemini API con pago por uso.

Aviso de la documentación

Google indica que Gemini CLI no está optimizado para los modelos Gemini más recientes y recomienda Antigravity CLI para la mejor experiencia de programación con ellos.

Google Antigravity

Plataforma de desarrollo «agéntica» de Google: un centro de mando para lanzar, supervisar y orquestar agentes de IA. Desde la versión 2.0 es un ecosistema de productos:

AntigravityAplicación independiente para macOS, Linux y Windows: gestiona varios agentes locales en paralelo y tareas programadas
Antigravity IDEIDE con gestor de agentes, artefactos y conocimiento profundo del código
Antigravity CLIInteracción con agentes desde la terminal
Antigravity SDKIntegrar Antigravity en tus propios sistemas
Antigravity for IDEsExtensiones para VS Code, JetBrains, Zed y otros

Se puede usar con una cuenta personal de Google o con una cuenta de empresa ligada a un proyecto de Google Cloud, con licencias o con pago por uso a través de Agent Platform.

Application Design Center

Permite a los equipos de plataforma y de desarrollo diseñar y desplegar aplicaciones en Google Cloud a partir de plantillas que cumplen los estándares de la organización.

Espacios

Áreas exclusivas donde un equipo diseña plantillas y despliega aplicaciones sin afectar a otros.

Componentes

Bloques de Google (con buenas prácticas y seguridad por defecto) o importados desde tus módulos de Terraform: assets, servicios y workloads.

Plantillas

Diseños aprobados: de aplicación (estándar o compuestas), de catálogo y compartidas.

Validación

Evalúa el diseño contra las políticas de seguridad de Security Command Center y genera una puntuación (vista previa).

Se diseña con un lienzo visual, con chat en lenguaje natural (Gemini propone un punto de partida a partir de los requisitos), con la API REST o con la CLI de Google Cloud. Flujo típico: el administrador crea espacios, los ingenieros de plataforma diseñan y publican plantillas en un catálogo, y los desarrolladores eligen una, la personalizan, la evalúan y la despliegan.

Qué herramienta usar

NecesidadHerramienta
Infraestructura declarativa y reproducibleTerraform
Terraform gestionado por Google, con revisionesInfrastructure Manager
Organización empresarial completaFabric FAST
Recursos de Google Cloud desde KubernetesConfig Connector
Aplicaciones empaquetadas para KubernetesHelm
Catálogo de plantillas de autoservicioApplication Design Center
Asistencia de IA en la consolaGemini Cloud Assist
Agentes de IA para programarGemini CLI, Google Antigravity

Escenarios de examen

SituaciónRespuestaPor qué
Crear entornos de desarrollo, pruebas y producción idénticos y repetiblesTerraformConfiguración declarativa reutilizable con módulos.
Ejecutar Terraform como servicio gestionado, con revisiones y vista previaInfrastructure ManagerToolchain gestionado de Google para Terraform.
Montar una organización de Google Cloud lista para empresa siguiendo patrones probadosFabric FASTDiseño de referencia con etapas en Terraform.
El equipo gestiona todo con kubectl y quiere crear buckets y bases de datos igualConfig ConnectorRecursos de Google Cloud como objetos de Kubernetes.
Instalar y actualizar en GKE una aplicación con muchos manifiestos, con rollbackHelmEmpaqueta los manifiestos en un chart versionado.
Pedir a un agente de IA en la terminal que corrija un bug del repositorioGemini CLI o Antigravity CLIAgentes de IA en la línea de comandos.
El equipo de plataforma quiere un catálogo de plantillas aprobadas para que los desarrolladores desplieguen solosApplication Design CenterPlantillas con guardarraíles y despliegue de autoservicio.

Trampas frecuentes del examen

❓ ¿Qué comando de Terraform muestra los cambios sin aplicarlos?

terraform plan. terraform apply es el que los aplica.

❓ ¿Con qué identidad crea los recursos Config Connector?

Con la de su cuenta de servicio de IAM, no con la del usuario que aplicó el manifiesto.

❓ ¿Infrastructure Manager despliega también las aplicaciones?

No. Solo la infraestructura; para aplicaciones están Cloud Build, Cloud Deploy o App Lifecycle Manager.

❓ ¿Fabric FAST es un producto de pago de Google Cloud?

No. Es parte del repositorio de código abierto Cloud Foundation Fabric, con una implementación de referencia en Terraform.

❓ ¿Dónde se guardan los charts de Helm en Google Cloud?

En repositorios Docker de Artifact Registry, empaquetados como imágenes OCI.

❓ ¿Hay que instalar Gemini CLI en Cloud Shell?

No. Está disponible en Cloud Shell sin configuración adicional.

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

Un equipo de plataforma gestiona sus aplicaciones con manifiestos de Kubernetes y GitOps. Quiere crear también los buckets de Cloud Storage y las instancias de Cloud SQL con los mismos flujos de kubectl, sin dar a cada desarrollador permisos directos en Google Cloud. ¿Qué usa?

¿Listo para poner a prueba "Infraestructura como código y herramientas con IA"?

Preguntas originales, cada una con su explicación.

Empezar un simulacro