Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Despliegue de Infraestructura con Terraform | Automatización de la Infraestructura en DevOps
Introducción a DevOps

bookDespliegue de Infraestructura con Terraform

Crearás un entorno utilizando Terraform donde podrás ejecutar y configurar aplicaciones. Uno de los entornos que utilizarás es Ubuntu.

Note
Definición

Ubuntu es uno de los sistemas operativos más populares basados en Linux. Se utiliza ampliamente para servidores y entornos de desarrollo. Ubuntu es liviano, estable y cuenta con una gran comunidad, lo que lo convierte en una opción ideal para quienes están comenzando.

En este ejemplo, Ubuntu actuará como un contenedor "mini-computadora", donde podrás experimentar de forma segura, instalar programas, ejecutar servicios y conectar herramientas de automatización como Ansible.

Terraform, en este escenario, funciona como un constructor del entorno según las instrucciones. Crea el contenedor Ubuntu completamente a partir de código, sin ninguna configuración manual. Puedes imaginarlo como pedir una pequeña computadora preensamblada en línea: llega lista para usar y puedes instalar y configurar inmediatamente todo el software y las aplicaciones que necesites.

Creación de un proyecto de Terraform

El primer paso es crear una carpeta para tu proyecto de Terraform. Esta carpeta almacenará todos los archivos de configuración, manteniéndolos organizados y separados de otros archivos en tu computadora.

Abre una terminal (Linux o macOS) o Símbolo del sistema (Windows) e ingresa los siguientes comandos:

Este comando crea una carpeta llamada terraform-ubuntu y luego navega dentro de ella.

A continuación, crea el archivo principal de configuración donde escribirás tus instrucciones de Terraform. Este archivo se llamará main.tf. Utiliza el siguiente comando:

Windows:

macOS/Linux:

El archivo main.tf es donde se define todo lo que Terraform debe realizar, incluyendo la descarga de la imagen de Ubuntu y la creación de un contenedor.

Escritura de la configuración de Ubuntu

Abra el archivo main.tf en un editor de texto y pegue el siguiente código:

main.tf

main.tf

copy
Note
Nota

Este archivo está escrito en HashiCorp Configuration Language (HCL), que es el lenguaje propio de Terraform para definir infraestructura. Puedes encontrar la documentación oficial aquí: Documentación de HCL de Terraform.

Una vez aplicada esta configuración, tendrás un contenedor Ubuntu en funcionamiento que puedes utilizar para experimentos o para conectar con Ansible para automatización.

Ejecución de Terraform

Una vez que la configuración esté lista, ejecute los siguientes tres comandos para crear el contenedor.

Inicializar el proyecto – esto descarga el proveedor de Docker y prepara Terraform:

Previsualizar el plan – esto muestra lo que Terraform creará antes de realizarlo:

Aplicar la configuración – esto crea el contenedor Ubuntu:

Al finalizar la configuración de Terraform, se genera un plan de acción que muestra lo que se creará, modificará o eliminará. Es necesario escribir yes para confirmar antes de continuar. Después de esto, Terraform aplica los cambios e informa cuando ha finalizado.

Verificación del resultado

Para ingresar al contenedor e interactuar con él como un sistema Ubuntu normal, utilice:

Esto significa que actualmente se encuentra dentro del contenedor, el cual funciona como un entorno pequeño y aislado. Aquí es posible instalar paquetes manualmente, ejecutar servicios y experimentar con aplicaciones.

Sin embargo, si existen muchos contenedores, realizar todas estas tareas manualmente sería lento y tedioso. En el siguiente capítulo, se utilizará Ansible para automatizar la configuración e instalaciones en todos los contenedores simultáneamente.

1. ¿Cuál es el propósito del recurso docker_image en Terraform?

2. ¿Cuál es la función de terraform init?

question mark

¿Cuál es el propósito del recurso docker_image en Terraform?

Select the correct answer

question mark

¿Cuál es la función de terraform init?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 3

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

What should I do if I encounter errors during the Terraform setup?

