Saltar al contenido principal

Las 20 mejores preguntas y respuestas de entrevistas sobre Terraform para 2025

Descubre 20 preguntas y respuestas de entrevistas sobre Terraform para dominar la Infraestructura como Código en 2025, desde los conceptos básicos hasta las prácticas avanzadas.
Actualizado 3 feb 2025  · 12 min de lectura

La primera vez que utilicé Terraform, era escéptico. Me resultaba muy extraño actualizar la infraestructura en mi editor de código en lugar de hacer clic a través de la consola de la nube, y en aquel momento no entendía las ventajas. Pero como era la política de la empresa, lo acepté. Entonces, un día, me pidieron que creara un nuevo entorno de desarrollo. Recuerdo perfectamente haber ido al desarrollador más veterano de mi equipo y haberle preguntado qué me había perdido, porque sólo me había llevado 10 minutos. Comprobó mi trabajo, se rió y me confirmó que sí, que era así de sencillo. 

No es de extrañar que Terraform se haya adoptado tan ampliamente en la industria. Con la rápida evolución de la computación en nube, los equipos de todo el mundo están cambiando hacia la Infraestructura como Código (IaC) para gestionar infraestructuras cada vez más complejas. La capacidad de Terraform para ofrecer un enfoque coherente, repetible y escalable de la gestión de infraestructuras lo ha convertido en una opción de primer orden para empresas de diversos sectores.

En una entrevista de Terraform, lo que se evaluará no es sólo cuántos comandos conoces, sino tu capacidad para utilizar Terraform de forma eficaz para encajar en los flujos de trabajo DevOps modernos y resolver problemas del mundo real. En este artículo, te guiaré a través de algunas de las preguntas más comunes en las entrevistas de Terraform. Los he agrupado en categorías -Básico, Intermedio y Avanzado-, así que no importa en qué punto de tu carrera te encuentres, ¡aquí hay algo para ti!

Y antes de empezar Si eres completamente nuevo en la computación en nube, te recomiendo que primero sigas nuestro curso Introducción a la computación en nube. Este curso desglosa los conceptos básicos de la nube, explica términos clave como escalabilidad y latencia, y cubre las ventajas de las herramientas en la nube de proveedores como AWS. Terraform trata sobre todo de la infraestructura en la nube, así que asegúrate primero de que estás familiarizado con estos conceptos, ¡tanto en la teoría como en la práctica!

Preguntas básicas de la entrevista sobre Terraform

Estas preguntas se centran en qué es Terraform y cómo funciona. Lo más probable es que te encuentres con estas preguntas si nunca antes has trabajado con Terraform, o si el entrevistador no está seguro de tu nivel de conocimientos y quiere empezar por lo básico.

1. ¿Qué es Terraform y cuál es su finalidad principal?

Terraform es una herramienta de Infraestructura como Código (IaC) de código abierto creada por HashiCorp. Te permite definir y gestionar infraestructuras en la nube y locales mediante un lenguaje de configuración declarativo llamado HCL (HashiCorp Configuration Language). Terraform automatiza el aprovisionamiento, la actualización y el versionado de la infraestructura, para garantizar la coherencia y reducir el esfuerzo manual.

2. ¿En qué se diferencia Terraform de otras herramientas de IaC como CloudFormation o Ansible?

Terraform frente a CloudFormation: Terraform es agnóstico respecto a la nube, lo que significa que puede gestionar infraestructuras de múltiples proveedores (AWS, Azure, GCP, etc.), mientras que AWS CloudFormation es específico de AWS. Terraform también tiene una sintaxis y una gestión de estados más flexibles.

Terraform frente a Ansible: Ansible es principalmente una herramienta de gestión de la configuración (gestión de configuraciones de software, paquetes y SO), mientras que Terraform se centra en el aprovisionamiento y la gestión de recursos de infraestructura de forma declarativa.

3. ¿Cuáles son los comandos clave de Terraform y qué hacen?

  • terraform init - Inicializa un proyecto Terraform y descarga los plugins de proveedor necesarios.

  • terraform plan - Crea un plan de ejecución que muestra qué cambios aplicará Terraform.

  • terraform apply - Aplica los cambios previstos y aprovisiona los recursos.

  • terraform destroy - Elimina todos los recursos gestionados.

  • terraform validate - Comprueba si hay errores de sintaxis en los archivos de configuración de Terraform.

