Tutorial: Creación y configuración de una puerta de enlace de aplicaciones que hospede varios sitios web mediante Azure Portal

Puede usar Azure Portal para configurar el hospedaje de varios sitios web al crear una puerta de enlace de aplicaciones. En este tutorial se definen grupos de direcciones de back-end mediante máquinas virtuales. Después, configurará agentes de escucha y reglas basados en dos dominios para asegurarse de que el tráfico web llega a los servidores adecuados en los grupos. En este tutorial se usan ejemplos de www.contoso.com y www.fabrikam.com.

En este tutorial, aprenderá a:

  • Creación de una puerta de enlace de aplicaciones
  • Crear máquinas virtuales para servidores back-end
  • Crear grupos de back-end con los servidores back-end
  • Creación de clientes de escucha
  • Crear reglas de enrutamiento
  • Editar el archivo de hosts para la resolución de nombres

Diagram showing multi-site application gateway.

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Nota

Se recomienda usar el módulo Azure Az de PowerShell para interactuar con Azure. Consulte Instalación de Azure PowerShell para empezar. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.

Requisitos previos

  • Una suscripción de Azure

Inicio de sesión en Azure

Inicie sesión en Azure Portal.

Creación de una puerta de enlace de aplicaciones

  1. En el menú de Azure Portal, seleccione + Crear un recurso>Redes>Application Gateway, o busque Application Gateway en el cuadro de búsqueda del portal.

  2. Seleccione Crear.

Pestaña Aspectos básicos

  1. En la pestaña Aspectos básicos, escriba estos valores:

    • Grupo de recursos: Seleccione myResourceGroupAG como grupo de recursos. Si no existe, seleccione Crear nuevo para crearlo.

    • Nombre de la puerta de enlace de aplicaciones: Escriba myAppGateway como nombre de la puerta de enlace de aplicaciones.

      Screenshot showing Create application gateway page.

  2. Para que Azure se comunique entre los recursos que se crean, se necesita una red virtual. Puede crear una red virtual o usar una existente. En este ejemplo, creará una nueva red virtual a la vez que crea la puerta de enlace de aplicaciones. Se crean instancias de puertas de enlace de aplicaciones y en subredes independientes. En este ejemplo se crean dos subredes: una para la puerta de enlace de aplicaciones y la otra para los servidores back-end.

    En Configurar la red virtual, seleccione Crear nuevo para crear una nueva red virtual. En la ventana Crear red virtual que se abre, escriba los valores siguientes para crear la red virtual y dos subredes:

    • Name: Escriba myVnet como nombre de la red virtual.

    • Nombre de subred (subred de la puerta de enlace de aplicaciones): la tabla Subredes mostrará una subred llamada Predeterminada. Cambie el nombre de esta subred a myAGSubnet.
      La subred de la puerta de enlace de aplicaciones solo puede contener puertas de enlace de aplicaciones. No se permite ningún otro recurso. El intervalo de direcciones IP predeterminado proporcionado es 10.0.0.0/24.

    Seleccione Aceptar para cerrar la ventana Crear red virtual y guarde la configuración de la red virtual.

    Create VNet

  3. En la pestaña Aspectos básicos, acepte los valores predeterminados para las demás opciones y seleccione Siguiente: Front-end.

Pestaña Front-end

  1. En la pestaña Front-end, compruebe que Tipo de dirección IP de front-end esté establecido en Pública.
    Puede configurar la dirección IP de front-end para que sea pública o privada, según el caso de uso. En este ejemplo, elegimos una IP de front-end pública.

    Nota:

    Para la SKU v2 de la puerta de enlace de aplicaciones, solo puede seleccionar la configuración de IP de front-end pública. El uso de una configuración de dirección IP de front-end privada se encuentra actualmente en versión preliminar pública. Para obtener más información, consulte Implementación de Application Gateway privado.

  2. En Dirección IP pública, seleccione Agregar nueva y escriba myAGPublicIPAddress como nombre de la dirección IP pública y, luego, elija Aceptar.

    Create another VNet

  3. Seleccione Siguiente: Back-end.

