Diseñar la agregación de varios sitios de StoreFront

Una funcionalidad básica de StoreFront es la capacidad de agregar y desduplicar recursos de aplicaciones y escritorios “comunes” de varios sitios de Citrix Virtual Apps and Desktops (CVAD). Esta funcionalidad se conoce comúnmente como agregación de varios sitios. Las aplicaciones y escritorios duplicados se identifican en función de la coincidencia de propiedades Application Display Name y Application Category. Esta funcionalidad ha estado disponible en la consola a partir de la versión 3.5 y anteriormente era una edición de archivo de configuración. El propósito de la agregación de varios sitios es permitir a los administradores de Citrix crear sitios CVAD redundantes (por razones de escalabilidad o dominio de error), pero presentar un único icono de aplicación o escritorio a los usuarios en lugar de duplicados por sitio (como se mostraría sin esta función). A continuación, StoreFront controla cómo se distribuyen los inicios de aplicaciones y escritorios en los distintos sitios que admiten ese recurso.

En este artículo se revisa cómo se pueden implementar esas configuraciones en un entorno empresarial y cómo se integran con otras configuraciones relacionadas, como palabras clave de aplicación y suscripciones, para controlar aún más cómo se redirigen las sesiones de usuario y se presentan los recursos.

Información general

La configuración de la configuración de varios sitios se realiza a través del asistente “Administrar Delivery Controllers” en la consola de StoreFront, con varias configuraciones detalladas en la documentación del producto. Si hay más de un sitio configurado para el almacén, el botón Configurar en “Asignación de usuarios y configuración de agregación de sitios múltiples” se activa como se muestra a continuación.

Opciones de configuración

Una vez seleccionado, se solicita al administrador que configure las asignaciones de usuario y la agregación de recursos, como se muestra a continuación. El enlace “Asignar usuarios a controladores” solicita al administrador que configure un grupo de usuarios al que se van a aplicar estas opciones. El enlace “Recursos agregados” es donde se especifica la configuración real de agregación de varios sitios.

Asignación de usuarios y agregación de recursos

No se puede configurar la agregación de varios sitios hasta que se haya definido al menos un grupo de usuarios para aplicar la configuración. El grupo integrado “Todos” se puede utilizar si se va a aplicar un solo conjunto de configuraciones de agregación a todos los usuarios que se conecten a la Almacén. Una vez configurada esta configuración, si un usuario no es miembro de uno de los grupos especificados aquí, no se enumeran aplicaciones ni escritorios para ese usuario. En las dos secciones siguientes se revisan detalladamente las configuraciones disponibles, comenzando por las opciones “Agregado de recursos”.

Opciones de agregación

En la sección Agregar recursos, se presenta a un administrador todos los sitios enumerados y se les pide que seleccione los que tienen recursos superpuestos y se agregan, como se muestra a continuación.

Configuración de recursos agregados

Para los sitios agregados, hay dos configuraciones más que controlan cómo se enumeran los recursos y se inician las sesiones en esos sitios. Esta configuración se aplica a todos los sitios marcados para la agregación:

  • Los controladores publican recursos idénticos: esta configuración controla la enumeración. Si dos sitios están marcados como “idénticos”, StoreFront coloca las comunidades en el mismo “conjunto de servidores equivalente”, lo que significa que las solicitudes de enumeración se equilibran la carga (round robin) en todos los Sitios, ya que se supone que los conjuntos de recursos son equivalentes, ahorrando tiempo de enumeración. Si los dos sitios no están marcados como “idénticos”, StoreFront envía una solicitud de enumeración XML a todos y desduplicará la aplicación común y los escritorios de los conjuntos de recursos resultantes.
  • Recursos de equilibrio de carga entre los controladores: Esta configuración controla el inicio de la sesión. Las solicitudes de lanzamiento se equilibran la carga entre los Sitios o se distribuyen en orden de conmutación por error, independientemente de si los Sitios son “idénticos” o no. El uso compartido de sesiones tiene prioridad sobre una decisión de equilibrio de carga. Por lo tanto, si un usuario ya tiene una sesión en el sitio B e inicia otras aplicaciones o escritorio, esa sesión también se iniciará en el sitio B (suponiendo que la aplicación o el escritorio estén disponibles allí).

