Compartir a través de


Directrices de ajuste de tamaño de máquina virtual del host de sesión para Azure Virtual Desktop y Servicios de Escritorio remoto

El ajuste de tamaño del host de sesión para Azure Virtual Desktop y servicios de Escritorio remoto requiere una consideración cuidadosa de los tipos de carga de trabajo y las configuraciones de hardware. Los distintos tipos de cargas de trabajo requieren configuraciones de hardware diferentes para garantizar un rendimiento óptimo.

Hay dos tipos de hosts de sesión a considerar al dimensionarlos adecuadamente para los usuarios.

  • Sesión única: dedicada a un solo usuario a la vez.

  • Multisesión: compartido entre varios usuarios simultáneamente.

En un entorno en el que se accede a escritorios y aplicaciones de forma remota, la ejecución y el procesamiento de datos se producen en el host de sesión, a menos que las aplicaciones admitan la descarga local. Es importante dimensionar correctamente tanto cada host de sesión como el número de hosts de sesión, para no quedarse sin recursos durante las cargas máximas, lo que provocaría interrupciones a los usuarios.

Los hosts de sesión se pueden ejecutar en máquinas virtuales o en hardware físico para Servicios de Escritorio Remoto. Las máquinas virtuales tienen cierta sobrecarga, por lo que debe tener en cuenta esto al dimensionar los hosts de sesión, lo cual se trata en este artículo.

Los ejemplos de este artículo son directrices genéricas y solo se deben usar en las estimaciones de rendimiento iniciales. Para obtener la mejor experiencia posible, escale la implementación en función de las necesidades de los usuarios.

Planeamiento de la capacidad

La capacidad y los recursos que necesita proporcionar son diferentes para todos, ya que depende de muchos factores de contribución. La planificación de la capacidad es el proceso de determinar los anfitriones de sesión y los recursos necesarios para cumplir con las demandas de carga de trabajo esperadas. Implica analizar las necesidades actuales y futuras de recursos, calcular el número de usuarios por host de sesión y determinar los tamaños adecuados para garantizar un rendimiento óptimo.

Al planear la capacidad de los hosts de sesión, tenga en cuenta las siguientes áreas:

Area Description
Carga de trabajo de usuario Comprenda los tipos de aplicaciones y tareas que realizan los usuarios. Las distintas cargas de trabajo tienen distintos requisitos de recursos, como CPU, memoria y almacenamiento.
Recuento de usuarios Calcule el número de usuarios simultáneos que acceden a los hosts de sesión. Esto ayuda a determinar los recursos necesarios para admitir la carga esperada del usuario.
Requisitos de recursos Analice los requisitos de recursos de las aplicaciones y las tareas que realizan los usuarios. Esto incluye CPU, memoria, almacenamiento y ancho de banda de red.
Expectativas de rendimiento Defina las expectativas de rendimiento para los hosts de sesión, como el tiempo de respuesta, la hora de inicio de sesión, la hora de inicio de la aplicación y la experiencia general del usuario. Considere el rendimiento de inicio de sesión para las horas clave, como el inicio de un día laboral o el cambio, ya que pueden afectar al rendimiento en comparación con un estado estable.
Escalabilidad Tenga en cuenta la capacidad de escalar los hosts de sesión a medida que aumentan las demandas del usuario. Esto puede implicar agregar más hosts de sesión o cambiar el tamaño de los existentes para dar cabida a usuarios o cargas de trabajo adicionales.
Resistencia y redundancia Considere la posibilidad de implementar mecanismos de redundancia y conmutación por error para garantizar la alta disponibilidad y minimizar el tiempo de inactividad si hay errores de hardware o software.
Supervisión y optimización Implemente herramientas de supervisión para realizar un seguimiento del uso de recursos y las métricas de rendimiento. Use estos datos para optimizar los hosts de sesión y realizar ajustes continuos según sea necesario.