4. ¿Qué es un archivo de estado de Terraform?

Terraform mantiene un archivo de estado (terraform.tfstate) para realizar un seguimiento de la infraestructura del mundo real que gestiona. El archivo de estado ayuda a Terraform a comprender el estado actual de los recursos, detectar desviaciones y aplicar cambios de forma eficiente. Es crucial para la colaboración, pero como contiene datos sensibles, debe almacenarse de forma segura.

5. ¿Qué son los proveedores de Terraform y por qué son importantes?

Los proveedores en Terraform son plugins que le permiten interactuar con plataformas en la nube, servicios SaaS y otras API. Cada proveedor (por ejemplo, AWS, Azure, Kubernetes) define los recursos que Terraform puede gestionar. Sin proveedores, Terraform no sabría cómo crear o configurar recursos de infraestructura.

Si quieres saber más sobre Terraform y cómo funciona, echa un vistazo a esta guía para principiantes. En ese artículo, me sumerjo en los componentes clave de Terraform con más detalle y repaso los pros y los contras de la herramienta. Incluso hay un minitutorial para iniciarte en el aprovisionamiento de infraestructura en AWS.

Preguntas intermedias de la entrevista sobre Terraform

Esta sección profundiza en los flujos de trabajo de Terraform, las prácticas de configuración y las estrategias para gestionar el estado y los recursos en proyectos del mundo real. Necesitarás una buena cantidad de experiencia práctica con Terraform para responder a estas preguntas, especialmente si te piden que hables de ejemplos concretos. 

6. ¿Qué son los módulos Terraform?

Los módulos de Terraform son componentes reutilizables que ayudan a organizar el código de la infraestructura agrupando recursos relacionados. Mejoran la capacidad de mantenimiento, permiten a tu equipo reutilizar el código en todos los proyectos y simplifican las implantaciones. 

Un módulo puede ser tan simple como un directorio que contenga .tf y un archivo opcional variables.tf opcional.

7. ¿Cómo gestiona Terraform el estado remoto?

Por defecto, Terraform almacena el estado localmente, pero para la colaboración, admite backends remotos (S3 con DynamoDB para AWS, GCS para Google Cloud o Terraform Cloud). Habilita el estado remoto:

  • Acceso compartido para varios miembros del equipo.
  • Bloqueo del estado para evitar conflictos.
  • Mejor seguridad con encriptación y acceso controlado.

8. ¿Qué son los espacios de trabajo de Terraform y cuándo debes utilizarlos?

Los espacios de trabajo de Terraform te permiten mantener archivos de estado separados dentro de la misma configuración. Son útiles para gestionar varios entornos (como dev, staging, prod) sin duplicar el código.

Los espacios de trabajo son mejores para una separación sencilla de entornos, pero pueden ser demasiado difíciles de mantener para configuraciones complejas de varias cuentas.

Espacios de trabajo Terraform

Fuente: DevOps Mojo

9. ¿Cómo gestiona Terraform la importación de infraestructuras existentes y cuáles son sus limitaciones?

Terraform puede importar recursos existentes a su estado mediante el comandoterraform import . Sin embargo, no genera automáticamente archivos de configuración (los archivos .tf archivos) para esos recursos, por lo que tendrás que escribirlos manualmente.

Esta función de importación tiene algunas limitaciones:

  • Las configuraciones complejas requieren una reconciliación manual de la configuración.
  • Algunos tipos de recursos no son compatibles con la importación.
  • Existe un riesgo de deriva si la configuración de recursos importada no coincide con la infraestructura real.

10. ¿Qué son los aprovisionadores de Terraform y cuándo debes utilizarlos?

Los aprovisionadores ejecutan scripts o comandos en un recurso después de crearlo. Suelen utilizarse para tareas como configurar máquinas virtuales o instalar software. 

Hay dos tipos de suministradores:

  • Aprovisionadores localesque se ejecutan en la máquina que ejecuta Terraform).
  • Aprovisionadores remotosque se ejecutan en el recurso de destino mediante SSH o WinRM.

