Primeros pasos con Autoscale™

Autoscale es una función que proporciona una solución de administración de energía coherente y de alto rendimiento para escalar proactivamente los grupos de entrega en función de una programación configurada o de las demandas de carga.

Autoscale se aplica a todos los tipos de grupos de entrega:

  • SO estático de sesión única
  • SO aleatorio de sesión única
  • SO aleatorio multisesión

Este artículo describe los conceptos básicos relacionados con Autoscale y proporciona orientación sobre cómo habilitar y configurar Autoscale para un grupo de entrega.

Conceptos básicos

Antes de empezar, aprenda los siguientes conceptos básicos de Autoscale:

Capacidad y registro de máquinas

Autoscale solo incluye las máquinas registradas en el sitio al determinar la capacidad. Las máquinas encendidas que no están registradas no pueden aceptar solicitudes de sesión. Como resultado, no se incluyen en la capacidad general del grupo de entrega.

Escalar en varios catálogos de máquinas

En algunos sitios, varios catálogos de máquinas pueden estar asociados a un único grupo de entrega. Autoscale enciende máquinas aleatoriamente de cada catálogo para satisfacer los requisitos de programación o demanda de sesiones.

Por ejemplo, un grupo de entrega tiene dos catálogos de máquinas: el Catálogo A tiene tres máquinas encendidas y el Catálogo B tiene una máquina encendida. Si Autoscale necesita encender una máquina adicional, podría encender una máquina del Catálogo A o del Catálogo B.

Aprovisionamiento de máquinas y demanda de sesiones

El catálogo de máquinas asociado al grupo de entrega debe tener suficientes máquinas para encenderse y apagarse a medida que la demanda aumenta y disminuye. Si la demanda de sesiones supera el número total de máquinas registradas en el grupo de entrega, Autoscale garantiza que todas las máquinas registradas estén encendidas. Sin embargo, Autoscale no aprovisiona máquinas adicionales.

Nota:

Si un grupo de entrega tiene 63 máquinas y se establece una capacidad de búfer del 10 % para las horas no laborables, entonces, según el cálculo de Autoscale, 6,3 máquinas deben encenderse durante las horas no laborables. Para manejar el valor decimal, las reglas son las siguientes:

  • Redondear al más cercano: Por ejemplo, si el valor es 6,4, se encienden 6 máquinas. Si el valor es 6,7, se encienden 7 máquinas.
  • Redondear a 1 para cualquier valor distinto de cero inferior a 1. Por ejemplo, si el valor es 0,2 o 0,9, se enciende 1 máquina.

Consideraciones sobre el tamaño de la instancia

Puede optimizar sus costes si dimensiona adecuadamente sus instancias en nubes públicas. Le recomendamos que aprovisione instancias más pequeñas siempre que coincidan con el rendimiento de su carga de trabajo y sus requisitos de capacidad.

Las instancias más pequeñas alojan menos sesiones de usuario que las instancias más grandes. Por lo tanto, Autoscale pone las máquinas en estado de vaciado más rápidamente porque se tarda menos tiempo en cerrar la sesión del último usuario. Como resultado, Autoscale apaga las instancias más pequeñas antes, lo que reduce los costes.

Programaciones

Autoscale enciende y apaga las máquinas de un grupo de entrega según una programación que usted establezca.

Una programación incluye el número de máquinas activas para cada franja horaria, con los horarios pico y no pico definidos.

La configuración de la programación varía según el tipo de grupo de entrega. Para obtener más información, consulte:

Horas punta y horas valle

Las horas punta y las horas valle se utilizan para indicar cuál de los valores de búfer de capacidad se debe usar para períodos específicos del día. Puede definir las horas punta, dejando las horas restantes no definidas como horas valle.

Retraso de apagado

El retraso de apagado es el número mínimo de minutos que deben transcurrir después de que una máquina se encienda antes de que Autoscale pueda apagarla. Esto evita que las máquinas se enciendan y apaguen constantemente durante demandas de sesión volátiles. De forma predeterminada, el retraso de apagado es de 30 minutos. Puede configurarlo en un rango de 0 a 60 minutos.

Tamaño del grupo

El tamaño del grupo es el número de máquinas que deben permanecer encendidas durante un período determinado del día.

Búfer de capacidad