Pestaña Back-end

El grupo de back-end se usa para enrutar las solicitudes a los servidores back-end, que atienden la solicitud. Los grupos de back-end pueden ser NIC, conjuntos de escalado de máquinas virtuales, direcciones IP públicas e internas, nombres de dominio completos (FQDN) y servidores back-end multiinquilino, como Azure App Service. En este ejemplo, creará un grupo de back-end vacío con la puerta de enlace de aplicaciones y, luego, agregará destinos de back-end al grupo de back-end.

  1. En la pestaña Back-end, seleccione Agregar un grupo de back-end.

  2. En la ventana Agregar un grupo de back-end, escriba los valores siguientes para crear un grupo de back-end vacío:

    • Name: Escriba contosoPool como nombre del grupo back-end.
    • Agregar grupo de back-end sin destinos: Seleccione para crear un grupo de back-end sin destinos. Agregará destinos de back-end después de crear la puerta de enlace de aplicaciones.
  3. En la ventana Agregar un grupo de back-end, seleccione Agregar para guardar la configuración del grupo de back-end y vuelva a la pestaña Back-end.

  4. Ahora, agregue otro grupo de back-end llamado fabrikamPool de la misma manera que el grupo anterior.

  5. Seleccione Agregar.

    Create Backends

  6. En la pestaña Back-end, seleccione Siguiente: Configuración.

Pestaña Configuración

En la pestaña Configuración, conecte el grupo de front-end y back-end que ha creado con una regla de enrutamiento.

  1. Seleccione Agregar una regla de enrutamiento en la columna Reglas de enrutamiento.

  2. En la ventana Agregar una regla de enrutamiento que se abre, escriba contosoRule para Nombre de regla.

  3. Una regla de enrutamiento necesita un cliente de escucha. En la pestaña Cliente de escucha de la ventana Agregar una regla de enrutamiento, escriba los valores siguientes para el cliente de escucha:

    • Nombre de regla: contosoRule.
    • Nombre de agente de escucha: contosoListener.
    • Dirección IP de front-end: Seleccione Pública para elegir la dirección IP pública que ha creado para el front-end.

    En Configuración adicional:

    • Tipo de cliente de escucha: Varios sitios
    • Nombre del host: www.contoso.com

    Acepte los valores predeterminados para las demás opciones de la pestaña Cliente de escucha y, a continuación, seleccione la pestaña Destinos de back-end para configurar el resto de opciones de la regla de enrutamiento.

    Create routing rule

  4. En la pestaña Destinos de back-end, seleccione contosoPool para el Destino de back-end.

  5. En Configuración de back-end, seleccione Agregar nuevo para agregar una configuración de back-end nueva. La configuración de back-end determinará el comportamiento de la regla de enrutamiento. En la ventana Agregar una configuración de back-end que se abre, escriba contosoSetting como el nombre de la configuración de back-end y 80 como el puerto back-end. Acepte los valores predeterminados para las demás opciones de la ventana Agregar una configuración de back-end y, a continuación, seleccione Agregar para volver a la ventana Agregar una regla de enrutamiento.

  6. En la ventana Agregar una regla de enrutamiento, seleccione Agregar para guardar la regla de enrutamiento y volver a la pestaña Configuración.

  7. Seleccione Agregar una regla de enrutamiento y agregue una regla, un cliente de escucha, un destino de back-end y una configuración de back-end similares para Fabrikam.

    Fabrikam rule

  8. Seleccione Siguiente: Etiquetas y, a continuación, Siguiente: Review + create (Revisar y crear).

Pestaña Revisar y crear

Revise la configuración en la pestaña Revisar y crear y seleccione Crear para crear la red virtual, la dirección IP pública y la puerta de enlace de aplicaciones. Azure puede tardar varios minutos en crear la puerta de enlace de aplicaciones.

Espere hasta que finalice la implementación correctamente antes de continuar con la siguiente sección.

Agregar destinos de back-end

En este ejemplo, se usan máquinas virtuales como back-end de destino. Pueden usarse máquinas virtuales existentes o crear otras nuevas. En este ejemplo, se crean dos máquinas virtuales que Azure usa como servidores back-end para la puerta de enlace de aplicaciones.