Dado que los provisionadores introducen dependencias y reducen la naturaleza declarativa de Terraform, deben utilizarse con moderación. Una alternativa es utilizar herramientas de gestión de la configuración como Ansible o cloud-init.

Plugins de Terraform

Fuente: Opcito

11. ¿Qué es la detección de desviaciones en Terraform y cómo puede abordarse?

La detección de deriva se refiere a la situación en la que el estado real de la infraestructura diverge del estado definido en la configuración de Terraform. Esto puede ocurrir cuando se realizan cambios manuales fuera de Terraform, como actualizaciones en la consola del proveedor de la nube u otras herramientas de automatización. 

Terraform puede detectar la deriva ejecutando plan terraform, que compara el estado actual del archivo de estado con la infraestructura real.

Si se detecta una desviación, debes revertir los cambios manuales para que coincidan con la configuración de Terraform, actualizar la configuración para que refleje el nuevo estado deseado y ejecutar terraform aplicar para que la infraestructura vuelva a coincidir con la configuración.

12. ¿Cómo implementarías una actualización continua utilizando Terraform para una aplicación desplegada en múltiples instancias?

Una actualización continua te permite actualizar tu infraestructura de forma incremental para reducir el tiempo de inactividad y asegurarte de que un subconjunto de tus instancias de aplicación siguen disponibles durante la actualización. En un escenario de actualización continua, Terraform crea una nueva instancia del recurso, espera a que esté en buen estado (mediante comprobaciones de estado) y, a continuación, sustituye gradualmente las instancias antiguas.

En la práctica, puedes implementar una actualización continua definiendo una infraestructura inmutable en Terraform y utilizando cuenta o for_each en tus definiciones de recursos (por ejemplo, instancias EC2, equilibradores de carga).

13. ¿Cómo se gestionan las dependencias de recursos en Terraform, y cuál es el papel de las dependencias implícitas y explícitas?

En Terraform, las dependencias de recursos se gestionan automáticamente a través de su mecanismo de construcción de grafos. Las dependencias implícitas se crean cuando un recurso hace referencia a otro en su configuración (por ejemplo, haciendo referencia a un aws_security_group en una aws_instance) y Terraform infiere automáticamente el orden de dependencia .

Las dependencias explícitas son útiles para manejar casos límite en los que Terraform no puede deducir automáticamente el orden de dependencia. Se crean cuando se utiliza el argumento depends_on, que obliga a Terraform a aplicar un orden específico de ejecución aunque no se haga referencia directa a los recursos .

Salida del comando gráfico de Terraform

Fuente: HashiCorp

Preguntas avanzadas de la entrevista sobre Terraform

En el nivel avanzado, los entrevistadores querrán ver tu experiencia en la gestión de infraestructuras a gran escala con Terraform. Las preguntas pueden incluir temas como despliegues multicloud, colaboración en equipo y retos de automatización. Aquí es donde realmente puedes mostrar tu experiencia y tus habilidades, así que no dudes en hablar de los proyectos en los que has trabajado y dar ejemplos prácticos.

14. ¿Cómo se gestionan los despliegues complejos multi-nube con Terraform?

Gestionar entornos multi-nube requiere manejar varios proveedores en una misma configuración. Terraform te permite configurar recursos de diferentes proveedores de nube (por ejemplo, AWS, Azure, Google Cloud) en el mismo archivo main.tf especificando diferentes proveedores y utilizando recursos específicos del proveedor.

Puedes utilizar alias de proveedores para gestionar varias instancias del mismo proveedor (por ejemplo, AWS en distintas regiones), y aprovechar los módulos para abstraer configuraciones comunes y evitar duplicidades. Sin embargo, asegúrate de gestionar con cuidado las dependencias entre nubes, porque los recursos de nubes diferentes pueden no tener relaciones directas.

15. ¿Qué son los comandos taint y untaint en Terraform? ¿Cómo los utilizarías en un escenario real?

terraform taint marca un recurso para su recreación la próxima vez que se ejecuteterraform apply, aunque no haya cambios en la configuración. Esto es útil cuando un recurso se ha vuelto problemático o se encuentra en un estado indeseable.