El búfer de capacidad se utiliza para añadir capacidad de reserva a la demanda actual para tener en cuenta los aumentos dinámicos de carga. Hay dos escenarios a tener en cuenta:

  • Para los grupos de entrega de SO multisesión, el búfer de capacidad se define como un porcentaje de la capacidad total del grupo de entrega en términos de índice de carga.
  • Para los grupos de entrega de SO de sesión única, el búfer de capacidad se define como un porcentaje del número total de máquinas en el grupo de entrega.

El búfer de capacidad es un búfer móvil, dado que se calcula y aplica en función del uso actual, en lugar de calcularse y aplicarse sobre el tamaño de grupo configurado.

Por ejemplo, dado un grupo de entrega con 10 máquinas, un tamaño de grupo de 1 máquina para el período actual y un búfer de capacidad del 10%. Se enciende una máquina adicional cuando la máquina encendida, según lo definido por la programación, se carga hasta el punto en que el búfer de capacidad del 10% ya no se satisface. Si la carga se reduce después de encender la segunda máquina y hay más que suficiente capacidad de carga libre para satisfacer el búfer de capacidad del 10%, Autoscale prepara 1 máquina para el apagado.

Índice de carga

IMPORTANTE:

El índice de carga se aplica solo a los grupos de entrega multisesión.

La métrica del índice de carga determina la probabilidad de que una máquina reciba solicitudes de inicio de sesión de usuario. Se calcula utilizando la configuración de la directiva de administración de carga de Citrix configurada para el inicio de sesión simultáneo, la sesión, la CPU, el disco y el uso de la memoria.

El índice de carga oscila entre 0 y 10.000. De forma predeterminada, una máquina se considera a plena carga cuando aloja 250 sesiones:

  • El dígito “0” indica una máquina descargada. Una máquina con un valor de índice de carga de 0 está en una carga base.

  • El dígito “10.000” indica una máquina a plena carga que no puede ejecutar más sesiones.

Autoscale y modo de mantenimiento

Las máquinas en modo de mantenimiento, independientemente de su estado de disponibilidad, se consideran parte del cálculo del tamaño total del grupo. Por lo tanto, es posible que todas las máquinas del grupo estén en modo de mantenimiento. Sin embargo, estas máquinas se excluyen de los cálculos del búfer de capacidad, lo que garantiza su disponibilidad inmediata. Para garantizar que un porcentaje específico de máquinas sea accesible para las conexiones de usuario, ajuste el tamaño del grupo y los valores del búfer en consecuencia.

Costo de la máquina

El costo por hora de la instancia de máquina es el costo por hora, en US$, de la capacidad de computación utilizada. Esta configuración se utiliza para calcular el ahorro de costos de la configuración de Autoscale. Para ver los ahorros, vaya a Monitor > Tendencias > Uso de la máquina.

Escalar un grupo de entrega

Autoscale enciende máquinas adicionales en un grupo de entrega habilitado para Autoscale cuando:

  1. La programación de Autoscale para el grupo de entrega indica que se deben encender más máquinas para el período de tiempo actual.
  2. La carga actual en el grupo de entrega ha superado el búfer de capacidad.

Condiciones para encender máquinas:

  1. No está en modo de mantenimiento.
  2. El hipervisor no está en modo de mantenimiento.
  3. Apagado y sin registrar.
  4. Pertenece al grupo de entrega que requiere escalado horizontal.
  5. No hay acciones de energía pendientes.

Reducir un grupo de entrega

Autoscale apaga las máquinas de un grupo de entrega habilitado para Autoscale cuando:

  1. La programación de Autoscale especifica que las máquinas deben apagarse para cumplir con el número configurado de máquinas para el período actual.
  2. La carga actual del grupo de entrega ha disminuido, lo que resulta en más máquinas encendidas de las necesarias para cumplir con el tamaño del grupo y el búfer de capacidad.

Autoscale reduce un grupo de entrega apagando las máquinas excedentes que superan el número necesario para cumplir con el tamaño del grupo y el búfer de capacidad.

El proceso de reducción implica dos pasos:

  1. Poner el número requerido de máquinas en estado de vaciado.
  2. Seleccionar todas las máquinas vaciadas para apagarlas.

