Citrix DaaS™

Guida introduttiva ad Autoscale™

Autoscale è una funzionalità che fornisce una soluzione di gestione dell’alimentazione coerente e ad alte prestazioni per scalare in modo proattivo i gruppi di consegna in base a una pianificazione configurata o alle richieste di carico.

Autoscale si applica a tutti i tipi di gruppi di consegna:

  • OS statico a sessione singola
  • OS casuale a sessione singola
  • OS casuale a sessione multipla

Questo articolo descrive i concetti di base relativi ad Autoscale e fornisce indicazioni su come abilitare e configurare Autoscale per un gruppo di consegna.

Concetti di base

Prima di iniziare, apprendere i seguenti concetti di base in Autoscale:

Capacità e registrazione delle macchine

Autoscale include solo le macchine registrate con il sito quando determina la capacità. Le macchine accese che non sono registrate non possono accettare richieste di sessione. Di conseguenza, non sono incluse nella capacità complessiva del gruppo di consegna.

Scalabilità tra più cataloghi di macchine

In alcuni siti, più cataloghi di macchine potrebbero essere associati a un singolo gruppo di consegna. Autoscale accende in modo casuale le macchine da ciascun catalogo per soddisfare i requisiti di pianificazione o di domanda di sessione.

Ad esempio, un gruppo di consegna ha due cataloghi di macchine: il Catalogo A ha tre macchine accese e il Catalogo B ne ha una accesa. Se Autoscale deve accendere una macchina aggiuntiva, potrebbe accendere una macchina dal Catalogo A o dal Catalogo B.

Provisioning delle macchine e domanda di sessioni

Il catalogo di macchine associato al gruppo di consegna deve avere un numero sufficiente di macchine da accendere e spegnere all’aumentare e al diminuire della domanda. Se la domanda di sessioni supera il numero totale di macchine registrate nel gruppo di consegna, Autoscale garantisce che tutte le macchine registrate siano accese. Tuttavia, Autoscale non esegue il provisioning di macchine aggiuntive.

Nota:

Se un gruppo di consegna ha 63 macchine e un buffer di capacità del 10% è impostato per le ore non lavorative, allora, secondo il calcolo di Autoscale, 6,3 macchine devono essere accese durante le ore non lavorative. Per gestire il valore decimale, le regole sono le seguenti:

  • Arrotondamento al più vicino: Ad esempio, se il valore è 6,4, vengono accese 6 macchine. Se il valore è 6,7, vengono accese 7 macchine.
  • Arrotondamento a 1 per qualsiasi valore non zero inferiore a 1. Ad esempio, se il valore è 0,2 o 0,9, viene accesa 1 macchina.

Per superare questo collo di bottiglia, è possibile utilizzare uno script PowerShell per creare ed eliminare dinamicamente le macchine. Per maggiori informazioni, vedere Provisioning dinamico delle macchine

Considerazioni sulle dimensioni dell’istanza

È possibile ottimizzare i costi dimensionando in modo appropriato le istanze nei cloud pubblici. Si consiglia di eseguire il provisioning di istanze più piccole, purché corrispondano alle prestazioni del carico di lavoro e ai requisiti di capacità.

Le istanze più piccole ospitano meno sessioni utente rispetto alle istanze più grandi. Pertanto, Autoscale mette le macchine in stato di svuotamento più velocemente perché richiede meno tempo per la disconnessione dell’ultima sessione utente. Di conseguenza, Autoscale spegne le istanze più piccole prima, riducendo i costi.

Pianificazioni

Autoscale accende e spegne le macchine in un gruppo di consegna in base a una pianificazione impostata.

Una pianificazione include il numero di macchine attive per ogni fascia oraria, con orari di punta e non di punta definiti.

Le impostazioni della pianificazione variano in base al tipo di gruppo di consegna. Per maggiori informazioni, vedere:

Orari di punta e non di punta

Gli orari di punta e non di punta vengono utilizzati per indicare quali valori del buffer di capacità utilizzare per periodi specifici della giornata. È possibile definire gli orari di punta, lasciando gli orari rimanenti non definiti come orari non di punta.

Ritardo di spegnimento

