Equilibrio de carga con NetScaler® ADC
Este artículo te guía sobre cómo implementar un grupo de servidores StoreFront que contenga dos o más servidores StoreFront en una configuración de equilibrio de carga totalmente activa. El artículo detalla cómo configurar un dispositivo NetScaler ADC para equilibrar la carga de las solicitudes entrantes de la aplicación Citrix Workspace y los navegadores web entre los servidores StoreFront del grupo de servidores.
Crear registros DNS para el equilibrador de carga del grupo de servidores StoreFront
Crea un registro DNS A y PTR para el FQDN compartido que hayas elegido. Los clientes de tu red usan este FQDN para acceder al grupo de servidores StoreFront mediante el equilibrador de carga del dispositivo NetScaler ADC.
Ejemplo: storefront.example.com se resuelve en la IP virtual (VIP) del servidor virtual de equilibrio de carga.
Configurar servidores StoreFront
Todos los servidores StoreFront entre los que quieras equilibrar la carga deben configurarse como parte de un grupo de servidores StoreFront que sincronice la configuración entre ellos para garantizar que estén configurados de forma idéntica. Para obtener más detalles sobre cómo agregar servidores a un grupo de servidores, consulta Unirse a un grupo de servidores existente.
Cada servidor debe configurarse para HTTPS, de modo que la comunicación entre el equilibrador de carga y los servidores StoreFront esté cifrada. Consulta Proteger StoreFront con HTTPS. El certificado debe contener el FQDN de equilibrio de carga como Nombre común (CN) o como Nombre alternativo del sujeto (SAN).
Establece la URL base del grupo de servidores como la URL del equilibrador de carga. Para modificar la URL base, en la consola de administración de Citrix StoreFront, en el panel izquierdo, haz clic con el botón derecho en Grupo de servidores y haz clic en Cambiar URL base. Introduce la URL del servidor virtual del equilibrador de carga.
Configurar opcionalmente el monitor de servicio de Citrix para HTTPS
Una instalación de StoreFront incluye el servicio de Windows Citrix Service monitor. Este servicio no tiene otras dependencias de servicio y supervisa el estado de los servicios críticos de StoreFront. Esto permite que NetScaler ADC y otras aplicaciones de terceros supervisen el estado relativo de una implementación de servidor StoreFront.
De forma predeterminada, el monitor usa HTTP en el puerto 8000. Opcionalmente, puedes cambiar esto para usar HTTPS en el puerto 443.
-
Abre el Entorno de scripting integrado (ISE) de PowerShell en el servidor StoreFront principal y ejecuta los siguientes comandos para cambiar el monitor predeterminado a HTTPS 443:
$ServiceUrl = "https://localhost:443/StorefrontMonitor" Set-STFServiceMonitor -ServiceUrl $ServiceUrl Get-STFServiceMonitor <!--NeedCopy--> -
Una vez completado, propaga los cambios a todos los demás servidores del grupo de servidores StoreFront.
-
Para realizar una prueba rápida en el monitor, introduce la siguiente URL en el navegador del servidor StoreFront o de cualquier otra máquina con acceso de red al servidor StoreFront. El navegador devuelve un resumen XML del estado de cada servicio de StoreFront.
https://<loadbalancingFQDN>/StoreFrontMonitor/GetSFServicesStatus<ArrayOfServiceStatus xmlns="http://schemas.datacontract.org/2004/07/Citrix.DeliveryServices.ServiceMonitor.Contract" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <ServiceStatus> <name>Citrix Peer Resolution Service</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>CitrixConfigurationReplication</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>CitrixCredentialWallet</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>CitrixDefaultDomainService</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>CitrixSubscriptionsStore</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>NetTcpPortSharing</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>WAS</name> <status>running</status> </ServiceStatus> <ServiceStatus> <name>W3SVC</name> <status>running</status> </ServiceStatus> </ArrayOfServiceStatus> <!--NeedCopy-->
Configurar el equilibrador de carga de NetScaler
Instalar certificado raíz
Si tus servidores StoreFront usan un certificado firmado por una autoridad interna, debes instalar el certificado raíz en NetScaler. Esto es necesario para que NetScaler confíe en el certificado del servidor StoreFront.
- Inicia sesión en la GUI de administración del dispositivo NetScaler ADC.
- Selecciona Administración de tráfico > SSL > Certificados > Certificados de CA.
- Haz clic en Instalar.
- En la página Instalar certificado de CA, introduce un nombre de par de certificado-clave, haz clic en Elegir archivo y busca el archivo de certificado.
- Haz clic en Instalar.
Instalar el certificado del servidor
Para habilitar HTTPS, necesitas un certificado cuyo nombre alternativo del sujeto incluya el FQDN del equilibrador de carga. Puedes firmar el certificado con una autoridad de certificación empresarial o pública.
Debes tener archivos de certificado y clave separados en formato PEM. Si tienes un certificado que contiene la clave privada en formato PKCS12, puedes usar openssl para convertir el archivo. Por ejemplo:
openssl pkcs12 -in cert.pfx -clcerts -nokeys -out cert.cer
openssl pkcs12 -in cert.pfx -nocerts -out storefrontlbeu.key
<!--NeedCopy-->
Aparece un mensaje para introducir la contraseña existente y una nueva frase de contraseña PEM.
Para instalar el certificado:
- Inicia sesión en la GUI de administración del dispositivo NetScaler ADC.
- Selecciona Administración de tráfico > SSL > Certificados > Certificados de CA.
- Haz clic en Instalar.
- En la página Instalar certificado de CA:
- Introduce un Nombre de par de certificado-clave.
- En Nombre de archivo de certificado, haz clic en Elegir archivo y busca el archivo de certificado.
- En Nombre de archivo de clave, haz clic en Elegir archivo y busca el archivo de clave.
- En Contraseña, introduce la frase de contraseña.
- Haz clic en Instalar.
- Haz clic en Vincular para vincular el certificado al certificado raíz.