Las máquinas aptas para el apagado deben cumplir los siguientes criterios:

  1. No estar en modo de mantenimiento
  2. El hipervisor no está en modo de mantenimiento
  3. Actualmente encendida
  4. Registrado como disponible o esperando registrarse después de iniciarse
  5. Vaciado y sin sesiones activas
  6. Sin acciones de energía pendientes
  7. Satisface el retraso de apagado

Estado de vaciado

Autoscale intenta reducir el número de máquinas encendidas en el grupo de entrega al tamaño de grupo y búfer de capacidad configurados.

Para lograr este objetivo, Autoscale pone las máquinas excedentes con menos sesiones en «estado de vaciado» y las apaga cuando todas las sesiones se cierran. Este comportamiento ocurre cuando la demanda de sesiones disminuye y la programación requiere menos máquinas de las que están encendidas.

Condiciones para que las máquinas se vacíen:

  1. Encendida
  2. No estar en modo de mantenimiento
  3. Hipervisor no en modo de mantenimiento
  4. Pertenecer al grupo de entrega que requiere reducción de escala
  5. Menor número de sesiones activas actuales

Nota:

  • Las máquinas que han estado encendidas durante al menos el tiempo especificado por el retraso de apagado son preferidas para el vaciado.
  • Las máquinas en estado de drenaje ya no alojan nuevos inicios de sesión y esperan a que las sesiones existentes se cierren. Una máquina se apaga solo cuando todas las sesiones se han cerrado. Sin embargo, si no hay máquinas disponibles inmediatamente para iniciar sesiones, Autoscale prefiere dirigir los inicios de sesión a una máquina en estado de drenaje antes que encender una máquina.

Autoscale pone las máquinas sobrantes en “estado de drenaje” una por una:

  • Si dos o más máquinas tienen el mismo número de sesiones activas, Autoscale drena la máquina que ha estado encendida durante el retardo de apagado especificado.

    De este modo, se evita poner las máquinas encendidas recientemente en estado de drenaje, ya que es más probable que esas máquinas tengan el menor número de sesiones.

  • Si dos o más máquinas han estado encendidas durante el retardo de apagado especificado, Autoscale drena esas máquinas una por una de forma aleatoria.

Las máquinas en estado de drenaje ya no alojan nuevos inicios de sesión y están esperando a que las sesiones existentes se cierren. Una máquina se convierte en candidata para el apagado solo cuando todas las sesiones se han cerrado. Sin embargo, si no hay máquinas disponibles inmediatamente para iniciar sesiones, Autoscale prefiere dirigir los inicios de sesión a una máquina en estado de drenaje antes que encender una máquina.

Una máquina sale del estado de drenaje cuando se cumple una de las siguientes condiciones:

  • La máquina está apagada.
  • Autoscale está deshabilitado para el grupo de entrega al que pertenece la máquina.
  • Autoscale utiliza la máquina para satisfacer los requisitos de programación o demanda de carga. Este caso ocurre cuando la programación (escalado basado en programación) o la demanda actual (escalado basado en carga) requiere más máquinas que el número de máquinas que están actualmente encendidas.

Importante:

Si no hay máquinas disponibles inmediatamente para iniciar sesiones, Autoscale prefiere dirigir los inicios de sesión a una máquina en estado de drenaje antes que encender una máquina. Una máquina en estado de drenaje que aloja un inicio de sesión permanece en estado de drenaje.

Para averiguar qué máquinas están en estado de drenaje, utilice el comando de PowerShell Get-BrokerMachine. Por ejemplo: Get-BrokerMachine -DrainingUntilShutdown $true. Alternativamente, puede usar Studio. Consulte Mostrar máquinas en estado de drenaje.

Mostrar máquinas en estado de drenaje

Nota:

Esta función se aplica solo a máquinas multisesión.

En Studio, puede mostrar las máquinas que están en estado de vaciado, lo que le permite saber qué máquinas están a punto de apagarse. Siga estos pasos:

  1. Vaya al nodo Buscar y, a continuación, haga clic en Columnas que mostrar.
  2. En la ventana Columnas que mostrar, seleccione la casilla de verificación junto a Estado de vaciado.
  3. Haga clic en Guardar para salir de la ventana Columnas que mostrar.