Para agregar destinos de back-end, puede:

  1. Agregar una subred de back-end.
  2. Crear dos nuevas máquinas virtuales, contosoVM y fabrikamVM, que se usarán como servidores back-end.
  3. Instalar IIS en las máquinas virtuales para comprobar que la puerta de enlace de aplicaciones se ha creado correctamente.
  4. Agregar los servidores back-end a los grupos de back-end.

Agregar una subred de back-end

  1. En Azure Portal, busque redes virtuales y seleccione *myVNet.
  2. En Configuración, seleccione Subredes.
  3. Seleccione + Subred y, en el panel Agregar subred, escriba myBackendSubnet como Nombre y acepte 10.0.1.0/24 como intervalo de direcciones de subred.
  4. Acepte el resto de valores predeterminados y seleccione Guardar.

Creación de una máquina virtual

  1. En Azure Portal, seleccione Crear un recurso. Aparece la ventana Nuevo.

  2. Seleccione Windows Server 2016 Datacenter en la lista Popular. Aparecerá la página Creación de una máquina virtual.
    Application Gateway puede enrutar el tráfico a cualquier tipo de máquina virtual que se use en el grupo de back-end. En este ejemplo se usa un Windows Server 2016 Datacenter.

  3. Especifique estos valores en la pestaña Datos básicos de la siguiente configuración de máquina virtual:

    • Suscripción: seleccione su suscripción.
    • Grupo de recursos: Seleccione myResourceGroupAG como nombre del grupo de recursos.
    • Nombre de la máquina virtual: Escriba contosoVM como nombre de la máquina virtual.
    • Región: seleccione la misma región que usó antes.
    • Nombre de usuario: Escriba un nombre de usuario para el administrador.
    • Contraseña: Escriba una contraseña para el administrador.
  4. Acepte los valores predeterminados y haga clic en Siguiente: Discos.

  5. Acepte los valores predeterminados de la pestaña Discos y seleccione Siguiente: Redes.

  6. En la pestaña Redes, compruebe que myVNet está seleccionada como red virtual y que la subred es myBackendSubnet. Acepte los valores predeterminados y haga clic en Siguiente: Administración.
    Application Gateway puede comunicarse con instancias fuera de la red virtual en la que se encuentra, pero hay que comprobar que haya conectividad IP.

  7. En la pestaña Administración, establezca Diagnósticos de arranque en Deshabilitar. Acepte los demás valores predeterminados y seleccione Revisar y crear.

  8. En la pestaña Revisar y crear, revise la configuración, corrija los errores de validación y, después, seleccione Crear.

  9. Espere a que se complete la creación de la máquina virtual antes de continuar.

Instalación de IIS para pruebas

En este ejemplo se instala IIS en las máquinas virtuales con el fin de comprobar que Azure creó correctamente la puerta de enlace de aplicaciones.

  1. Abra Azure PowerShell. Para ello, seleccione Cloud Shell en la barra de navegación superior de Azure Portal y, a continuación, seleccione PowerShell en la lista desplegable.

    Install custom extension

  2. Ejecute el siguiente comando para instalar IIS en la máquina virtual, sustituyendo la región del grupo de recursos por <ubicación>:

    Set-AzVMExtension `
      -ResourceGroupName myResourceGroupAG `
      -ExtensionName IIS `
      -VMName contosoVM `
      -Publisher Microsoft.Compute `
      -ExtensionType CustomScriptExtension `
      -TypeHandlerVersion 1.4 `
      -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' `
      -Location <location>
    
  3. Cree una segunda máquina virtual e instale IIS con los pasos que acaba de finalizar. Use fabrikamVM como nombre de la máquina virtual y como valor de VMName para el cmdlet Set-AzVMExtension.