Can you explain how to customize the Ubuntu container configuration?

How do I automate the setup inside the container using Ansible?

Awesome!

Completion rate improved to 3.7

bookDespliegue de Infraestructura con Terraform

Desliza para mostrar el menú

Crearás un entorno utilizando Terraform donde podrás ejecutar y configurar aplicaciones. Uno de los entornos que utilizarás es Ubuntu.

Note
Definición

Ubuntu es uno de los sistemas operativos más populares basados en Linux. Se utiliza ampliamente para servidores y entornos de desarrollo. Ubuntu es liviano, estable y cuenta con una gran comunidad, lo que lo convierte en una opción ideal para quienes están comenzando.

En este ejemplo, Ubuntu actuará como un contenedor "mini-computadora", donde podrás experimentar de forma segura, instalar programas, ejecutar servicios y conectar herramientas de automatización como Ansible.

Terraform, en este escenario, funciona como un constructor del entorno según las instrucciones. Crea el contenedor Ubuntu completamente a partir de código, sin ninguna configuración manual. Puedes imaginarlo como pedir una pequeña computadora preensamblada en línea: llega lista para usar y puedes instalar y configurar inmediatamente todo el software y las aplicaciones que necesites.

Creación de un proyecto de Terraform

El primer paso es crear una carpeta para tu proyecto de Terraform. Esta carpeta almacenará todos los archivos de configuración, manteniéndolos organizados y separados de otros archivos en tu computadora.

Abre una terminal (Linux o macOS) o Símbolo del sistema (Windows) e ingresa los siguientes comandos:

Este comando crea una carpeta llamada terraform-ubuntu y luego navega dentro de ella.

A continuación, crea el archivo principal de configuración donde escribirás tus instrucciones de Terraform. Este archivo se llamará main.tf. Utiliza el siguiente comando:

Windows:

macOS/Linux:

El archivo main.tf es donde se define todo lo que Terraform debe realizar, incluyendo la descarga de la imagen de Ubuntu y la creación de un contenedor.

Escritura de la configuración de Ubuntu

Abra el archivo main.tf en un editor de texto y pegue el siguiente código:

main.tf

main.tf

copy
Note
Nota

Este archivo está escrito en HashiCorp Configuration Language (HCL), que es el lenguaje propio de Terraform para definir infraestructura. Puedes encontrar la documentación oficial aquí: Documentación de HCL de Terraform.

Una vez aplicada esta configuración, tendrás un contenedor Ubuntu en funcionamiento que puedes utilizar para experimentos o para conectar con Ansible para automatización.

Ejecución de Terraform

Una vez que la configuración esté lista, ejecute los siguientes tres comandos para crear el contenedor.

Inicializar el proyecto – esto descarga el proveedor de Docker y prepara Terraform:

Previsualizar el plan – esto muestra lo que Terraform creará antes de realizarlo:

Aplicar la configuración – esto crea el contenedor Ubuntu:

Al finalizar la configuración de Terraform, se genera un plan de acción que muestra lo que se creará, modificará o eliminará. Es necesario escribir yes para confirmar antes de continuar. Después de esto, Terraform aplica los cambios e informa cuando ha finalizado.

Verificación del resultado

Para ingresar al contenedor e interactuar con él como un sistema Ubuntu normal, utilice:

Esto significa que actualmente se encuentra dentro del contenedor, el cual funciona como un entorno pequeño y aislado. Aquí es posible instalar paquetes manualmente, ejecutar servicios y experimentar con aplicaciones.

Sin embargo, si existen muchos contenedores, realizar todas estas tareas manualmente sería lento y tedioso. En el siguiente capítulo, se utilizará Ansible para automatizar la configuración e instalaciones en todos los contenedores simultáneamente.

1. ¿Cuál es el propósito del recurso docker_image en Terraform?

2. ¿Cuál es la función de terraform init?

question mark

¿Cuál es el propósito del recurso docker_image en Terraform?

Select the correct answer

question mark

¿Cuál es la función de terraform init?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 3
some-alt