La columna Estado de vaciado puede mostrar la siguiente información:

  • Vaciando hasta el apagado. Aparece cuando las máquinas están en estado de vaciado hasta que se apagan.
  • No vaciando. Aparece cuando las máquinas aún no están en estado de vaciado.

Estado de vaciado

Habilitar Autoscale para un grupo de entrega

Autoscale está inhabilitado de forma predeterminada al crear un grupo de entrega. Para habilitar y configurar Autoscale para un grupo de entrega mediante Web Studio, siga estos pasos:

También puede usar comandos de PowerShell para habilitar y configurar Autoscale para un grupo de entrega. Para obtener más información, consulte Comandos del SDK de PowerShell de Broker.

  1. Seleccione Grupos de entrega en el panel izquierdo.

  2. Seleccione el grupo de entrega que quiere administrar y, a continuación, haga clic en Administrar Autoscale.

    Interfaz de usuario de la nube

  3. En la página Administrar Autoscale, seleccione la casilla de verificación Habilitar Autoscale para habilitar Autoscale. Después de habilitar Autoscale, las opciones de la página se habilitan.

    Interfaz de usuario de la nube

  4. Para cambiar la configuración predeterminada según las necesidades de su organización, complete la siguiente configuración:

Para deshabilitar Autoscale, desactive la casilla de verificación Autoscale. Las opciones de la página se atenúan para indicar que Autoscale está deshabilitado para el grupo de entrega seleccionado.

Importante:

  • Si deshabilita Autoscale, todas las máquinas administradas por Autoscale permanecerán en sus estados en el momento de la deshabilitación.
  • Después de deshabilitar Autoscale, las máquinas en estado de vaciado salen de dicho estado. Para obtener más información sobre el estado de vaciado, consulte Estado de vaciado.
  • Las acciones de Políticas de energía para grupos de entrega estáticos de SO de sesión única y grupos de entrega aleatorios de SO de sesión única en la página Configuración basada en carga son independientes de la configuración de Autoscale (habilitado o deshabilitado).

Excluir máquinas en vaciado de los cálculos de escalado automático

Esta función le permite evitar que las máquinas, que se están vaciando debido a programaciones de reinicio, cuenten para los objetivos de capacidad de Autoscale. Al excluir estas máquinas, optimiza el aprovisionamiento de recursos y evita el sobreaprovisionamiento. Por ejemplo: Tiene un grupo de entrega de máquinas de SO multisesión configurado con Autoscale y programaciones de reinicio regulares. Cuando las máquinas entran en un estado de vaciado para reiniciarse, Autoscale normalmente las sigue contando como capacidad disponible. Esto podría desencadenar el aprovisionamiento de máquinas adicionales innecesariamente. Al habilitar esta función, le indica a Autoscale que ignore estas máquinas en vaciado al calcular la capacidad. Esto garantiza que solo las máquinas activamente disponibles contribuyan al objetivo, lo que conduce a una utilización más eficiente de los recursos y a una reducción de los costos operativos.

Aplicabilidad: Esta función se aplica a los grupos de entrega que contienen máquinas de SO multisesión (RDS). Limitaciones:

  • Esta función no se aplica a las máquinas de SO de sesión única.
  • Cuando se configura Autoscale en función del “Número de máquinas” (en lugar de “Porcentaje”), el sistema no excluye las máquinas en estado de vaciado de los cálculos de Autoscale.

Consideraciones importantes:

  • La propiedad ExcludeNaturalRebootDrainingFromAutoscale se configura en el grupo de entrega.
  • El valor predeterminado de la propiedad ExcludeNaturalRebootDrainingFromAutoscale es False. Esto significa que las máquinas en estado de vaciado se incluyen en los cálculos de Autoscale de forma predeterminada.

Requisitos previos:

  • Debe configurar un grupo de entrega de SO multisesión.
  • Debe habilitar y configurar Autoscale para el grupo de entrega de destino. Preferiblemente, utilice “Porcentaje de máquinas” para el escalado.
  • Debe configurar Programaciones de reinicio para el grupo de entrega para inducir a las máquinas a un estado de vaciado. **Cómo configurar:

Esta función se configura a nivel de grupo de entrega mediante un comando de PowerShell.

  1. Asegúrese de que la función de alternancia ExcludeNaturalRebootDrainingFromAutoscale esté habilitada. Puede verificarlo ejecutando Get-ConfigEnabledFeature en PowerShell y buscando la alternancia en la lista de resultados.

    Nota:

    Si la alternancia está inhabilitada, no puede modificar la propiedad del grupo de entrega.

  2. Establezca la propiedad del grupo de entrega para excluir las máquinas en estado de vaciado**.
    1. Abra PowerShell con privilegios administrativos.
    2. Identifique su grupo de entrega de SO multisesión.
    3. Establezca la propiedad ExcludeNaturalRebootDrainingFromAutoscale en $True para su grupo de entrega usando el cmdlet Set-BrokerDesktopGroup:

      Set-BrokerDesktopGroup -Name "<YourDeliveryGroupName>" -ExcludeNaturalRebootDrainingFromAutoscale $True
      <!--NeedCopy-->
      

      Sustituya <YourDeliveryGroupName> por el nombre real de su grupo de entrega.

    4. Verifique que la propiedad esté establecida en True ejecutando:

      Get-BrokerDesktopGroup -Name "<YourDeliveryGroupName>" | Select Name, ExcludeNaturalRebootDrainingFromAutoscale
      <!--NeedCopy-->
      

      La salida debería mostrar ExcludeNaturalRebootDrainingFromAutoscale : True.

  3. Configure Autoscale y los programas de reinicio (si aún no están configurados)** Asegúrese de que su grupo de entrega tenga Autoscale habilitado y un programa de reinicio configurado para que las máquinas entren en un estado de vaciado.

    1. En Citrix Studio, edite su grupo de entrega.
    2. Vaya a Administrar Autoscale y configure los programas de horas pico/valle, asegurándose de que Autoscale esté habilitado. Si desea que las máquinas en estado de vaciado se excluyan, configure su programa basándose en el “Porcentaje de máquinas”.
    3. Vaya a Programa de reinicio y cree o edite un programa que haga que las máquinas entren en un estado de vaciado (por ejemplo, use “Reinicio gradual” para Cloud o “Reiniciar todas las máquinas después de vaciar la sesión” para implementaciones locales).

Supervisión y solución de problemas: Problema: Las sesiones se inician ocasionalmente en máquinas en estado de vaciado incluso cuando se habilita la función. Causa: Este es un comportamiento esperado. Las máquinas en estado de vaciado siguen estando disponibles para el inicio de sesiones como “último recurso” si no hay otras máquinas no vaciadas adecuadas disponibles. La función afecta principalmente a los cálculos de Autoscale para el aprovisionamiento/desaprovisionamiento. No afecta a la lógica de inicio de sesión del broker en sí. Solución: Esto no es un problema, sino un diseño intencionado. Para minimizar que las sesiones vayan a máquinas en estado de vaciado, asegúrese de que su búfer y capacidad de Autoscale sean suficientes para mantener suficientes máquinas no vaciadas disponibles para satisfacer la demanda.

Opciones de Autoscale para máquinas virtuales con sesiones de usuario

Autoscale puede gestionar tanto máquinas asignadas como agrupadas, optimizando su energía y disponibilidad. El siguiente contenido proporciona comandos de PowerShell y configuraciones de interfaz de usuario para controlar los estados de energía de las máquinas en función de los horarios pico y valle, y las sesiones de usuario para máquinas asignadas y agrupadas.

Las máquinas asignadas están dedicadas a un único usuario, mientras que las máquinas agrupadas se comparten entre varios usuarios.

Nota:

  • Las directivas de límite de sesión en Citrix Studio, en particular el temporizador de sesión desconectada y el temporizador de inactividad de sesión, son cruciales para gestionar las sesiones de usuario incluso cuando Citrix Autoscale NO está habilitado. Estas directivas definen cuánto tiempo puede permanecer una sesión desconectada o inactiva antes de ser terminada, asegurando la utilización de recursos y evitando sesiones bloqueadas. La configuración de la directiva se puede utilizar tanto para máquinas asignadas como agrupadas, especialmente aquellas que ejecutan VDAs multisession. Para obtener información detallada, consulte Configuración de directivas de límites de sesión.
  • El comando de PowerShell Get-BrokerMachine está obsoleto. Utilice Get-BrokerMachineV2 como alternativa.