Adición de servidores back-end a grupos de back-end

  1. Seleccione Todos los recursos y, después, seleccione myAppGateway.

  2. Seleccione los grupos back-end en el menú de la izquierda.

  3. Seleccione contosoPool.

  4. En Tipo de destino, seleccione Máquina virtual de la lista desplegable.

  5. En Destino, seleccione la interfaz de red la máquina virtual contosoVM en la lista desplegable.

    Add backend servers

  6. Seleccione Guardar.

  7. Repita el procedimiento para agregar fabrikamVM y la interfaz a fabrikamPool.

Espere a que la implementación se complete antes de continuar con el paso siguiente.

Edición de un archivo de hosts para la resolución de nombres

Después de crear la puerta de enlace de aplicaciones con su dirección IP pública, puede obtener la dirección IP y usarla para editar el archivo de hosts para resolver www.contoso.com y www.fabrikam.com. En un entorno de producción, puede crear un CNAME en DNS para la resolución de nombres.

  1. Seleccione Todos los recursos y, después, myAGPublicIPAddress.

    Record application gateway DNS address

  2. Copie la dirección IP y utilícela como valor para las nuevas entradas de su archivo hosts.

  3. En la máquina local, abra un símbolo del sistema administrativo y vaya a c:\Windows\System32\drivers\etc.

  4. Abra el archivo hosts y agregue las siguientes entradas, donde x.x.x.x es la dirección IP pública de la puerta de enlace de aplicación:

    # Copyright (c) 1993-2009 Microsoft Corp.
    #
    # This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
    #
    # This file contains the mappings of IP addresses to host names. Each
    # entry should be kept on an individual line. The IP address should
    # be placed in the first column followed by the corresponding host name.
    # The IP address and the host name should be separated by at least one
    # space.
    #
    # Additionally, comments (such as these) may be inserted on individual
    # lines or following the machine name denoted by a '#' symbol.
    #
    # For example:
    #
    #      102.54.94.97     rhino.acme.com          # source server
    #       38.25.63.10     x.acme.com              # x client host
    
    # localhost name resolution is handled within DNS itself.
    #	127.0.0.1       localhost
    #	::1             localhost
    x.x.x.x www.contoso.com
    x.x.x.x www.fabrikam.com
    
    
  5. Guarde el archivo.

  6. Ejecute los siguientes comandos para cargar y mostrar los cambios en el archivo de hosts:

     ipconfig/registerdns
     ipconfig/displaydns
    

Prueba de la puerta de enlace de aplicaciones

  1. Escriba un nombre de dominio en la barra de direcciones del explorador. Por ejemplo, http://www.contoso.com.

    Test contoso site in application gateway

  2. Cambie la dirección al otro dominio. Debería ver algo parecido al ejemplo siguiente:

    Test fabrikam site in application gateway

Limpieza de recursos

Cuando ya no necesite los recursos que ha creado con la puerta de enlace de aplicaciones, elimine el grupo de recursos. Al hacerlo, también elimina la puerta de enlace de aplicaciones y todos sus recursos relacionados.

Para eliminar el grupo de recursos:

  1. En el menú de la izquierda de Azure Portal, seleccione Grupos de recursos.
  2. En la página Grupos de recursos, busque myResourceGroupAG en la lista y selecciónelo.
  3. En la página myResourceGroupAG, seleccione Eliminar grupo de recursos.
  4. Escriba myResourceGroupAG en ESCRIBA EL NOMBRE DEL GRUPO DE RECURSOS y seleccione Eliminar.

Para restaurar el archivo de hosts:

  1. Elimine las líneas www.contoso.com y www.fabrikam.com de la fila hosts.
  2. Ejecute ipconfig/registerdns y ipconfig/flushdns desde el símbolo del sistema.

Pasos siguientes

En este tutorial ha:

  • Creado una puerta de enlace de aplicaciones con agentes de escucha y reglas basadas en dos dominio
  • Probado la puerta de enlace de aplicaciones después de editar los archivos host de los servidores back-end

Para más información sobre cómo hospedar varios sitios, consulte Hospedaje de varios sitios de puerta de enlace de aplicaciones.

Para aprender a crear y configurar una instancia para una puerta de enlace de aplicaciones con reglas de enrutamiento mediante Azure Portal, pase al siguiente tutorial.