Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Terraform habilita la definición, vista previa e implementación de la infraestructura en la nube. Con Terraform, se crean archivos de configuración mediante la sintaxis de HCL. La sintaxis de HCL permite especificar el proveedor de la nube, como Azure, y los elementos que componen la infraestructura de la nube. Después de crear los archivos de configuración, se crea un plan de ejecución que permite obtener una vista previa de los cambios de infraestructura antes de implementarlos. Una vez que compruebe los cambios, aplique el plan de ejecución para implementar la infraestructura.
En este artículo, ejecutará los archivos de terraform creados en el artículo anterior de esta serie. El resultado es una validación de la conectividad entre las redes virtuales de demostración.
En este artículo aprenderá a:
- Implementación de la red virtual de concentrador en topología en estrella tipo hub-spoke
- Verificación de los recursos que se van a implementar
- Creación de los recursos en Azure
- Verificar la conectividad entre diferentes redes
1. Configuración del entorno
- Suscripción de Azure: si no tiene una suscripción de Azure, cree una cuenta gratuita antes de comenzar.
Configurar Terraform: si aún no lo ha hecho, configure Terraform con una de las siguientes opciones:
Creación de una topología de red híbrida en estrella tipo hub-and-spoke con Terraform en Azure
Creación de una red virtual de centro con Terraform en Azure
Creación de un dispositivo de red virtual de centro con Terraform en Azure
2. Verifica tu configuración
En el directorio de ejemplo, compruebe que todos los archivos creados en esta serie de artículos estén presentes:
Nombre del archivo | Artículo en el que se crea el archivo |
---|---|
main.tf | Creación de una topología de red híbrida en estrella tipo hub-and-spoke con Terraform en Azure |
variables.tf | Creación de una topología de red híbrida en estrella tipo hub-and-spoke con Terraform en Azure |
on-prem.tf | Creación de una red virtual local con Terraform en Azure |
hub-vnet.tf | Creación de una red virtual de centro con Terraform en Azure |
hub-nva.tf | Creación de un dispositivo de red virtual de centro con Terraform en Azure |
spoke1.tf | Creación de redes virtuales en radio con Terraform en Azure |
spoke2.tf | Creación de redes virtuales en radio con Terraform en Azure |
3. Inicialización de Terraform
Para inicializar la implementación de Terraform, ejecute terraform init. Este comando descarga el proveedor de Azure necesario para administrar los recursos de Azure.
terraform init -upgrade
Puntos clave:
- El parámetro
-upgrade
actualiza los complementos de proveedor necesarios a la versión más reciente que cumpla con las restricciones de versión de la configuración.
4. Creación de un plan de ejecución de Terraform
Ejecute terraform plan para crear un plan de ejecución.
terraform plan -out main.tfplan
Puntos clave:
- El comando
terraform plan
crea un plan de ejecución, pero no lo ejecuta. En su lugar, determina qué acciones son necesarias para crear la configuración especificada en los archivos de configuración. Este patrón le permite comprobar si el plan de ejecución coincide con sus expectativas antes de realizar cambios en los recursos reales. - El parámetro opcional
-out
permite especificar un archivo de salida para el plan. El uso del parámetro-out
garantiza que el plan que ha revisado es exactamente lo que se aplica.
5. Aplicación de un plan de ejecución de Terraform
Ejecute terraform apply para aplicar el plan de ejecución a su infraestructura en la nube.
terraform apply main.tfplan
Puntos clave:
- El comando
terraform apply
de ejemplo asume que ejecutóterraform plan -out main.tfplan
previamente. - Si especificó un nombre de archivo diferente para el parámetro
-out
, use ese mismo nombre de archivo en la llamada aterraform apply
. - Si no ha utilizado el parámetro
-out
, llame aterraform apply
sin ningún parámetro.
6. Comprobación de los resultados
En esta sección se muestra cómo probar la conectividad desde el entorno local simulado a la red virtual del centro.
Navegue al portal de Azure.
En Azure Portal, vaya al grupo de recursos onprem-vnet-rg .
En la pestaña onprem-vnet-rg , seleccione la máquina virtual denominada onprem-vm.
Anote el valor de la dirección IP pública .
Vuelva a la línea de comandos y ejecútelo
ssh
para conectarse al entorno local simulado.ssh azureuser@<onprem_vm_ip_address>
Puntos clave:
- Si cambió el nombre de usuario en el
variables.tf
archivo, asegúrese deazureuser
insertar ese valor en elssh
comando. - Utilice la contraseña que especificó al ejecutar
terraform plan
archivos .
- Si cambió el nombre de usuario en el
Una vez conectado a la máquina virtual onprem-vm , ejecute el comando para probar la
ping
conectividad con la máquina virtual de jumpbox en la red virtual del centro:ping 10.0.0.68
Ejecute el comando para probar la
ping
conectividad con las máquinas virtuales de jumpbox en cada radio:ping 10.1.0.68 ping 10.2.0.68
Para salir de la sesión ssh en la máquina virtual onprem-vm , escriba
exit
y presione <Entrar>.
7. Limpieza de recursos
Cuando ya no necesite los recursos creados a través de Terraform, siga estos pasos:
Ejecute terraform plan y especifique el indicador
destroy
.terraform plan -destroy -out main.destroy.tfplan
Puntos clave:
- El comando
terraform plan
crea un plan de ejecución, pero no lo ejecuta. En su lugar, determina qué acciones son necesarias para crear la configuración especificada en los archivos de configuración. Este patrón le permite comprobar si el plan de ejecución coincide con sus expectativas antes de realizar cambios en los recursos reales. - El parámetro opcional
-out
permite especificar un archivo de salida para el plan. El uso del parámetro-out
garantiza que el plan que ha revisado es exactamente lo que se aplica.
- El comando
Ejecute terraform apply para aplicar el plan de ejecución.
terraform apply main.destroy.tfplan
Solución de problemas de Terraform en Azure
Solución de problemas comunes al usar Terraform en Azure