Algunos casos de uso que no se manejan bien a través de la GUI son combinaciones de equilibrio de carga y conmutación por error o combinaciones de sitios idénticos y no idénticos. Por ejemplo, si hay dos sitios de producción que deben equilibrarse la carga y un sitio de DR que solo se utiliza si ambos sitios de producción están inactivados, no se puede utilizar la GUI y el archivo web.config debe modificarse manualmente (consulte Documentos de Citrix para ver el formato adecuado para este archivo).

Conclusiones sobre el diseño

Para resumir la sección anterior:

  • Solo uno de los sitios “idénticos” se utiliza para enumerar aplicaciones y escritorios cuando los Sitios se agregan a través de StoreFront
  • Los inicios de sesión pueden equilibrarse la carga o fallarse en los sitios agregados

Asignación de conjuntos de usuarios

La configuración de “Asignar usuarios a controladores” se conoce comúnmente como “Asignación de comunidad de usuarios”, ya que se utilizan para controlar qué sitios un determinado grupo de usuarios puede enumerar, independientemente de si esos sitios están agregados o no. Hay dos casos de uso principales para esta funcionalidad:

  1. Limitar enumeración: incluso sin la agregación de varios sitios, asignar un grupo de usuarios en StoreFront a un subconjunto de sitios significa que StoreFront solo enviará solicitudes de enumeración XML a esos sitios cuando un usuario de ese grupo se autentique. En una implementación global, esta situación puede tener un impacto significativo en el tiempo de enumeración, ya que impide que StoreFront intente comunicarse con sitios a los que un usuario determinado no necesita tener acceso de todos modos. Por ejemplo, esta configuración se puede utilizar para asignar usuarios de Estados Unidos a sitios CVAD basados en Estados Unidos de manera que StoreFront no pueda llegar a otros sitios dispersos globalmente cuando esos usuarios inician sesión.
  2. Asignación de configuración de agregación: si se configura la agregación de varios sitios, puede ser conveniente asignar diferentes configuraciones a diferentes grupos de usuarios, como configuraciones de conmutación por error diferentes o combinaciones diferentes de sitios.

La opción “Asignar usuarios a controladores” pide primero a los administradores que especifiquen un grupo de usuarios y, a continuación, los sitios a los que está asignado el grupo de usuarios (aunque el cuadro de diálogo dice “Controllers”, es Sitios tal como se define para la Almacén). Hay una columna que indica si los sitios seleccionados se han configurado previamente para la agregación o no, como se muestra a continuación. Además, si los sitios agregados se configuraron para la conmutación por error (“Recursos de equilibrio de carga entre controladores” se ha borrado), el orden de los Sitios se puede especificar aquí a través de las flechas de la derecha.

Configuración de asignación de usuarios

Es posible que un usuario forme parte de varias asignaciones de grupos de usuarios. Cuando StoreFront lee la lista de grupos de usuarios configurados, no detiene el procesamiento después de encontrar una coincidencia para un usuario. Se procesan todos los grupos configurados y se enumeran todos los sitios devueltos. Este caso se puede esperar en el caso de los administradores de Citrix, que normalmente tienen acceso a todas las aplicaciones y escritorios y son miembros de varios grupos de usuarios para poder probar y reproducir los problemas de usuario notificados. Esto solo significa que los administradores (u otros usuarios que son miembros de varios grupos) pueden experimentar un comportamiento de lanzamiento diferente que los usuarios de uno de los grupos porque tienen varias configuraciones aplicadas a ellos. En cuanto a la configuración, la única consideración es si dos grupos de usuarios tienen acceso al mismo conjunto de Sitios con diferentes configuraciones de agregación. En el contexto de un usuario individual, un sitio solo puede pertenecer a un grupo de agregación o se mostrará un error. Esto se resuelve asignando el mismo nombre a los grupos de agregación entre las dos asignaciones de grupos de usuarios, que se realiza de forma predeterminada a través de la GUI, pero puede ser una consideración si el archivo web.config se está modificando manualmente para un conjunto más avanzado de configuraciones como se hacía referencia anteriormente.

Conclusiones sobre el diseño

Para resumir la sección anterior:

  • La asignación de grupos de usuarios a sitios, incluso sin la agregación configurada, se puede utilizar para ayudar a limitar el tráfico de enumeración y, por lo tanto, reducir el tiempo de finalización de este proceso
  • El orden de conmutación por error para sitios agregados se especifica en el asistente de asignación de grupos de usuarios
  • Cuando se configuran varias asignaciones de grupos de usuarios que contienen algunos de los mismos sitios agregados y los usuarios pertenecen a varios grupos, los grupos de agregación deben tener el mismo nombre

