Enrutar el tráfico web con Application Gateway

Completado

Application Gateway administra las solicitudes que las aplicaciones cliente pueden enviar a una aplicación web. Application Gateway enruta el tráfico a un grupo de servidores web según la dirección URL de una solicitud. Esto se conoce como enrutamiento de nivel de aplicación. El grupo de servidores web puede estar compuesto de máquinas virtuales de Azure, conjuntos de escalado de máquinas virtuales, Azure App Service e incluso servidores locales.

Diagrama que muestra cómo se enruta una solicitud mediante Application Gateway a un servidor web.

Funcionamiento de las solicitudes de enrutamiento de Application Gateway

Los clientes envían solicitudes a las aplicaciones web, a la dirección IP o el nombre DNS de la puerta de enlace. La puerta de enlace enruta las solicitudes a un servidor web seleccionado en el grupo de servidores back-end mediante un conjunto de reglas configuradas para que la puerta de enlace determine dónde debería ir la solicitud.

Hay dos métodos principales de enrutamiento de tráfico: enrutamiento basado en ruta de acceso y el hospedaje de varios sitios. Veamos las capacidades de cada uno de ellos.

Enrutamiento basado en ruta de acceso

El enrutamiento basado en ruta de acceso permite enviar las solicitudes con diferentes rutas de acceso en la dirección URL a un grupo distinto de servidores back-end. Por ejemplo, podría dirigir las solicitudes con la ruta de acceso /video/* a un grupo de servidores back-end que contenga servidores que están optimizados para controlar el streaming de vídeo y dirigir las solicitudes de /images/* a un grupo de servidores que administran la recuperación de imágenes.

Diagrama que muestra cómo se enruta una solicitud mediante Application Gateway configurado con enrutamiento basado en ruta de acceso.

Hospedaje de varios sitios

El hospedaje de varios sitios permite configurar más de una aplicación web en la misma instancia de puerta de enlace de aplicación. En una configuración de varios sitios, puede registrar varios nombres de DNS (CNAME) para la dirección IP de Application Gateway, especificando el nombre de cada sitio. Application Gateway usa agentes de escucha independientes para esperar por las solicitudes de cada sitio. Cada agente de escucha pasa la solicitud a otra regla, que puede enrutar las solicitudes a servidores en otro grupo de servidores back-end. Por ejemplo, podría configurar Application Gateway para que dirija todas las solicitudes para http://contoso.com a los servidores de un grupo de servidores back-end y las solicitudes para http://fabrikam.com a otro grupo de back-end. El diagrama siguiente muestra esta configuración:

Diagrama que muestra cómo se enruta una solicitud mediante Application Gateway configurado con hospedaje de varios sitios.

Las configuraciones de varios sitios son útiles para admitir aplicaciones de varios inquilinos, donde cada inquilino tiene su propio conjunto de máquinas virtuales u otros recursos que hospedan una aplicación web.

Otras funcionalidades de enrutamiento

Junto con el enrutamiento basado en ruta de acceso y el hospedaje de varios sitios, hay algunas funcionalidades adicionales al enrutar con Application Gateway.

  • Redireccionamiento: el redireccionamiento puede ser hacia otro sitio o de HTTP a HTTPS.
  • Reescritura de encabezados HTTP: los encabezados HTTP permiten que el cliente y el servidor pasen información adicional con la solicitud o la respuesta.
  • Personalización de páginas de error: Application Gateway permite crear páginas de error personalizadas, en lugar de mostrar las páginas de error predeterminadas. La página de error puede personalizarse para incluir una marca y diseño propios.

Equilibrio de carga en Application Gateway

Application Gateway equilibrará automáticamente la carga de las solicitudes enviadas a los servidores en cada grupo de servidores back-end mediante un mecanismo round robin. Sin embargo, si tiene que asegurarse de que todas las solicitudes para un cliente en la misma sesión se enruten al mismo servidor en un grupo de back-end, puede configurar la permanencia de sesión.

El equilibrio de carga funciona con el enrutamiento de la capa OSI 7 que implementa el enrutamiento de Application Gateway, lo que significa que equilibra la carga de las solicitudes en función de los parámetros de enrutamiento (nombres y rutas de acceso de host) que usan las reglas de Application Gateway. En comparación, otros equilibradores de carga, como Azure Load Balancer, funcionan en el nivel de capa OSI 4 y distribuyen el tráfico según la dirección IP del destino de una solicitud.

Operar en la capa OSI 7 permite que el equilibrio de carga aproveche las ventajas de las demás características que proporciona Application Gateway. Entre ellas se incluyen:

  • Compatibilidad con los protocolos HTTP, HTTPS, HTTP/2 y WebSocket.
  • Firewall de aplicaciones web para protegerse frente a vulnerabilidades de aplicaciones web.
  • Cifrado de la solicitud de un extremo a otro.
  • Escalado automático para ajustar dinámicamente la capacidad a medida que cambia la carga del tráfico web.

Enrutamiento para el departamento de vehículos motorizados

Al revisar el escenario en el departamento de vehículos motorizados, se puede usar Application Gateway para abordar ambos problemas. Se puede utilizar el equilibrio de carga y las capacidades de sondeo de estado para asegurarse de que se tratan los errores sin afectar al usuario. También se puede usar el enrutamiento basado en ruta de acceso para proporcionar un único punto de conexión para que los usuarios accedan a sitios hospedados en diversos servicios web.

Veamos con más detalle cómo se puede hacer.

Comprobación de conocimientos

1.

¿Qué criterios utiliza Application Gateway para enrutar las solicitudes a un servidor web?

2.

¿Qué estrategia de equilibrio de carga implementa Application Gateway?