Agregar nodos de servidor StoreFront individuales al equilibrador de carga del dispositivo NetScaler ADC
-
Navega a Administración de tráfico > Equilibrio de carga > Servidores. Haz clic en Agregar y agrega cada uno de los servidores StoreFront que se van a equilibrar.
Ejemplo = 2 servidores StoreFront llamados StoreFront-eu-1 y StoreFront-eu-2
-
Usa la configuración de servidor basada en IP e introduce la dirección IP del servidor para cada nodo de StoreFront.

Definir un monitor de StoreFront para comprobar el estado de todos los nodos de StoreFront en el grupo de servidores
- Inicia sesión en la GUI de administración de NetScaler ADC.
- Selecciona Administración de tráfico > Equilibrio de carga > Monitores > Agregar y agrega un nuevo monitor llamado StoreFront y acepta todas las configuraciones predeterminadas.
- En el menú desplegable Tipo, selecciona StoreFront.
- Si has configurado tu monitor de StoreFront para HTTPS, asegúrate de que la opción Seguro esté seleccionada. De lo contrario, deja esta opción sin seleccionar e introduce el puerto 8000.
- Selecciona la opción Comprobar servicios de backend. Esta opción permite la supervisión de los servicios que se ejecutan en el servidor StoreFront. Los servicios de StoreFront se supervisan mediante el sondeo de un servicio de Windows que se ejecuta en el servidor StoreFront, que devuelve el estado de los siguientes servicios:
- W3SVC (IIS)
- WAS (Servicio de activación de procesos de Windows)
- CitrixCredentialWallet
- CitrixDefaultDomainService

Crear un grupo de servicios que contenga todos los servidores StoreFront
-
Navega a Administración de tráfico > Equilibrio de carga > Grupos de servicios. Pulsa Agregar. Para conectarte a los servidores StoreFront a través de HTTPS, selecciona el protocolo SSL. Deja las demás configuraciones como predeterminadas. Pulsa Aceptar.
-
Dentro de tu grupo de servicios, en Miembros del grupo de servicios, haz clic en Ningún miembro del grupo de servicios.
- Haz clic en Basado en servicio.
- Selecciona todos los servidores que definiste anteriormente.
- Para usar SSL entre el equilibrador de carga y el servidor StoreFront, introduce el puerto 443. De lo contrario, introduce el puerto 80.

-
Agrega la sección Monitores y selecciona el monitor de StoreFront que creaste anteriormente.

-
Agrega la sección Certificados.
- Vincula el certificado de cliente.
- Vincula el certificado de CA utilizado para firmar el certificado del servidor que importaste anteriormente, y cualquier otra CA que pueda formar parte de la cadena de confianza PKI.

-
Agrega la sección Configuración. Selecciona Insertar encabezado IP de cliente e introduce un nombre de encabezado de X-Forwarded-For. Esto permite que la dirección IP del cliente se use en las directivas de Citrix Virtual Apps and Desktops.
Crear un servidor virtual de equilibrio de carga para el tráfico de usuarios
-
Inicia sesión en la GUI de administración del dispositivo NetScaler ADC.
-
Selecciona Administración de tráfico > Equilibrio de carga > Servidores virtuales > Agregar para crear un nuevo servidor virtual.
-
Introduce un nombre, elige el protocolo SSL e introduce el Puerto. Haz clic en Aceptar para crear el servidor virtual.