Palabras clave de la aplicación

Otra forma de controlar la visualización y el lanzamiento de recursos es mediante el uso de palabras clave en el campo de descripción de la aplicación. En la configuración del almacén, la visualización se puede filtrar en función de palabras clave personalizadas, como se documenta en el artículo CTX223451. También hay algunas palabras clave especiales predefinidas que tienen funciones únicas. Dos de ellas son “primarias” y “secundarias”, que influyen en el lanzamiento de sesiones en varios sitios. Cuando hay dos instancias de la misma aplicación publicadas, la que tenga la palabra clave “primaria” especificada siempre será preferida sobre la que tenga la palabra clave “secundario”. Esta configuración anula cualquier configuración de agregación de sitios cubierta en las secciones anteriores, lo que significa que estos valores se utilizan con frecuencia juntos.

Por ejemplo, con dos sitios CVAD, el sitio A y el sitio B, casi todas las aplicaciones deben lanzarse fuera del sitio A (basadas en la arquitectura de aplicaciones back-end) y realizar una falla en el sitio B, pero hay un par de aplicaciones que están alojadas principalmente fuera del sitio B. La agregación multisitio se configuraría para todos los usuarios en orden de conmutación por error con el sitio A en la lista primero. Las aplicaciones excepcionales que se alojan principalmente fuera del Sitio B se configurarían con la palabra clave principal en el Sitio B y secundaria en el Sitio A.

Conclusiones sobre el diseño

Para resumir la sección anterior:

• Las palabras clave “primaria” y “secundaria” se pueden utilizar para controlar aún más el lanzamiento de aplicaciones en varios sitios y tendrán prioridad sobre la configuración de agregación de sitios

Suscripciones

Las suscripciones en StoreFront son la forma en que los usuarios pueden utilizar aplicaciones “favoritas” y se almacenan en una base de datos local en cada servidor StoreFront, replicada automáticamente en un grupo de servidores. De forma predeterminada, los registros de suscripción se almacenan en el formato <SiteName>.<DisplayName>. Esto se debe a que StoreFront enumerará de forma predeterminada los recursos de todos los sitios CVAD y los mostrará individualmente. Si se publican dos recursos con el mismo nombre en sitios diferentes, las suscripciones a ellos se realizan un seguimiento individual. Por lo tanto, necesitamos algún tipo de etiqueta del sitio para diferenciar esas suscripciones.

Esto cambia con la agregación de sitios donde los recursos idénticos de los sitios no se muestran ni se realizan un seguimiento individual, sino que se agregan detrás del mismo acceso directo de suscripción. La etiqueta de sitio ya no tiene sentido porque un único registro de suscripción debe cubrir el mismo recurso de varios sitios. Por lo tanto, cuando se configura la agregación de sitios, los registros de suscripción de los recursos agregados se almacenan en el formato <AggregationGroup>.<DisplayPath>\<DisplayName>.

Esto significa que si la agregación de varios sitios de StoreFront se configura después de que los sitios estuvieran disponibles previamente de forma individual (con suscripciones habilitadas), las suscripciones de usuario para los nuevos recursos agregados desaparecerán debido al cambio en el formato de registro de suscripción. El registro de suscripción anterior ya no es válido, ya que la aplicación ya no está vinculada a un sitio, sino a un grupo de agregación. Una solución alternativa para esto es exportar la base de datos de suscripción a través de PowerShell, reemplazar todos los registros de los recursos que se agregarán con el formato adecuado y volver a importar la base de datos de suscripción después de la configuración de la agregación de sitios. De lo contrario, los usuarios tienen que volver a suscribirse a sus aplicaciones.

Conclusiones sobre el diseño

Para resumir las secciones anteriores:

  • La agregación de sitios múltiples cambia el formato de las suscripciones de usuarios en la base de datos de suscripciones, que debe tenerse en cuenta si la agregación se implementa después de la puesta en marcha

Referencias

Documentación del producto: Configuración de varios sitios de StoreFront

Uso de palabras clave de StoreFront

Diseñar la agregación de varios sitios de StoreFront