Instalación de IIS en Windows Server con Terraform

Clase 24 de 37Curso de Terraform

Resumen

¿Cómo agregar componentes a un servidor con Terraform?

La flexibilidad y escalabilidad son elementos cruciales al momento de manejar infraestructura en la nube. Terraform nos proporciona las herramientas necesarias para modificar y añadir características a nuestros servidores de manera eficiente y sencilla. Supongamos que, al desplegar una máquina virtual, olvidaste agregar algún componente. No te preocupes; puedes hacerlo fácilmente posteriormente usando Terraform. En este artículo, veremos cómo añadir el servidor web IIS a una máquina virtual en Windows Server utilizando Terraform.

¿Qué es IIS y por qué es importante?

Internet Information Services (IIS) es un servidor web creado por Microsoft, que actúa como la contraparte de Apache o Nginx en el mundo de Windows Server. Su función principal es desplegar sitios web, permitiendo que tu servidor se convierta en un potente host de aplicaciones web. Para aquellos nuevos en este ámbito o nacidos en la era digital, saber cómo operar y configurar IIS es una habilidad valiosa para cualquier administrador de sistemas que trabaje con entornos Windows.

¿Cómo instalar IIS en una máquina virtual con Terraform?

Vamos a desglosar el proceso de instalación y configuración de IIS en una máquina virtual en Windows Server haciendo uso de Terraform. Aquí te explicamos paso a paso cómo hacerlo:

  1. Preparación del entorno

    Asegúrate de tener acceso a tu máquina virtual a través de un archivo RDP y haber conectado la máquina virtual previamente. Si perdiste la conexión, deberás reconectar tu máquina mediante el escritorio remoto.

  2. Modificación del script en Visual Studio

    Abre tu archivo de Terraform en Visual Studio y busca el bloque main de la máquina virtual. Vamos a añadir un bloque de extensión de máquina virtual (virtual machine extension) que permitirá la instalación de IIS.

    resource "azurerm_virtual_machine_extension" "web_server_install" {
      name                 = "${azurerm_virtual_machine.main.name}-inst"
      virtual_machine_id   = azurerm_virtual_machine.main.id
      publisher            = "Microsoft.Compute"
      type                 = "CustomScriptExtension"
      type_handler_version = "1.10"
      settings = <<SETTINGS
        {
          "commandToExecute": "powershell Add-WindowsFeature Web-Server"
        }
    SETTINGS
    }
    
  3. Ejecutar Terraform para aplicar cambios

    Una vez modificado el archivo, abre tu terminal de comandos, limpia la consola con clear y corre el comando terraform plan para verificar qué cambios se van a realizar en tu infraestructura según el nuevo script.

    Lanza el comando terraform apply para aplicar los cambios y espera a que el proceso de actualización concluye. Una vez terminado, los cambios habrán sido implementados, y IIS estará instalado en tu máquina virtual.

  4. Verificación de instalación

    Reconecta a tu máquina virtual a través del escritorio remoto. Dirígete a Server Manager y verifica que IIS está instalado adecuadamente. Si todo ha salido bien, abre un navegador web dentro de la máquina virtual e ingresa localhost para comprobar que el servidor web está activo y mostrando su página de inicio.

¿Por qué elegir Terraform para la gestión de infraestructura?

Terraform no solo ofrece la posibilidad de desplegar infraestructura, sino también de modificarla y adaptarla a medida que cambian las necesidades. Esta capacidad para gestionar infraestructura como código permite iterar rápidamente, aplicar mejoras, y sobre todo, garantizar que todos los cambios se documentan y pueden ser revertidos o replicados en otros entornos.

Con esta herramienta, personalizar y configurar a detalle tus máquinas virtuales en la nube es sencillo, permitiendo así optimizar el rendimiento y funcionalidades según tus necesidades. Recuerda siempre explorar y aprender nuevas características de las herramientas que usas día a día. La tecnología evoluciona constantemente, y mantenerse actualizado es la clave para desbloquear nuevas oportunidades y desafíos.

¡Sigue explorando y aprendiendo, y no dudes en utilizar Terraform para hacer de tu infraestructura algo mucho más adaptable y fácil de gestionar!