Decisión de diseño: la escalabilidad y la economía de la entrega de Citrix DaaS en Azure

El objetivo de este documento es proporcionar orientación a las empresas que están avanzando hacia la implementación de escritorios como servicio (DaaS) de Citrix en la nube de Microsoft Azure.

Para brindar el mejor asesoramiento posible a nuestros clientes, decidimos determinar la respuesta a cuatro preguntas clave que afectan las decisiones de arquitectura y diseño de Citrix:

  1. ¿Cuál es la serie de instancias más eficiente para alojar DaaS?
  2. ¿Cuál es el tipo de instancia más rentable en la familia más eficiente
  3. ¿Qué impacto tiene la caché de E/S (MCSIO) de Machine Creation Services?
  4. ¿Cómo se compara la escalabilidad multisesión Windows 10 con el SO de servidor Windows?

Citrix dispone de un artículo más detallado en el que se detallan los detalles de la metodología de prueba y los resultados de rendimiento capturados durante la evaluación.
Este documento se centra en los resultados de alto nivel y proporciona orientación sobre cómo diseñar una implementación eficiente de Citrix en la nube de Microsoft Azure.

Para determinar el rendimiento, utilizamos LoginVSI 4.1.32.1, que crea sesiones simuladas en un único servidor Citrix. Las dos cargas de trabajo que utilizamos para las pruebas se describen de la siguiente manera:

  • Carga de trabajo de los trabajadores de tareas: incluye segmentos con aplicaciones de Microsoft Office, Internet Explorer, Adobe Acrobat y PDF Writer. La carga de trabajo del trabajador de tareas no exige mucho al entorno y representa a los usuarios que no utilizan mucho el sistema.
  • Carga de trabajo de Knowledge Worker: incluye segmentos con aplicaciones de Microsoft Office, Adobe Acrobat y otras aplicaciones específicas, incluida la visualización de películas en 360p. La carga de trabajo de Knowledge Worker exige más al entorno, lo que incluye un mayor uso de la memoria disponible, y representa a los usuarios que utilizan más el sistema.

El número de usuarios que completan correctamente la prueba multisesión proporciona un indicador clave de rendimiento en condiciones reales. Este valor, denominado recuento de sesiones de VSImax, se utiliza para el análisis comparativo. Las cargas de trabajo VSI de inicio de sesión calculan el recuento de sesiones de VSImax observando el tiempo de respuesta de un solo usuario en el sistema.
Se alcanza VSImax cuando el tiempo de respuesta ha disminuido significativamente por debajo del umbral esperado derivado del valor de referencia tomado con un solo usuario en el sistema.

Para proporcionar cifras conservadoras que puedan replicarse de forma coherente sin conocimientos especializados, todos los resultados reflejan la ejecución de las pruebas mediante políticas Citrix predeterminadas y configuraciones predeterminadas no optimizadas para los productos de Windows y Office.
Tanto el rendimiento como la densidad se pueden mejorar mediante la aplicación de las herramientas de optimización de Citrix, como Citrix WEM y Citrix Optimizer .

¿Cuál es la serie de instancias más eficiente?

Para encontrar la serie de instancias más eficiente, necesitábamos probar las diferentes series de instancias sin cambiar ninguna otra variable de la mezcla. La imagen base era Windows Server 2016 con la versión 1903.1 de Citrix VDA y una unidad de disco duro estándar (HDD) de 128 GB para la unidad C: del sistema. Seleccionamos los tipos de instancia de 8 núcleos por dos razones principales:

1) Representan el caballo de batalla de los tipos de instancias de Azure para las sesiones alojadas y, por lo general, son el tamaño más popular implementado 2) Proporcionan un buen equilibrio de CPU/RAM y un impacto mínimo en el sistema operativo en comparación con un sistema de 2 núcleos más pequeño.

El siguiente gráfico muestra los resultados de la familia de instancias junto con el coste medio por usuario por hora basado en los precios de pago por uso para la región de Azure US-West-2 donde se realizaron las pruebas.

Rendimiento de 8 núcleos

Análisis