Por ejemplo, si una instancia EC2 falla y necesita ser recreada, puedes mancharla para activar su destrucción y recreación durante la siguiente aplicación aplicar.terraformar desmanchar se utiliza para deshacer la manchar y evitar que se vuelva a crear el recurso.

16. ¿Qué es Terraform Cloud y Terraform Enterprise, y cuáles son sus principales diferencias?

Terraform Cloud es una oferta SaaS de HashiCorp que proporciona funciones de colaboración, como la gestión remota de estados, la gestión del espacio de trabajo, la integración del control de versiones y la aplicación de políticas. Es ideal para equipos pequeños y medianos.

Terraform Enterprise es una versión autoalojada que añade funciones más avanzadas, como registros de módulos privados, controles de acceso más granulares y funciones de seguridad avanzadas, incluidas las implantaciones locales.

Resumiendo: Terraform Cloud está alojado y mantenido por HashiCorp, mientras que Terraform Enterprise es autoalojado y ofrece a las organizaciones un control total sobre su infraestructura.

Terraform Cloud vs Entreprise

Fuente: Google Cloud

17. ¿Cómo se gestionan los bloqueos de estado y los problemas de concurrencia en Terraform cuando se trabaja con equipos grandes?

El bloqueo de estado en Terraform está pensado para evitar que dos usuarios modifiquen el mismo estado simultáneamente, porque eso puede dar lugar a archivos de estado corruptos.

Terraform Cloud y Enterprise gestionan automáticamente el bloqueo de estado mediante un backend.

Para los backends remotos como S3 con DynamoDB, Terraform utiliza DynamoDB para el bloqueo de estado y para evitar problemas de concurrencia.

18. ¿Qué son los despliegues sin tiempo de inactividad y cómo puede Terraform conseguirlos?

Los despliegues sin tiempo de inactividad se producen cuando se aplican cambios a la infraestructura sin interrumpir la disponibilidad de los servicios. Terraform puede conseguirlo mediante estrategias como

  • Despliegue azul-verde: Utilizando dos entornos idénticos (Azul y Verde), en los que cambias el tráfico entre ellos para desplegar los cambios sin tiempo de inactividad.
  • Actualizaciones continuas: Aplicar gradualmente los cambios a un pequeño subconjunto de instancias cada vez, permitiendo que el resto permanezca activo durante las actualizaciones.

Estas son estrategias comunes en la arquitectura de la nube y Terraform proporciona funciones que pueden ayudar a implementarlas. Sin embargo, aplicar plenamente estas estrategias de tiempo de inactividad cero suele requerir herramientas adicionales, como los equilibradores de carga.

19. ¿Cómo gestionas los secretos en Terraform y cuáles son las mejores prácticas?

Terraform por sí mismo no gestiona secretos, pero puede integrarse con herramientas externas de gestión de secretos. Por ejemplo, puedes utilizar

  • Bóveda de HashiCorp: Terraform tiene soporte integrado para que Vault recupere secretos como claves de API o contraseñas en tiempo de ejecución, asegurando que no estén codificados en los archivos de configuración.
  • Variables de entorno: Para los valores sensibles, puedes establecerlos como variables de entorno.
  • Backends remotos con encriptación: Almacena los archivos de estado en backends remotos con la encriptación activada para evitar el acceso no autorizado a datos sensibles.
  • Utilización de sensible sensible: Marca las salidas y variables comosensibles en para evitar que aparezcan en los registros de planificación/aplicación de Terraform.

20. ¿Cómo se implementan los proveedores Terraform personalizados, y cuándo necesitarías uno?

Los proveedores Terraform personalizados se utilizan cuando necesitas gestionar recursos o servicios que Terraform no admite de forma nativa. Se implementan en Go y consisten en crear funciones personalizadas que interactúan con API o servicios que no están cubiertos por los proveedores existentes, como una API interna, un servicio nicho en la nube o una tecnología propia.

Terraform proporciona el SDK de plugins de Terraform para ayudarte a crear proveedores, pero tendrás que gestionar la autenticación, las operaciones CRUD (Crear, Leer, Actualizar, Eliminar) y cualquier configuración especial específica de la API con la que estés interactuando.