Il ritardo di spegnimento è il numero minimo di minuti che devono trascorrere dopo l’accensione di una macchina prima che Autoscale possa spegnerla. Ciò impedisce alle macchine di accendersi e spegnersi continuamente durante le richieste di sessione volatili. Per impostazione predefinita, il ritardo di spegnimento è di 30 minuti. È possibile impostarlo in un intervallo di 0-60 minuti.

Dimensione del pool

La dimensione del pool è il numero di macchine che devono rimanere accese per un determinato periodo del giorno.

Buffer di capacità

Il buffer di capacità viene utilizzato per aggiungere capacità di riserva alla domanda corrente per tenere conto degli aumenti dinamici del carico. Ci sono due scenari da considerare:

  • Per i gruppi di consegna OS multi-sessione, il buffer di capacità è definito come una percentuale della capacità totale del gruppo di consegna in termini di indice di carico.
  • Per i gruppi di consegna OS a sessione singola, il buffer di capacità è definito come una percentuale del numero totale di macchine nel gruppo di consegna.

Il buffer di capacità è un buffer dinamico, dato che viene calcolato e applicato in base all’utilizzo corrente piuttosto che calcolato e applicato in aggiunta alla dimensione del pool configurata.

Ad esempio, dato un gruppo di consegna con 10 macchine, una dimensione del pool di 1 macchina per il periodo corrente e un buffer di capacità del 10%. Una macchina aggiuntiva viene accesa quando la macchina accesa, come definito dalla pianificazione, è caricata al punto in cui il buffer di capacità del 10% non è più soddisfatto. Se il carico viene ridotto dopo l’accensione della seconda macchina e c’è più che sufficiente capacità di carico libera per soddisfare il buffer di capacità del 10%, Autoscale prepara 1 macchina per lo spegnimento.

Indice di carico

IMPORTANTE:

L’indice di carico si applica solo ai gruppi di consegna multi-sessione.

La metrica dell’indice di carico determina la probabilità che una macchina riceva richieste di accesso utente. Viene calcolata utilizzando le impostazioni della policy di gestione del carico Citrix configurate per l’accesso simultaneo, la sessione, la CPU, il disco e l’utilizzo della memoria.

L’indice di carico varia da 0 a 10.000. Per impostazione predefinita, una macchina è considerata a pieno carico quando ospita 250 sessioni:

  • Il valore “0” indica una macchina scarica. Una macchina con un valore di indice di carico pari a 0 è a un carico di base.

  • Il valore “10.000” indica una macchina a pieno carico che non può eseguire altre sessioni.

Autoscale e modalità di manutenzione

Le macchine in modalità di manutenzione, indipendentemente dal loro stato di disponibilità, sono considerate parte del calcolo della dimensione complessiva del pool. Pertanto, è possibile che tutte le macchine all’interno del pool siano in modalità di manutenzione. Tuttavia, queste macchine sono escluse dai calcoli del buffer di capacità, garantendone la disponibilità immediata. Per garantire che una percentuale specifica di macchine sia accessibile per le connessioni utente, regolare di conseguenza la dimensione del pool e i valori del buffer.

Costo della macchina

Il costo orario dell’istanza della macchina è il costo orario, in dollari USA, della capacità di calcolo utilizzata. Questa impostazione viene utilizzata per calcolare i risparmi sui costi delle impostazioni di Autoscale. Per visualizzare i risparmi, andare su Monitor > Ottimizzazione costi > Risparmi sui costi.

Scalare un gruppo di consegna

Autoscale accende macchine aggiuntive in un gruppo di consegna abilitato per Autoscale quando:

  1. La pianificazione di Autoscale per il gruppo di consegna indica che devono essere accese più macchine per il periodo di tempo corrente.
  2. Il carico corrente sul gruppo di consegna ha superato il buffer di capacità.

Condizioni per l’accensione delle macchine:

  1. Non in modalità di manutenzione.
  2. L’hypervisor non è in modalità di manutenzione.
  3. Spenta e non registrata.
  4. Appartiene al gruppo di consegna che richiede lo scaling up.
  5. Nessuna azione di alimentazione in sospeso.

Scalare un gruppo di consegna

Autoscale spegne le macchine in un gruppo di consegna abilitato per Autoscale quando:

  1. La pianificazione di Autoscale specifica che le macchine devono essere spente per soddisfare il numero configurato di macchine per il periodo di tempo corrente.
  2. Il carico corrente del gruppo di consegna è diminuito, risultando in più macchine accese del necessario per soddisfare la dimensione del pool e il buffer di capacità.