Los dos enfoques siguientes se suelen usar para determinar la capacidad de los anfitriones de sesión:

  • Enfoque piloto: implemente un único servidor de prueba y aumente gradualmente la carga al supervisar los comentarios del usuario y los indicadores de rendimiento del sistema, como cpu, paginación, disco y red. Este enfoque es confiable para implementaciones más pequeñas, pero podría requerir inversiones iniciales de hardware que podrían no cumplir los objetivos finales de implementación.

  • Enfoque de simulación: use herramientas de automatización para generar cargas de trabajo de usuario simuladas que imitan el comportamiento real del usuario. Normalmente, la simulación implica aumentar gradualmente el número de usuarios simulados a lo largo del tiempo y las métricas de rendimiento se recopilan en toda la prueba. El análisis ayuda a identificar el punto en el que el rendimiento se degrada más allá de los umbrales aceptables. Este enfoque es más adecuado para implementaciones más grandes en las que la determinación de capacidad precisa influye significativamente en las decisiones de compra.

La prueba piloto tiende a ser más rápida y rentable para las implementaciones más pequeñas, mientras que el enfoque de simulación podría ser más adecuado para implementaciones más grandes, donde determinar con precisión la capacidad del host de sesión puede influir significativamente en las decisiones de compra.

Cualquier enfoque que use, también debe tener en cuenta los tiempos clave para el inicio de sesión del usuario, como el inicio de un día laboral o un turno, lo que puede afectar al rendimiento en comparación con un estado estable y provocar tiempos de inicio de sesión largos. Un host de sesión podría ser capaz de admitir suficientes usuarios para un determinado escenario, pero es posible que no tenga la capacidad de atender a esos usuarios todos los usuarios que inician sesión simultáneamente. Planifique también un margen adicional para acomodar picos inesperados en la actividad del usuario o las demandas de recursos.

Se recomienda documentar el proceso de planeamiento de capacidad, incluidas las suposiciones, los cálculos y las decisiones tomadas. Comunique el plan a las partes interesadas para garantizar la alineación y la comprensión.

Factores clave que afectan a la capacidad y el rendimiento

Hay varios factores clave que afectan a la capacidad de los hosts de sesión. Comprender estos factores puede ayudarle a tomar decisiones fundamentadas sobre el dimensionamiento y el escalado de los hosts de sesión.

  • Escalado de la CPU

    • El número de núcleos de CPU afecta directamente al número de usuarios que se pueden admitir en una máquina virtual host de sesión.
    • Duplicar el número de núcleos de CPU no duplica necesariamente la capacidad de usuarios debido a los rendimientos decrecientes y la sobrecarga de sincronización. El factor de escalado es mayor cuando el número inicial de CPU es pequeño y disminuye a medida que el número de núcleos aumenta. Por ejemplo, el factor de escalado que va de 4 núcleos a 8 núcleos es mayor que el que va de 8 núcleos a 16 núcleos.
    • El factor de escalado suele oscilar entre 1,5 y 1,9, lo que significa que, para cada núcleo adicional, puede esperar un aumento proporcional de la capacidad del usuario, pero no uno lineal.
  • Impacto en la memoria:

    • La cantidad de memoria asignada a una máquina virtual de host de sesión afecta directamente al número de usuarios que puede admitir.
    • Cuando la memoria es el factor de limitación, agregar más memoria a capacidades inferiores puede mejorar significativamente el rendimiento. Por ejemplo, aumentar la memoria de 8 GB a 16 GB puede duplicar el número de usuarios que puede admitir.
  • Impacto en el inicio de sesión del usuario:

    • El inicio de sesión de usuario es una operación que consume mucha CPU y las altas tasas de inicio de sesión simultáneas pueden afectar significativamente al rendimiento del sistema.
    • Planee los patrones de inicio de sesión esperados, como el inicio de un día laboral a las 9:00, donde muchos usuarios inician sesión simultáneamente. De lo contrario, los usuarios podrían experimentar tiempos de inicio de sesión extendidos.
  • Sobrecarga de virtualización

    • La ejecución en máquinas virtuales puede implicar un costo de capacidad de entre un 15 y un 20% en comparación con el hardware dedicado, según las pruebas internas.
    • Un hipervisor presenta más latencia y sobrecarga de CPU, lo que puede dar lugar a que el tiempo de respuesta del usuario sea un 10% a 20% mayor que en un sistema sin virtualización.
  • Ventajas de Hyperthreading

    • Hyperthreading puede mejorar la capacidad del usuario al permitir que más subprocesos se ejecuten simultáneamente en cada núcleo, lo que hace un uso más eficaz de los recursos del procesador.
    • Las ventajas de hyperthreading varían en función de la carga de trabajo y del número de núcleos. Las cargas de trabajo que consumen menos CPU pueden beneficiarse de funcionalidades adicionales de procesamiento paralelo y lograr un mejor rendimiento a través de hyperthreading.
  • Rendimiento de red

    • La latencia de red, la pérdida de paquetes y la vibración pueden afectar a la experiencia del usuario, especialmente para las aplicaciones que requieren comunicación frecuente con servidores remotos o bases de datos. Cualquier combinación de alta latencia, pérdida de paquetes y vibración puede provocar tiempos de respuesta más lentos y un rendimiento degradado.
    • La reducción del RTT de red, la pérdida de paquetes y la vibración provocan tiempos de respuesta más rápidos y un mejor rendimiento general. Considere la posibilidad de usar conexiones de red de baja latencia para minimizar el impacto del rendimiento de la red en la experiencia del usuario.
  • Rendimiento del almacenamiento

    • El rendimiento del almacenamiento puede afectar a la experiencia del usuario, especialmente para las aplicaciones que requieren acceso frecuente al disco.
    • Use soluciones de almacenamiento de alto rendimiento, como ssd o unidades NVMe, para garantizar un acceso rápido a los datos y minimizar la latencia.
  • Requisitos de la unidad de procesamiento de gráficos (GPU)

    • Algunas cargas de trabajo, como aplicaciones que consumen muchos gráficos para la representación de vídeo, el diseño 3D y las simulaciones o los escritorios virtuales con pantallas de alta resolución, pueden requerir GPU dedicadas para garantizar un rendimiento óptimo.
    • Considere la posibilidad de usar hosts de sesión con funcionalidades de GPU si los usuarios ejecutan aplicaciones con uso intensivo de gráficos o requieren pantallas de alta resolución.