Conclusión

Espero que este artículo te haya proporcionado los conocimientos y la confianza necesarios para superar con éxito tu entrevista sobre Terraform.

Si necesitas más práctica, echa un vistazo a los tutoriales de Terraform de HashiCorp para aprender a utilizar Terraform en tareas y casos de uso comunes, o echa un vistazo a nuestra entrada de blog 14 Herramientas de Ingeniería de Datos Esenciales para Utilizar en 2024 para comprender cómo Terraform encaja en el conjunto de herramientas de un Ingeniero de Datos.


Marie Fayard's photo
Author
Marie Fayard

Ingeniero superior de software, redactor técnico y asesor con formación en física. Comprometidos a ayudar a las startups en fase inicial a alcanzar su potencial y a hacer que los conceptos complejos sean accesibles a todo el mundo.

Preguntas frecuentes sobre Terraform

¿Cómo de profundos deben ser mis conocimientos de Terraform para una entrevista?

Depende del papel. Para un puesto junior, basta con entender conceptos básicos como proveedores, gestión de estados y recursos. Las funciones de nivel medio requieren conocimientos de módulos, espacios de trabajo y estado remoto. Los altos cargos esperan experiencia en bloqueo de estados, integraciones CI/CD y depuración de problemas complejos.

¿Debo memorizar los comandos de Terraform para la entrevista?

Aunque conocer comandos clave como terraform init, plan y apply es útil, a los entrevistadores les importa más cómo aplicas los conceptos de Terraform. Puede que te pidan que describas cómo estructurarías Terraform para un escenario del mundo real en lugar de limitarte a enumerar comandos.

¿Qué importancia tiene la certificación Terraform para conseguir un trabajo?

Una certificación Terraform (como HashiCorp Certified: Terraform Associate) puede ayudar a validar tus conocimientos, pero no es obligatorio para la mayoría de los puestos. La experiencia práctica con Terraform en proyectos del mundo real tiene más peso que una certificación por sí sola. Sin embargo, si eres nuevo en Terraform, obtener la certificación puede ser una buena forma de aprender.

Temas

Aprende Cloud con DataCamp

curso

Understanding Cloud Computing

2 hr
125K
A non-coding introduction to cloud computing, covering key concepts, terminology, and tools.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow
Relacionado

blog

30 preguntas de entrevista sobre Azure: De Básico a Avanzado

Una recopilación de las mejores preguntas para entrevistas sobre Azure adaptadas a todos los niveles de experiencia. Tanto si eres un candidato principiante, intermedio o avanzado, estas preguntas y respuestas te ayudarán a prepararte con confianza para tu próxima entrevista de trabajo relacionada con Azure.
Josep Ferrer's photo

Josep Ferrer

30 min

blog

Las 20 mejores preguntas y respuestas de la entrevista sobre AWS Lambda para 2024

AWS Lambda es un servicio de computación sin servidor y un tema cada vez más común en las entrevistas técnicas. Tanto si eres nuevo en la computación en la nube como si eres un profesional experimentado, comprender AWS Lambda es esencial.
Zoumana Keita 's photo

Zoumana Keita

12 min

Machine Learning Interview Questions

blog

Las 25 preguntas más frecuentes en las entrevistas sobre aprendizaje automático para 2024

Explore las mejores preguntas de entrevista sobre aprendizaje automático con respuestas para estudiantes de último curso y profesionales.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Data engineering interview q and a

blog

Las 39 mejores preguntas y respuestas de entrevistas sobre ingeniería de datos en 2025

Supera tu próxima entrevista con esta recopilación de preguntas y respuestas para entrevistas a ingenieros de datos, que te ayudarán a prepararte para las distintas fases, desde la selección de RR.HH. hasta las evaluaciones técnicas en profundidad, incluyendo preguntas sobre Python y SQL.
Abid Ali Awan's photo

Abid Ali Awan

40 min

blog

Las 23 mejores preguntas y respuestas de entrevistas sobre Python

Preguntas esenciales de una entrevista sobre Python con ejemplos para solicitantes de empleo, estudiantes de último curso y profesionales de los datos.
Abid Ali Awan's photo

Abid Ali Awan

30 min

Ver másVer más