La mayoría de estos tipos de instancias utilizan el mismo procesador, Intel (R) Xeon (R) CPU E5-2673 v4 a 2,30 GHz. La diferencia principal es la cantidad de memoria disponible para la máquina virtual. Puede encontrar más información sobre estas diferentes series en el sitio web de Microsoft.

En términos generales, las instancias de 8 núcleos tienen un rendimiento bastante similar, especialmente si se tienen en cuenta los núcleos físicos (D13_v2, D4_v2, L8s) en comparación con los núcleos hipersubprocesos (F8s_v2, D8_v3, E8_v3). Sin embargo, cuando se considera el coste por hora de la instancia, las instancias D13_v2 y F8S_v2 proporcionan un uso más eficiente. Las series E_v3 y LS_v1 son menos rentables porque Microsoft cobra una prima superior para las instancias optimizadas para memoria y almacenamiento optimizadas. En situaciones en las que las aplicaciones de los usuarios consumen mucha memoria o almacenamiento, estas instancias suelen ofrecer un buen retorno de la inversión.

Recomendaciones

Si las aplicaciones de los usuarios típicos requieren un uso intensivo de la CPU y no requieren memoria significativa para ejecutarse, el rendimiento más rentable es la serie F. Seleccione la serie F cuando necesite excelentes tiempos de respuesta de CPU y no requiera una cantidad significativa de memoria. Si las aplicaciones de su usuario consumen una cantidad justa de memoria, utilice uno de los tipos de instancia D dependiendo de la cantidad de memoria adicional necesaria por núcleo para el entorno del usuario.

¿Cuál es el tipo de instancia más rentable en la familia más eficiente?

Cuando completamos la amplia prueba en todas las familias, esperábamos que una sola serie fuera un líder claro. Sin embargo, los resultados terminaron convenciéndonos de que las dos mejores familias de instancias para realizar pruebas adicionales eran la serie D y la serie F cuando se probaban con almacenamiento de disco duro estándar. El siguiente paso fue probar los tamaños específicos que oscilan entre 2 y 16 VCPU dentro de las familias D_v2 y FS_v2. Los resultados de estas pruebas:

Rendimiento de las series FS y D

Análisis

El gráfico de rendimiento muestra los resultados de las pruebas con las densidades más altas de 74 y 63 sesiones de usuario, para el trabajador de tareas y el trabajador del conocimiento, respectivamente, que se obtuvieron en el tipo de instancia D14_v2 (16 núcleos, 112 GB de RAM). Dado que los precios varían entre los tipos de instancia, una mayor densidad no implica necesariamente un menor coste por usuario.

El modelo de precios para las instancias de Azure varía según la región, el tipo de instancia y los recursos proporcionados. Los gráficos también incluyen la rentabilidad de cada tipo de instancia en función de las densidades de usuarios de VDA logradas en las pruebas de un solo servidor. Los costes reflejan los precios de pago por uso de EE.UU. Oeste 2 para las instancias de VM estándar a partir de septiembre de 2019 e incluyen el coste de las licencias de Microsoft Windows.

Como se muestra en el gráfico, el tipo de instancia D13_v2 muestra el costo más bajo por hora por usuario, de 0,018 USD para un trabajador de tareas, mientras que las F16s_v2 y F8s_v2 ocupan el segundo lugar con un costo de 0,019 USD. En cuanto al trabajador de conocimiento, tanto los tipos de instancia F16s_v2 como F8S_v2 comparten el mejor coste por hora de 0,025 USD, seguido de cerca del tipo de instancia D13_v2 en 0,026$.

Recomendaciones

En las pruebas, los resultados de densidad mostraron un claro beneficio de los procesadores más rápidos disponibles con las instancias de la serie FS v2 cuando se encuentran bajo la carga de trabajo más pesada del trabajador del conocimiento. Sin embargo, la relación de memoria a núcleo de FS v2 es menor que las relaciones de la serie D v2 y se recomienda utilizar las instancias de la serie FS v2 solo cuando el consumo de memoria para la carga de trabajo es bajo. Si los usuarios ejecutan aplicaciones que requieren un uso intensivo de memoria, la serie D_V2 es la mejor opción.