Todos estos factores pueden afectar al rendimiento general y a la capacidad de los servidores de sesión. La medición del retraso de entrada del usuario o el tiempo de respuesta de la sesión de un extremo a otro es una métrica clave que se debe tener en cuenta al evaluar el rendimiento de los usuarios. Esta métrica mide el tiempo necesario para que la entrada de un usuario se procese y refleje en la sesión, lo que proporciona una representación más precisa de la experiencia del usuario. Los usuarios suelen esperar un tiempo de respuesta de menos de 200 milisegundos para sus acciones y cualquier retraso más allá de eso puede provocar una experiencia de usuario degradada. Para obtener más información sobre cómo medir la experiencia del usuario, consulte Uso de contadores de rendimiento para diagnosticar problemas de rendimiento de aplicaciones en hosts de sesión de Escritorio remoto.

Carga de trabajo

Al dimensionar los hosts de sesión, es importante tener en cuenta el tipo de carga de trabajo que los usuarios ejecutan, ya que pueden diferir significativamente. Por ejemplo, los trabajadores de entrada de datos con carga ligera tienen un uso bajo de recursos que conduciría a una alta densidad de usuarios. Sin embargo, los trabajadores expertos que usan aplicaciones 3D intensivas consumen recursos más altos que provocarían una baja densidad de usuario con el mismo hardware.

Este es un ejemplo que clasifica las cargas de trabajo en cuatro tipos: ligero, medio, pesado y de energía. Cada tipo de carga de trabajo tiene diferentes requisitos de recursos y expectativas de usuario.

En la tabla siguiente se describe cada carga de trabajo. Los usuarios de ejemplo son los tipos de usuarios que pueden encontrar cada carga de trabajo más útil. Las aplicaciones de ejemplo son los tipos de aplicaciones que funcionan mejor para cada carga de trabajo.

