Equilibrio de carga con NetScaler® ADC
Este artículo proporciona orientación sobre cómo implementar un grupo de servidores de StoreFront que contenga dos o más servidores de 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 exploradores web entre los servidores de StoreFront del grupo de servidores.
Crear registros DNS para el equilibrador de carga del grupo de servidores de StoreFront
Cree un registro DNS A y PTR para el FQDN compartido elegido. Los clientes de su red utilizan este FQDN para acceder al grupo de servidores de 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 de StoreFront
Todos los servidores de StoreFront entre los que desea equilibrar la carga deben configurarse como parte de un grupo de servidores de StoreFront que sincronice la configuración entre los servidores 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, consulte 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 de StoreFront esté cifrada. Consulte Proteger StoreFront con HTTPS. El certificado debe contener el FQDN con equilibrio de carga como nombre común (CN) o como nombre alternativo del sujeto (SAN).
Establezca 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, haga clic con el botón derecho en Grupo de servidores y haga clic en Cambiar URL base. Introduzca 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 de StoreFront.
De forma predeterminada, el monitor utiliza HTTP en el puerto 8000. Opcionalmente, puede cambiarlo para que utilice HTTPS en el puerto 443.
-
Abra el entorno de scripting integrado (ISE) de PowerShell en el servidor principal de StoreFront y ejecute 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, propague los cambios a todos los demás servidores del grupo de servidores de StoreFront.
-
Para realizar una prueba rápida en el monitor, introduzca la siguiente URL en el explorador del servidor de StoreFront o en cualquier otra máquina con acceso de red al servidor de StoreFront. El explorador 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 el certificado raíz
Si sus servidores de StoreFront utilizan un certificado firmado por una autoridad interna, debe instalar el certificado raíz en el NetScaler. Esto es necesario para que NetScaler confíe en el certificado del servidor de StoreFront.
- Inicie sesión en la GUI de administración del dispositivo NetScaler ADC.
- Seleccione Traffic Management > SSL > Certificates > CA Certificates.
- Haga clic en Install.
- En la página Install CA Certificate, introduzca un nombre de par de certificados y claves, haga clic en Choose File y busque el archivo de certificado.
- Haga clic en Install.
Instalar el certificado del servidor
Para habilitar HTTPS, necesita un certificado cuyo nombre alternativo del sujeto incluya el FQDN del equilibrador de carga. Puede firmar el certificado con una autoridad de certificación empresarial o pública.
Debe tener archivos de certificado y clave separados en formato PEM. Si tiene un certificado que contiene la clave privada en formato PKCS12, puede 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:
- Inicie sesión en la GUI de administración del dispositivo NetScaler ADC.
- Seleccione Traffic Management > SSL > Certificates > CA Certificates.
- Haga clic en Install.
- En la página Install CA Certificate:
- Introduzca un Certificate-Key Pair Name.
- En Certificate File Name, haga clic en Choose File y busque el archivo de certificado.
- En Key File Name, haga clic en Choose File y busque el archivo de clave.
- En Password, introduzca la frase de contraseña.
- Haga clic en Install.
- Haga clic en Link para vincular el certificado al certificado raíz.

Agregar nodos de servidor de StoreFront individuales al equilibrador de carga del dispositivo NetScaler ADC
-
Vaya a Traffic Management > Load Balancing > Servers. Haga clic en Add y agregue cada uno de los servidores de StoreFront para equilibrar la carga.
Ejemplo = 2 servidores de StoreFront llamados StoreFront-eu-1 y StoreFront-eu-2
-
Utilice la configuración de servidor basada en IP e introduzca 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 del grupo de servidores
- Inicie sesión en la GUI de administración de NetScaler ADC.
- Seleccione Traffic Management > Load Balancing > Monitors > Add y agregue un nuevo monitor llamado StoreFront y acepte todas las configuraciones predeterminadas.
- En el menú desplegable Type, seleccione StoreFront.
- Si ha configurado su monitor de StoreFront para HTTPS, asegúrese de que la opción Secure esté seleccionada. De lo contrario, deje esta opción sin seleccionar e introduzca un puerto de 8000.
- Seleccione la opción Check Backend Services. Esta opción permite la supervisión de los servicios que se ejecutan en el servidor de StoreFront. Los servicios de StoreFront se supervisan mediante el sondeo de un servicio de Windows que se ejecuta en el servidor de 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 de StoreFront
-
Vaya a Traffic Management > Load Balancing > Service Groups. Pulse Add. Para conectarse a los servidores de StoreFront a través de HTTPS, seleccione un protocolo SSL. Deje las demás configuraciones como predeterminadas. Pulse OK.
-
Dentro de su grupo de servicios, en Service Group Members, haga clic en No Service Group Member.
- Haga clic en Service Based.
- Seleccione todos los servidores que definió anteriormente.
- Para usar SSL entre el equilibrador de carga y el servidor de StoreFront, introduzca el puerto 443. De lo contrario, introduzca el puerto 80.

