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
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Introducción a DevOps

bookDespliegue de Infraestructura con Terraform

Se creará un entorno utilizando Terraform donde será posible ejecutar y configurar aplicaciones. Uno de los entornos que se utilizará 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 ligero, 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 será posible 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. Puede imaginarlo como solicitar una pequeña computadora preensamblada en línea: llega lista para usar y se puede instalar y configurar inmediatamente todo el software y las aplicaciones necesarias.

Creación de un proyecto Terraform

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

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

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

A continuación, cree el archivo principal de configuración donde escribirá sus instrucciones de Terraform. Este archivo se llamará main.tf. Utilice 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.

Escribir 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. Puede consultar la documentación oficial aquí: Documentación de HCL de Terraform.

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

Ejecutar 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 realizar cualquier cambio:

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, que funciona como un entorno pequeño y aislado. Aquí puede instalar paquetes manualmente, ejecutar servicios y experimentar con aplicaciones.

Sin embargo, si dispone de muchos contenedores, realizar todas estas tareas manualmente sería lento y tedioso. En el próximo 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

bookDespliegue de Infraestructura con Terraform

Desliza para mostrar el menú

Se creará un entorno utilizando Terraform donde será posible ejecutar y configurar aplicaciones. Uno de los entornos que se utilizará 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 ligero, 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 será posible 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. Puede imaginarlo como solicitar una pequeña computadora preensamblada en línea: llega lista para usar y se puede instalar y configurar inmediatamente todo el software y las aplicaciones necesarias.

Creación de un proyecto Terraform

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

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

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

A continuación, cree el archivo principal de configuración donde escribirá sus instrucciones de Terraform. Este archivo se llamará main.tf. Utilice 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.

Escribir 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. Puede consultar la documentación oficial aquí: Documentación de HCL de Terraform.

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

Ejecutar 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 realizar cualquier cambio:

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, que funciona como un entorno pequeño y aislado. Aquí puede instalar paquetes manualmente, ejecutar servicios y experimentar con aplicaciones.

Sin embargo, si dispone de muchos contenedores, realizar todas estas tareas manualmente sería lento y tedioso. En el próximo 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