Tipo de carga de trabajo Usuarios de ejemplo Aplicaciones de ejemplo
Ligero Usuarios que realizan tareas básicas de entrada de datos Aplicaciones de entrada de base de datos, interfaces de línea de comandos
Mediana Consultores e investigadores de mercado Aplicaciones de entrada de base de datos, interfaces de línea de comandos, Microsoft Word, páginas web estáticas
Intensivo Ingenieros de software, creadores de contenido Aplicaciones de entrada de base de datos, interfaces de línea de comandos, Microsoft Word, páginas web estáticas, Microsoft Outlook, Microsoft PowerPoint, páginas web dinámicas, desarrollo de software
Poder Diseñadores gráficos, creadores de modelos 3D, investigadores de aprendizaje automático Aplicaciones de entrada de base de datos, interfaces de línea de comandos, Microsoft Word, páginas web estáticas, Microsoft Outlook, Microsoft PowerPoint, páginas web dinámicas, edición de fotos y vídeos, diseño asistido por ordenador (CAD), fabricación asistida por ordenador (CAM)

Recomendaciones de dimensionamiento del host de sesión única

En un escenario de sesión única , solo un usuario inicia sesión en un host de sesión en cualquier momento. Por ejemplo, si usa grupos de hosts personales en Azure Virtual Desktop, usa un escenario de sesión única.

Estas recomendaciones de ajuste de tamaño para escenarios de sesión única se basan en máquinas virtuales de Azure. También puede usar estas cifras como punto de partida para los hosts de sesión física; considere su enfoque de planificación de capacidad para refinar estas recomendaciones para sus cargas de trabajo.

Se recomienda usar al menos dos núcleos de CPU físicos por máquina virtual, normalmente cuatro vCPU con hyper-threading. Si necesita recomendaciones de ajuste de tamaño de máquina virtual más específicas para escenarios de sesión única, pregunte a los proveedores de software específicos de la carga de trabajo. El ajuste de tamaño de la máquina virtual para los hosts de sesión única normalmente se alinea con las directrices del dispositivo físico.

En la tabla siguiente se muestran ejemplos de cargas de trabajo típicas:

Tipo de carga de trabajo Almacenamiento mínimo de vCPU/RAM/OS Instancias de Azure de ejemplo Mínimo de almacenamiento para contenedores de perfiles
Ligero 2 vCPU, 8 GB de RAM, almacenamiento de 32 GB D2s_v5, D2s_v4 30 GB
Mediana 4 vCPU, 16 GB de RAM, almacenamiento de 32 GB D4s_v5, D4s_v4 30 GB
Intensivo 8 vCPU, 32 GB de RAM, almacenamiento de 32 GB D8s_v5, D8s_v4 30 GB

Recomendaciones de ajuste de tamaño del host de sesión múltiple

En un escenario de varias sesiones , más de un usuario ha iniciado sesión en una máquina virtual host de sesión en un momento dado. Por ejemplo, al usar grupos de hosts agrupados en Azure Virtual Desktop con el sistema operativo (SO) de sesión múltiple Windows 11 Enterprise es una implementación de sesión múltiple.

Un entorno informático de varias sesiones experimenta cargas máximas significativamente mayores en comparación con los entornos de sesión única. Un host de sesión con una capacidad de hardware específica tiene un límite máximo de cargas de trabajo que puede admitir antes de que se agoten sus recursos.

Estas recomendaciones de ajuste de tamaño para escenarios de varias sesiones se basan en máquinas virtuales de Azure. También puede usar estas cifras como punto de partida para los hosts de sesión física; considere su enfoque de planificación de capacidad para refinar estas recomendaciones para sus cargas de trabajo.

En la tabla siguiente se muestra el número máximo sugerido de usuarios por unidad de procesamiento central virtual (vCPU) y la configuración mínima de máquina virtual para una carga de trabajo de usuario estándar o mayor. Si necesita recomendaciones de ajuste de tamaño de máquina virtual más específicas para escenarios de sesión única, pregunte a los proveedores de software específicos de la carga de trabajo.