Autoscale ridimensiona un gruppo di consegna spegnendo le macchine in eccesso che superano il numero necessario per soddisfare la dimensione del pool e il buffer di capacità.

Il processo di ridimensionamento prevede due passaggi:

  1. Mettere il numero richiesto di macchine nello stato di svuotamento.
  2. Selezionare tutte le macchine svuotate per lo spegnimento.

Le macchine idonee per lo spegnimento devono soddisfare i seguenti criteri:

  1. Non in modalità di manutenzione
  2. Hypervisor non in modalità di manutenzione
  3. Attualmente accesa
  4. Registrata come disponibile o in attesa di registrazione dopo l’avvio
  5. Svuotata e senza sessioni attive
  6. Nessuna azione di alimentazione in sospeso
  7. Soddisfa il ritardo di spegnimento

Stato di svuotamento

Autoscale tenta di ridurre il numero di macchine accese nel gruppo di consegna alla dimensione del pool e al buffer di capacità configurati.

Per raggiungere questo obiettivo, Autoscale mette le macchine in eccesso con il minor numero di sessioni in “stato di svuotamento” e le spegne quando tutte le sessioni sono disconnesse. Questo comportamento si verifica quando la domanda di sessioni diminuisce e la pianificazione richiede meno macchine di quelle accese.

Condizioni per lo svuotamento delle macchine:

  1. Accesa
  2. Non in modalità di manutenzione
  3. Hypervisor non in modalità di manutenzione
  4. Appartiene al gruppo di consegna che richiede lo scaling down
  5. Minor numero di sessioni attive correnti

Nota:

  • Le macchine che sono state accese per almeno il tempo specificato dal ritardo di spegnimento sono preferite per lo svuotamento.
  • Le macchine in stato di svuotamento non ospitano più nuovi avvii di sessione e attendono la disconnessione delle sessioni esistenti. Una macchina viene spenta solo quando tutte le sessioni sono disconnesse. Tuttavia, se non ci sono macchine immediatamente disponibili per gli avvii di sessione, Autoscale preferisce indirizzare gli avvii di sessione a una macchina in stato di svuotamento piuttosto che accendere una macchina.

Autoscale mette le macchine in eccesso in “stato di svuotamento” una per una:

  • Se due o più macchine hanno lo stesso numero di sessioni attive, Autoscale svuota la macchina che è stata accesa per il ritardo di spegnimento specificato.

    Ciò evita di mettere in stato di svuotamento le macchine accese di recente, poiché è più probabile che tali macchine abbiano il minor numero di sessioni.

  • Se due o più macchine sono state accese per il ritardo di spegnimento specificato, Autoscale svuota tali macchine una per una in modo casuale.

Le macchine in stato di svuotamento non ospitano più nuovi avvii di sessione e attendono la disconnessione delle sessioni esistenti. Una macchina diventa candidata allo spegnimento solo quando tutte le sessioni sono disconnesse. Tuttavia, se non ci sono macchine immediatamente disponibili per gli avvii di sessione, Autoscale preferisce indirizzare gli avvii di sessione a una macchina in stato di svuotamento piuttosto che accendere una macchina.

Una macchina viene tolta dallo stato di svuotamento quando si verifica una delle seguenti condizioni:

  • La macchina è spenta.
  • Autoscale è disabilitato per il gruppo di consegna a cui appartiene la macchina.
  • Autoscale utilizza la macchina per soddisfare i requisiti di pianificazione o di domanda di carico. Questo caso si verifica quando la pianificazione (scaling basato sulla pianificazione) o la domanda corrente (scaling basato sul carico) richiede più macchine del numero di macchine attualmente accese.

Importante:

Se non ci sono macchine immediatamente disponibili per gli avvii di sessione, Autoscale preferisce indirizzare gli avvii di sessione a una macchina in stato di svuotamento piuttosto che accendere una macchina. Una macchina in stato di svuotamento che ospita un avvio di sessione rimane in stato di svuotamento.

Per scoprire quali macchine sono in stato di svuotamento, utilizzare il comando PowerShell Get-BrokerMachine. Ad esempio: Get-BrokerMachine -DrainingUntilShutdown $true. In alternativa, è possibile utilizzare Studio. Vedere Visualizzare le macchine in stato di svuotamento.