Para máquinas asignadas

  • Para encender automáticamente las máquinas de sesión única asignadas en un grupo de entrega estático al comienzo de la hora punta, utilice el comando de PowerShell:

     Set-BrokerDesktopGroup "Desktop Group Name" -AutomaticPowerOnForAssigned $True
     <!--NeedCopy-->
    
  • Para asegurarse de que cualquier máquina asignada que se encuentre apagada durante la hora punta se reinicie, habilite también AutomaticPowerOnForAssignedDuringPeak.

     Set-BrokerDesktopGroup "Desktop Group Name" -AutomaticPowerOnForAssigned $True -AutomaticPowerOnForAssignedDuringPeak $True
     <!--NeedCopy-->
    
  • Si desea que las máquinas virtuales se enciendan solo cuando un usuario inicie una sesión, realice una de las siguientes acciones:

    • Establezca AutomaticPowerOnForAssigned y AutomaticPowerOnForAssignedDuringPeak en False.
    • Defina todas las horas como fuera de las horas punta, sin horas punta, mediante la interfaz de usuario. Consulte Configuración basada en programación. Durante las horas de menor actividad, una máquina asignada administrada por Autoscale se apaga si no tiene una sesión de usuario.

      Fuera de las horas punta sin horas punta

  • En los casos en que todas las máquinas son encendidas por Autoscale en horas punta, utilice la interfaz de usuario para establecer el tiempo de espera en minutos y acciones como: ninguna acción, suspender o apagar si ningún usuario inicia sesión después de que la máquina sea encendida por Autoscale. Consulte Directivas de energía.

Para máquinas agrupadas

Para apagar automáticamente las máquinas agrupadas después del cierre de sesión, establezca el comando de PowerShell ShutdownAfterUse en True para un grupo de entrega. Por ejemplo:

Set-BrokerDesktopGroup -Name “DesktopGroupName” -ShutdownDesktopsAfterUse $true
<!--NeedCopy-->

Supervisar métricas

Después de habilitar Autoscale para un grupo de entrega, puede supervisar las siguientes métricas de las máquinas administradas por Autoscale desde Director.

  • Uso de la máquina

  • Ahorros estimados

  • Notificaciones de alerta para máquinas y sesiones

  • Estado de la máquina

  • Tendencias de evaluación de carga

Nota:

Cuando habilita Autoscale por primera vez para un grupo de entrega, puede tardar unos minutos en mostrar los datos de supervisión de ese grupo de entrega. Los datos de supervisión permanecen disponibles si Autoscale se habilita y luego se inhabilita para el grupo de entrega. Autoscale recopila datos de supervisión en intervalos de 5 minutos.

Para obtener más información sobre las métricas, consulte Supervisar máquinas administradas por Autoscale.

Autoscale en máquinas virtuales hibernadas

Puede hibernar máquinas virtuales mediante la configuración configurable de Autoscale. Utilice los comandos de PowerShell Get-BrokerDesktopGroups, New-BrokerDesktopGroups o Set-BrokerDesktopGroups para establecer el siguiente valor positivo para el parámetro AutoscaleScaleDownActionDuringPeak (durante el período de máxima actividad) o AutoscaleScaleDownActionDuringOffPeak (durante el período de baja actividad) para definir las acciones de energía:

  • 0: Apagar las máquinas virtuales al reducir la escala
  • 1: Suspender (hibernar las máquinas virtuales) al reducir la escala

Las máquinas virtuales que no pueden hibernar se apagan.

Puede configurar programaciones de reinicio para máquinas virtuales hibernadas si el grupo de entrega tiene la hibernación habilitada. En el ciclo de reinicio, las máquinas virtuales se reanudan y luego se apagan. La programación de reinicio se puede establecer como semanal, diaria, mensual y una sola vez. Puede configurar varias programaciones. Sin embargo, las máquinas virtuales que se reanudan de la hibernación pueden tardar unos minutos.

Autoscale también puede encender máquinas virtuales hibernadas de Servicios de Escritorio remoto (RDS) multisesión y máquinas virtuales de sesión única compartida sin sesiones durante el período de máxima actividad. Las máquinas virtuales pueden ser de catálogos de máquinas MCS y no MCS.

Más información

Para obtener más información sobre Autoscale, consulte Citrix Autoscale en Tech Zone.

Primeros pasos con Autoscale™