-
Vincula el Grupo de servicios que creaste anteriormente al servidor virtual de equilibrio de carga.
-
Vincula el mismo certificado de servidor y CA que vinculaste anteriormente al grupo de servicios.
-
Agrega la sección Método y selecciona el método de equilibrio de carga. Las opciones comunes para el equilibrio de carga de StoreFront son round robin o conexión mínima.

-
Agrega la sección Persistencia.
-
Establece el método de persistencia en COOKIEINSERT.
-
Establece el tiempo de espera para que sea el mismo que el tiempo de espera de la sesión dentro de StoreFront, que por defecto es de 20 minutos.
-
Nombra la cookie. Por ejemplo, NSC_SFPersistence, ya que esto facilita su identificación durante la depuración.
-
Establece la persistencia de respaldo en NINGUNO.
Nota:
Si el cliente no tiene permitido almacenar la cookie HTTP, las solicitudes posteriores no tendrán la cookie HTTP y la persistencia no se usará.
-

Configurar el bucle invertido de StoreFront
Cuando la dirección base es un equilibrador de carga, para la comunicación interna entre los servicios de StoreFront, podría hacer que el tráfico se enrute al equilibrador de carga y, potencialmente, a otro servidor. Esto resulta en un rendimiento deficiente y un comportamiento inesperado. Usa la configuración de StoreFront Habilitar comunicación de bucle invertido para evitarlo. De forma predeterminada, esto se establece en Activado, lo que significa que reemplaza la parte del host de la dirección del servicio con la dirección IP de bucle invertido 127.0.0.1, manteniendo el esquema (HTTP o HTTPS) tal cual. Esto funciona para una implementación de un solo servidor y para implementaciones con un equilibrador de carga que no termina SSL. Cuando el equilibrador de carga termina SSL y se comunica con StoreFront a través de HTTP (no recomendado), es necesario configurar la comunicación de bucle invertido de StoreFront en OnUsingHttp, lo que significa que StoreFront también cambia el esquema de HTTPS a HTTP.
Configurar el equilibrador de carga de NetScaler ADC para la sincronización de suscripciones entre grupos de servidores
Si tienes una implementación multisitio que consta de dos o más grupos de servidores StoreFront, puedes replicar los datos de suscripción entre ellos utilizando una estrategia de extracción en un programa repetitivo. La replicación de suscripciones de StoreFront usa el puerto TCP 808, por lo que el uso de un servidor virtual de equilibrio de carga existente en el puerto HTTP 80 o HTTPS 443 falla. Para proporcionar alta disponibilidad para este servicio, crea un segundo servidor virtual en cada dispositivo NetScaler ADC de tu implementación para equilibrar la carga del puerto TCP 808 para cada uno de los grupos de servidores StoreFront.
Configurar un grupo de servicios para la sincronización de suscripciones
- Inicia sesión en la GUI de administración del dispositivo NetScaler ADC.
- Selecciona Administración de tráfico > Equilibrio de carga > Grupos de servicios > Agregar.
- Introduce un nombre de grupo de servicios, cambia el protocolo a TCP y haz clic en Aceptar para guardar.
- En la sección Miembros del grupo de servicios, agrega todos los nodos de servidor StoreFront que definiste anteriormente en la sección Servidores y especifica el Puerto como 808.
- Agrega la sección Monitores.
- Haz clic donde dice Ningún grupo de servicios para vincular el monitor.
- Haz clic en Agregar. Introduce un Nombre de monitor y establece su Tipo en TCP. Haz clic en Crear.
- Haz clic en Vincular.

Crear un servidor virtual de equilibrio de carga para la sincronización de suscripciones
- Inicia sesión en la GUI de administración del dispositivo NetScaler ADC.
- Selecciona Administración de tráfico > Equilibrio de carga > Servidores virtuales > Agregar y agrega un nuevo grupo de servicios.
- Introduce un Nombre.
- Cambia el protocolo a TCP.
- Introduce una dirección IP.
-
Introduce un Puerto de 808.

- Haz clic en Aceptar.
- Haz clic en Ningún enlace de grupo de servicios de servidor virtual de equilibrio de carga, selecciona el grupo de servicios que creaste anteriormente y haz clic en Vincular.
- Agrega la sección Método y establece el Método de equilibrio de carga en ROUNDROBIN.
- Haz clic en Listo para completar tus cambios.
Configurar StoreFront para extraer datos de suscripción a través del equilibrador de carga
Consulta Configurar la sincronización de suscripciones.
Al configurar la programación de replicación, especifica una dirección de grupo de servidores que coincida con la dirección IP del equilibrador de carga virtual del servidor virtual de sincronización de suscripciones.