Visualizzare le macchine in stato di svuotamento

Nota:

Questa funzionalità si applica solo alle macchine multi-sessione.

In Studio, è possibile visualizzare le macchine che sono in stato di svuotamento, consentendo di sapere quali macchine stanno per essere spente. Completare i seguenti passaggi:

  1. Passare al nodo Cerca e quindi fare clic su Colonne da visualizzare.
  2. Nella finestra Colonne da visualizzare, selezionare la casella di controllo accanto a Stato di svuotamento.
  3. Fare clic su Salva per uscire dalla finestra Colonne da visualizzare.

La colonna Stato di svuotamento può visualizzare le seguenti informazioni:

  • Svuotamento fino allo spegnimento. Appare quando le macchine sono in stato di svuotamento fino a quando non vengono spente.
  • Non in svuotamento. Appare quando le macchine non sono ancora in stato di svuotamento.

Stato di svuotamento

Abilitare Autoscale per un gruppo di consegna

Autoscale è disabilitato per impostazione predefinita quando si crea un gruppo di consegna. Per abilitare e configurare Autoscale per un gruppo di consegna utilizzando Studio, seguire questi passaggi:

È anche possibile utilizzare i comandi PowerShell per abilitare e configurare Autoscale per un gruppo di consegna. Per maggiori informazioni, vedere Comandi SDK PowerShell di Broker.

  1. Da Studio, selezionare Gruppi di consegna nel riquadro sinistro.

  2. Selezionare il gruppo di consegna che si desidera gestire e quindi fare clic su Gestisci Autoscale.

    Interfaccia utente cloud

  3. Nella pagina Gestisci Autoscale, selezionare la casella di controllo Abilita Autoscale per abilitare Autoscale. Dopo aver abilitato Autoscale, le opzioni nella pagina sono abilitate.

    Interfaccia utente cloud

  4. Per modificare le impostazioni predefinite in base alle esigenze dell’organizzazione, completare le seguenti impostazioni:

Per disabilitare Autoscale, deselezionare la casella di controllo Autoscale. Le opzioni nella pagina diventano grigie per indicare che Autoscale è disabilitato per il gruppo di consegna selezionato.

Importante:

  • Se si disabilita Autoscale, tutte le macchine gestite da Autoscale rimangono nello stato in cui si trovavano al momento della disabilitazione.
  • Dopo aver disabilitato Autoscale, le macchine in stato di svuotamento vengono rimosse da tale stato. Per maggiori informazioni sullo stato di svuotamento, vedere Stato di svuotamento.
  • Le azioni delle policy di alimentazione per i gruppi di consegna OS statici a sessione singola e i gruppi di consegna OS casuali a sessione singola nella pagina Impostazioni basate sul carico sono indipendenti dall’impostazione di Autoscale (abilitata o disabilitata).

È possibile eseguire il provisioning dinamico delle macchine per il gruppo utilizzando uno script PowerShell. Per maggiori informazioni, vedere Provisioning dinamico delle macchine.

Opzioni Autoscale per VM con sessioni utente

Autoscale può gestire sia macchine assegnate che in pool, ottimizzandone l’alimentazione e la disponibilità. Il contenuto seguente fornisce comandi PowerShell e impostazioni dell’interfaccia utente per il controllo degli stati di alimentazione delle macchine in base agli orari di punta e non di punta e alle sessioni utente per le macchine assegnate e in pool.

Le macchine assegnate sono dedicate a un singolo utente, mentre le macchine in pool sono condivise tra più utenti.

Nota:

  • Le policy di limite di sessione in Citrix Studio, in particolare il timer di sessione disconnessa e il timer di sessione inattiva, sono cruciali per la gestione delle sessioni utente anche quando Citrix Autoscale NON è abilitato. Queste policy definiscono per quanto tempo una sessione può rimanere disconnessa o inattiva prima di essere terminata, garantendo l’utilizzo delle risorse e prevenendo sessioni bloccate. L’impostazione della policy può essere utilizzata sia per le macchine assegnate che per quelle in pool, in particolare quelle che eseguono VDA multi-sessione. Per informazioni dettagliate, vedere Impostazioni della policy dei limiti di sessione.
  • Il comando PowerShell Get-BrokerMachine è deprecato. Utilizzare Get-BrokerMachineV2 come alternativa.