Tipo de carga de trabajo Número máximo de usuarios por vCPU Almacenamiento mínimo de vCPU/RAM/OS Instancias de Azure de ejemplo Almacenamiento mínimo de perfiles
Ligero 6 8 vCPU, 16 GB de RAM, almacenamiento de 32 GB D8s_v5, D8s_v4, F8s_v2, D8as_v4, D16s_v5, D16s_v4, F16s_v2, D16as_v4 30 GB
Mediana 4 8 vCPU, 16 GB de RAM, almacenamiento de 32 GB D8s_v5, D8s_v4, F8s_v2, D8as_v4, D16s_v5, D16s_v4, F16s_v2, D16as_v4 30 GB
Intensivo 2 8 vCPU, 16 GB de RAM, almacenamiento de 32 GB D8s_v5, D8s_v4, F8s_v2, D8as_v4, D16s_v5, D16s_v4, F16s_v2, D16as_v4 30 GB
Poder 1 6 vCPU, 56 GB de RAM, almacenamiento de 340 GB D16ds_v5, D16s_v4, D16as_v4, NV6, NV16as_v4 30 GB

En el caso de las cargas de trabajo de varias sesiones, debe limitar el tamaño de la máquina virtual a entre 4 vCPU y 24 vCPU por los siguientes motivos:

  • Todas las máquinas virtuales deben tener más de dos núcleos. Los componentes de interfaz de usuario de Windows dependen del uso de al menos dos subprocesos paralelos para algunas de las operaciones de representación más pesadas. En escenarios de varias sesiones, tener varios usuarios en una máquina virtual de dos núcleos conduce a que la interfaz de usuario y las aplicaciones se vuelvan inestables, lo que reduce la calidad de la experiencia del usuario. Cuatro núcleos son el número más bajo recomendado de núcleos que debe tener una máquina virtual multisesión estable.

  • Las máquinas virtuales no deben tener más de 32 núcleos. A medida que aumenta el número de núcleos, también aumenta la sobrecarga de sincronización del sistema. Para la mayoría de las cargas de trabajo, en torno a 16 núcleos, la rentabilidad de la inversión se reduce, ya que la mayor parte de la capacidad adicional es compensada por la sobrecarga de sincronización. La experiencia del usuario es mejor con dos máquinas virtuales de 16 núcleos en lugar de una máquina virtual de 32 núcleos.

El intervalo recomendado entre 4 y 24 núcleos generalmente proporciona mejores rendimientos de capacidad para los usuarios a medida que aumenta el número de núcleos. Por ejemplo, si tiene 12 usuarios que inician sesión al mismo tiempo en una máquina virtual que tiene cuatro núcleos, la relación es de tres usuarios por núcleo. En una máquina virtual con 8 núcleos y 14 usuarios, la proporción es de 1,75 usuarios por núcleo. En este escenario, esta última configuración con una relación de 1,75 ofrece una mayor capacidad de ráfaga para las aplicaciones que tienen demanda de CPU a corto plazo.

Esta recomendación es verdadera a mayor escala. En escenarios con 20 o más usuarios conectados a una sola máquina virtual, varias máquinas virtuales más pequeñas funcionarían mejor que una o dos máquinas virtuales grandes. Por ejemplo, si espera que 30 o más usuarios inicien sesión en un plazo de 10 minutos entre sí en el mismo host de sesión con 16 núcleos, dos máquinas virtuales de 8 núcleos controlarían mejor la carga de trabajo. También puede usar el equilibrio de carga basado en amplitud para distribuir uniformemente a los usuarios entre diferentes máquinas virtuales, en lugar del equilibrio de carga basado en profundidad, donde solo puede usar un nuevo host de sesión una vez que el host actual esté lleno de usuarios.

También es mejor usar un gran número de máquinas virtuales más pequeñas en lugar de algunas máquinas virtuales grandes. Es más fácil apagar las máquinas virtuales que deben actualizarse o que no están actualmente en uso. Con máquinas virtuales más grandes, es más probable que tenga al menos un usuario que haya iniciado sesión en un momento dado, lo que impide que se apague la máquina virtual. Cuando tiene muchas máquinas virtuales más pequeñas, es más probable que tenga algunas máquinas virtuales sin usuarios activos. Puede apagar estas máquinas virtuales sin usar de forma segura para conservar los recursos, ya sea manual o automáticamente mediante el escalado automático en Azure Virtual Desktop. La conservación de recursos hace que la implementación sea más resistente, más fácil de mantener y menos costosa.