-
Agregue la sección Monitors y seleccione el monitor de StoreFront que creó anteriormente.

-
Agregue la sección Certificates.
- Vincule el certificado de cliente.
- Vincule el certificado de CA utilizado para firmar el certificado del servidor que importó anteriormente, y cualquier otra CA que pueda formar parte de la cadena de confianza PKI.

-
Agregue la sección Settings. Seleccione Insert Client IP Header e introduzca un nombre de encabezado de X-Forwarded-For. Esto permite que la dirección IP del cliente se utilice en las directivas de Citrix Virtual Apps and Desktops.
Crear un servidor virtual de equilibrio de carga para el tráfico de usuarios
-
Inicie sesión en la GUI de administración del dispositivo NetScaler ADC.
-
Seleccione Traffic Management > Load Balancing > Virtual Servers > Add para crear un nuevo servidor virtual.
-
Introduzca un nombre, elija un protocolo SSL e introduzca el Port. Haga clic en OK para crear el servidor virtual.

-
Vincule el Service Group que creó anteriormente al servidor virtual de equilibrio de carga.
-
Vincule el mismo certificado de servidor y CA que vinculó anteriormente al grupo de servicios.
-
Agregue la sección Method y seleccione el método de equilibrio de carga. Las opciones comunes para el equilibrio de carga de StoreFront son round robin o least connection.

-
Agregue la sección Persistance.
-
Establezca el método de persistencia en COOKIEINSERT.
-
Establezca 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.
-
Asigne un nombre a la cookie. Por ejemplo, NSC_SFPersistence, ya que esto facilita su identificación durante la depuración.
-
Establezca la persistencia de respaldo en NONE.
Nota:
Si el cliente no tiene permitido almacenar la cookie HTTP, las solicitudes posteriores no tendrán la cookie HTTP y no se utilizará la persistencia.
-

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 da como resultado un rendimiento deficiente y un comportamiento inesperado. Utilice la configuración de StoreFront Habilitar la comunicación de bucle invertido para evitarlo. De forma predeterminada, esto se establece en On, 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 sin terminación 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 tiene una implementación multisitio que consta de dos o más grupos de servidores de StoreFront, puede 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 utiliza 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, cree un segundo servidor virtual en cada dispositivo NetScaler ADC de su implementación para equilibrar la carga del puerto TCP 808 para cada uno de los grupos de servidores de StoreFront.
Configurar un grupo de servicios para la sincronización de suscripciones
- Inicie sesión en la GUI de administración del dispositivo NetScaler ADC.
- Seleccione Traffic Management > Load Balancing > Service Groups > Add.
- Introduzca un nombre de grupo de servicios, cambie el protocolo a TCP y haga clic en OK para guardar.
- En la sección Service Group Members, agregue todos los nodos de servidor de StoreFront que definió anteriormente en la sección Servidores y especifique el Port en 808.
- Agregue la sección Monitors.
- Haga clic donde dice No Service Group to monitor Binding.
- Haga clic en Add. Introduzca un Name de monitor y establezca su Type en TCP. Haga clic en Create.
- Haga clic en Bind.

Crear un servidor virtual de equilibrio de carga para la sincronización de suscripciones
- Inicie sesión en la GUI de administración del dispositivo NetScaler ADC.
- Seleccione Traffic Management> Load Balancing > Virtual Servers > Add y agregue un nuevo grupo de servicios.
- Introduzca un Name.
- Cambie el protocolo a TCP.
- Introduzca una dirección IP.
-
Introduzca un Port de 808.

- Haga clic en OK.
- Haga clic en No Load Balancing Virtual Server ServiceGroup Binding, seleccione el grupo de servicios que creó anteriormente y haga clic en Bind.
- Agregue la sección Method y establezca el Load Balancing Method en ROUNDROBIN.
- Haga clic en Done para completar los cambios.
Configurar StoreFront para extraer datos de suscripción a través del equilibrador de carga
Consulte Configurar la sincronización de suscripciones.
Al configurar el programa de replicación, especifique 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.