Per le macchine assegnate

  • Per accendere automaticamente le macchine assegnate a sessione singola in un gruppo di consegna statico all’inizio dell’orario di punta, utilizzare il comando PowerShell:

     Set-BrokerDesktopGroup "Desktop Group Name" -AutomaticPowerOnForAssigned $True
     <!--NeedCopy-->
    
  • Per garantire che qualsiasi macchina assegnata che risulta spenta durante l’orario di punta venga riavviata, abilitare anche AutomaticPowerOnForAssignedDuringPeak.

     Set-BrokerDesktopGroup "Desktop Group Name" -AutomaticPowerOnForAssigned $True -AutomaticPowerOnForAssignedDuringPeak $True
     <!--NeedCopy-->
    
  • Se si desidera che le VM si accendano solo quando un utente avvia una sessione, eseguire una delle seguenti operazioni:

    • Impostare AutomaticPowerOnForAssigned e AutomaticPowerOnForAssignedDuringPeak su False.
    • Definire tutte le ore come non di punta senza orari di punta utilizzando l’interfaccia utente. Vedere Impostazioni basate sulla pianificazione. Durante gli orari non di punta, una macchina assegnata gestita da Autoscale viene spenta se non ha sessioni utente attive.

      Non di punta senza orari di punta

  • Nei casi in cui tutte le macchine vengono accese da Autoscale negli orari di punta, utilizzare l’interfaccia utente per impostare il tempo di attesa in minuti e le azioni come nessuna azione, sospensione o spegnimento se nessun utente effettua l’accesso dopo che la macchina è stata accesa da Autoscale. Vedere Policy di alimentazione.

Per le macchine in pool

Per spegnere automaticamente le macchine in pool dopo la disconnessione della sessione, impostare il comando PowerShell ShutdownAfterUse su True per un gruppo di consegna. Ad esempio:

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

Monitorare le metriche

Dopo aver abilitato Autoscale per un gruppo di consegna, è possibile monitorare le seguenti metriche delle macchine gestite da Autoscale dalla console Monitor.

  • Utilizzo della macchina
  • Risparmi stimati
  • Notifiche di avviso per macchine e sessioni
  • Stato della macchina
  • Tendenze di valutazione del carico

Nota:

Quando si abilita inizialmente Autoscale per un gruppo di consegna, potrebbero essere necessari alcuni minuti per visualizzare i dati di monitoraggio per quel gruppo di consegna. I dati di monitoraggio rimangono disponibili se Autoscale viene abilitato e quindi disabilitato per il gruppo di consegna. Autoscale raccoglie i dati di monitoraggio a intervalli di 5 minuti.

Per maggiori informazioni sulle metriche, vedere Monitorare le macchine gestite da Autoscale.

Autoscale su VM ibernate

È possibile ibernare le VM tramite impostazioni Autoscale configurabili. Utilizzare i comandi PowerShell Get-BrokerDesktopGroups, New-BrokerDesktopGroups o Set-BrokerDesktopGroups per impostare il seguente valore positivo per il parametro AutoscaleScaleDownActionDuringPeak (durante il picco) o AutoscaleScaleDownActionDuringOffPeak (durante il non picco) per definire le azioni di alimentazione:

  • 0: Spegnere le VM durante lo scaling down
  • 1: Sospendere (ibernare le VM) durante lo scaling down

Le VM non in grado di ibernazione vengono spente.

È possibile configurare pianificazioni di riavvio per le VM ibernate se il gruppo di consegna è abilitato all’ibernazione. Nel ciclo di riavvio, le VM vengono riprese e quindi spente. La pianificazione di riavvio può essere impostata come settimanale, giornaliera, mensile e una tantum. È possibile configurare più pianificazioni. Tuttavia, il ripristino delle VM dall’ibernazione può richiedere alcuni minuti.

Autoscale può anche accendere VM ibernate multi-sessione di Remote Desktop Services (RDS) e VM a sessione singola condivise senza sessioni attive durante l’orario di punta. Le VM possono provenire da cataloghi di macchine MCS e non MCS.

Maggiori informazioni

Per maggiori informazioni su Autoscale, vedere Citrix Autoscale in Tech Zone.

Guida introduttiva ad Autoscale™