Cuando el coste por usuario es similar, como el caso de F8S_v2 y F16S_v2, seleccione los tamaños de instancia más pequeños, cuando exista cualquiera de las condiciones siguientes:

  • Necesidad de resiliencia: quiere afectar a menos usuarios durante las ventanas de mantenimiento
  • Necesidad de una administración eficiente de la energía: quiere apagar rápidamente las máquinas no utilizadas

Seleccione los tamaños de instancia más grandes cuando exista cualquiera de estas condiciones:

  • Necesidad de una administración reducida: quiere administrar menos máquinas en el entorno
  • Necesita llamadas API reducidas: necesita menos llamadas API a la infraestructura de Azure para las operaciones

¿Qué impacto tiene la caché de E/S de Machine Creation Services?

Los tipos de instancia utilizados para las pruebas se configuraron con almacenamiento estándar en lugar de almacenamiento SSD más costoso para la unidad del sistema en la máquina virtual. Debido a que los tipos de instancia con almacenamiento SSD tienen discos efímeros más pequeños donde se almacena el archivo de página, aunque los discos eran más rápidos, la escalabilidad fue menor porque la instancia no tenía suficiente espacio de archivo intercambiable disponible para admitir la necesidad de memoria virtual bajo una carga mayor.

En los tamaños de disco que estamos mediante, los discos HDD y SSD tienen un rendimiento IOPS similar (500). Si bien los discos SSD tienen un rendimiento más consistente, el coste adicional no siempre está justificado.

Luego decidimos considerar la caché de E/S (MCSIO) de Machine Creation Services como una forma de lograr un rendimiento similar al de un SSD con los discos estándar más grandes. Las pruebas se completaron con Citrix VDA versión 1903.1 y Windows Server 2016 en un tipo de instancia D5_v2 (16 vCPU, 56 GB de RAM). El gráfico muestra el aumento de la densidad de usuarios obtenido al habilitar la caché de MCSIO con la carga de Knowledge Worker.

Rendimiento MCSIO

Análisis

Cuando el disco del sistema operativo no tiene habilitada la caché MCSIO, la puntuación de usuario de VSImax fue 61 en un disco duro de 128 GB, 74 en un disco SSD de 64 GB y 75 en un disco SSD de 128 GB. Habilitar la caché MCSIO en un disco HDD estándar en realidad proporcionó un mejor rendimiento que un SSD, con una caché de 4 GB habilitada en el disco duro de 64 GB, la puntuación aumentó a 76 y con una caché de 2 GB la puntuación aumentó ligeramente más a 77. La pérdida del usuario adicional entre los tamaños de caché de 4 GB y 2 GB se atribuye a la RAM adicional que se utiliza para la caché y no está disponible para la carga de trabajo del usuario.

Si bien MCSIO contribuye a un menor coste por usuario por hora, ese número no es significativo por sí solo. El impacto real de MCSIO se puede descubrir al analizar la experiencia del usuario final.
El gráfico muestra la caída promedio del tiempo de respuesta cuando se usa MCSIO:

Respuesta de inicio de sesión de MC

Recomendaciones

Si la experiencia del usuario es un factor determinante al considerar el rendimiento, recomendamos habilitar la caché MCSIO. Cuando está habilitado, la recomendación es utilizar un disco estándar con la caché de 2 GB, ya que proporciona la mejor mejora sin afectar la densidad del usuario. Sin embargo, la caché de MCSIO no debe habilitarse en máquinas virtuales con limitaciones de memoria, como los tipos de instancia de las series F o FS que están optimizados para la computación pero que tienen una proporción baja de núcleos de memoria por CPU.

¿Cómo se compara la escalabilidad multisesión Windows 10 con el SO de servidor Windows?

Con el lanzamiento de los sistemas operativos Windows Server 2019 y Windows 10 multisesión, pensamos que sería mejor proporcionar alguna orientación acerca de cómo el sistema operativo cliente afectaría la escalabilidad. Tanto los sistemas operativos Windows Server 2019 como Windows 10 Multisesión requieren la versión 1906.1 de Citrix VDA más reciente. Windows 10 Multisession está disponible con los derechos de Azure Virtual Desktop (AVD) y otorga al arrendatario el precio base de la VM (precios de Linux). Esa autorización también amplía los precios de VM a Windows Server 2016 y Windows Server 2019.

El gráfico muestra los cambios de densidad en comparación con las mismas ejecuciones de prueba con Windows Server 2016 con la versión 1906.1 de Citrix VDA en la misma instancia D4_v2 (8 vCPU, 28 GB de RAM). Los precios utilizan los precios de las máquinas virtuales Linux, de acuerdo con los derechos de AVD requeridos:

Rendimiento del sistema operativo

Análisis

En comparación con los resultados de Windows Server 2016, Windows Server 2019 proporcionó una densidad de usuarios ligeramente menor tanto para el trabajador de conocimientos como para el trabajador de tareas, con una disminución del 7% para los trabajadores de tareas y una disminución del 12% para los trabajadores del conocimiento.

Al comparar Windows Server 2019 con la carga de trabajo multisesión de Windows 10 se tradujo en un 19% menos de trabajadores de tareas y un 32% menos de trabajadores de conocimientos. Esta disminución del rendimiento se espera porque Windows 10 es una versión completa de cliente y no está optimizado para la informática basada en servidor como Windows Server 2016 y Windows Server 2019.

Una ventaja económica del uso de Multisesión de Windows 10 es que no requiere licencias CAL de RDS para que los clientes se conecten a la máquina virtual. Esta ventaja de costo no se incluye en los cálculos, ya que es un costo de licencia de Microsoft además del costo de Azure por hora.

Recomendaciones

Cuando planee actualizar de Windows Server 2016 a Windows Server 2019, espere aumentar el número de máquinas virtuales en aproximadamente un 10%. Si planea utilizar Windows 10 Multisession para alojar aplicaciones que requieren compatibilidad con el cliente de Windows, tenga en cuenta que la densidad será menor, lo que dará como resultado aproximadamente un 30% de costes adicionales sobre los sistemas operativos del servidor. Sin embargo, la Multisesión de Windows 10 permite a los usuarios acceder a la Tienda Windows, algo que los sistemas operativos del servidor no tienen disponible.

Conclusión

El tipo de instancia de Azure que seleccione para implementar cargas de trabajo de aplicaciones virtuales de Citrix es un elemento crítico que determina la densidad y la escalabilidad del usuario y, a su vez, el coste por usuario de un modelo de entrega de Azure.
Como se muestra, los diferentes tipos de instancias de Azure tienen ventajas para cargas de trabajo específicas, como requisitos computacionales elevados o memoria adicional.
Normalmente, una instancia D13_v2 con discos HDD estándar y una caché MCSIO de 2 GB habilitada proporciona el mejor rendimiento del usuario al menor coste. Tenga en cuenta el sistema operativo Windows 10 Multisesión cuando necesite la Tienda Windows, compatibilidad de aplicaciones o una verdadera experiencia de cliente de Windows.

Los resultados de Citrix on Azure que se presentan aquí solo representan pautas para configurar su solución de Azure. Si no dispone de datos sobre las cargas de trabajo específicas de los usuarios, los números que proporcionamos aquí sirven como estimaciones de diseño. Antes de tomar decisiones finales sobre el tamaño y la implementación, le recomendamos encarecidamente que ejecute pruebas de concepto en diferentes tipos de instancias de Azure mediante sus propias cargas de trabajo y, a continuación, utilice esos datos para los diseños finales.

Obtenga más información

Para obtener más información sobre la implementación de cargas de trabajo de Citrix Virtual Apps en Microsoft Azure Cloud Services, consulte el sitio web de socios de Citrix y Microsoft en https://www.citrix.com/global-partners/microsoft/resources.html

Decisión de diseño: la escalabilidad y la economía de la entrega de Citrix DaaS en Azure