Citrix DaaS

Autoscaling des machines balisées (cloud bursting)

Remarque :

Cette fonctionnalité était auparavant appelée Limiter Autoscale.

Introduction

Autoscale permet de gérer l’alimentation d’un sous-ensemble de machines d’un groupe de mise à disposition. Pour ce faire, appliquez une balise à une ou plusieurs machines, puis configurez Autoscale pour gérer l’alimentation des machines balisées uniquement.

Cette fonctionnalité peut être utile dans les cas d’utilisation de poussée sur le cloud : vous souhaitez utiliser les ressources locales (ou des instances de cloud public réservées) pour gérer les charges de travail avant que les ressources basées sur le cloud répondent à une demande supplémentaire (c’est-à-dire, une poussée de charges de travail). Pour permettre aux machines locales (ou aux instances réservées) de répondre d’abord aux charges de travail, vous devez utiliser la restriction de balise ainsi que la préférence de zone.

La restriction de balise spécifie les machines qui seront gérées par Autoscale. La préférence de zone spécifie les machines de la zone préférée pour gérer les demandes de lancement de l’utilisateur. Pour plus d’informations, veuillez consulter la section Balises et Préférence de zone.

Pour activer Autoscale sur certaines machines balisées, vous pouvez utiliser la console Gérer ou PowerShell.

Utiliser la console Gérer pour activer Autoscale sur certaines machines balisées

Pour activer Autoscale sur certaines machines balisées, procédez comme suit :

  1. Créez une balise et appliquez cette balise aux machines applicables dans le groupe de mise à disposition. Pour plus d’informations, consultez la rubrique Gérer les balises et restrictions de balise.

  2. Sélectionnez le groupe de mise à disposition, puis ouvrez l’Assistant Gérer Autoscale.

  3. Dans la page Autoscaling des machines balisées, sélectionnez Activer Autoscale pour les machines avec balise, sélectionnez une balise dans la liste, puis cliquez sur Appliquer pour enregistrer vos modifications.

    Interface utilisateur pour les groupes de mise à disposition statiques et aléatoires des OS mono-session :

    Autoscaling des machines balisées

    Interface utilisateur pour les groupes de mise à disposition des OS multi-session :

    Autoscaling des machines balisées

Avertissement :

  • Activer Autoscale sur des machines associées à une balise spécifique peut entraîner la mise à jour automatique de l’histogramme afin de refléter le nombre de machines correspondant à la balise. Sur la page Planification et heures de pointe, vous pouvez affecter manuellement des machines à chaque créneau horaire si nécessaire.
  • Vous ne pouvez pas supprimer une balise qui est utilisée sur des machines balisées. Pour supprimer la balise, vous devez d’abord supprimer la restriction de balise.

Après avoir appliqué la restriction de balise, vous pouvez la supprimer du groupe de mise à disposition. Pour ce faire, accédez à la page Gérer Autoscale > Autoscaling des machines balisées, puis désactivez Activer Autoscale pour les machines avec balise.

Avertissement :

  • Si vous supprimez la balise des machines applicables sans désélectionner Activer Autoscale pour les machines avec balise, vous pouvez recevoir un avertissement lorsque vous ouvrez l’Assistant Gérer Autoscale. Lorsque la balise est supprimée des machines, il est possible qu’Autoscale n’ait plus de machines à gérer car la balise spécifiée dans Autoscale est devenue invalide. Pour effacer l’avertissement, accédez à la page Autoscaling des machines balisées, supprimez la balise non valide, puis cliquez sur Appliquer pour enregistrer vos modifications.

Contrôler le moment où Autoscale met les ressources sous tension

Vous pouvez également contrôler le moment où Autoscale démarre la mise sous tension des machines balisées en fonction de l’utilisation de machines non balisées. Cela vous permet d’optimiser davantage la consommation de vos charges de travail balisées ou de cloud public.

Pour ce faire, procédez comme suit :

  1. Sur la page Autoscaling des machines balisées, sélectionnez Contrôler le moment où Autoscale démarre la mise sous tension des machines balisées.
  2. Saisissez le pourcentage d’utilisation de la machine non balisée que vous souhaitez atteindre pendant les heures de pointe et les heures creuses, puis cliquez sur Appliquer. Valeurs prises en charge : 0 à 100.

Contrôler le moment où Autoscale démarre la mise sous tension des machines balisées

Conseil :

Le pourcentage contrôle le moment où Autoscale démarre la mise sous tension des machines balisées. Lorsque le pourcentage tombe en dessous du seuil (par défaut, 10 %), Autoscale commence à mettre sous tension les machines balisées. Lorsque le pourcentage dépasse le seuil, Autoscale passe en mode hors tension. Lorsque vous saisissez le pourcentage, considérez deux scénarios :

  • Pour les groupes de mise à disposition avec OS mono-session : la valeur est définie comme un pourcentage du nombre total de machines non balisées en état d’inactivité. Exemple : vous disposez de 10 machines OS mono-session non balisées. Lorsqu’il ne reste qu’une seule machine sans session, Autoscale commence à allumer une machine balisée.
  • Pour les groupes de mise à disposition avec OS multi-session : la valeur est définie comme un pourcentage de la capacité totale (en termes d’indice de charge) de machines non balisées disponibles. Exemple : vous disposez de 10 machines OS multi-session non balisées. Lorsqu’elles sont chargées à 90 %, Autoscale commence à allumer une machine balisée.

Utiliser PowerShell pour activer Autoscale sur certaines machines balisées

Pour utiliser directement le SDK PowerShell, procédez comme suit :

  1. Créez une balise. Utilisez la commande New-Brokertag PowerShell pour créer une balise.
  2. Appliquez la balise aux machines. Utilisez la commande PowerShell Get-Brokermachine pour appliquer la balise aux machines d’un catalogue pour lesquelles Autoscale doit gérer l’alimentation.

    Remarque :

    Vous pouvez ajouter de nouvelles machines au catalogue après avoir appliqué la balise. La balise n’est PAS appliquée automatiquement à ces nouvelles machines.

  3. Ajoutez des machines balisées au groupe de mise à disposition dont Autoscale doit gérer l’alimentation. Utilisez la commande PowerShell Get-BrokerDesktopGroup pour ajouter une restriction de balise au groupe de mise à disposition qui contient les machines (en d’autres termes, « restreindre les lancements aux machines avec la balise X »).

Après avoir appliqué la restriction de balise, vous pouvez la supprimer du groupe de mise à disposition. Pour ce faire, utilisez la commande PowerShell Get-BrokerDesktopGroup.

Exemple : Get-BrokerDesktopGroup –Uid 1 | Set-BrokerDesktopGroup –RestrictAutoscaleTagUid $null. Dans ce cas, l’UID du groupe de mise à disposition est 1.

Remarque :

Les machines non balisées redémarrent automatiquement après que les utilisateurs les ont éteintes. Ce comportement garantit qu’elles deviennent disponibles pour gérer les charges de travail plus tôt. Il peut être activé ou désactivé par groupe de bureaux à l’aide de la propriété AutomaticRestartForUntaggedMachines de Set-BrokerDesktopGroup Pour plus d’informations, consultez https://citrix.github.io/delivery-controller-sdk/Broker/Set-BrokerDesktopGroup/.

Exemple de scénario

Supposons que vous ayez le scénario suivant :

  • Configuration du catalogue de machines. Il existe deux catalogues de machines (C1 et C2).
    • Le catalogue C1 contient 5 machines (M1 à M5) locales dans les déploiements locaux.
    • Le catalogue C2 contient 5 machines (M6 à M10) distantes dans les déploiements cloud.
  • Restriction de balise. Une balise nommée « Cloud » est créée et appliquée aux machines M6 à M10 dans le catalogue C2.

  • Configuration de zone. Deux zones (Z1 et Z2) sont créées.
    • La zone Z1 contenant le catalogue C1 correspond aux déploiements locaux.
    • La zone Z2 contenant le catalogue C2 correspond aux déploiements cloud.
  • Configuration du groupe de mise à disposition.
    • Le groupe de mise à disposition contient 10 machines (M1 à M10), 5 machines du catalogue C1 (M1 à M5) et 5 du catalogue C2 (M6 à M10).
    • Les machines M1 à M5 sont mises sous tension manuellement et restent sous tension tout au long de la planification.
  • Configuration Autoscale
    • Le tampon de capacité est défini sur 10 %.
    • Autoscale ne gère l’alimentation que des machines avec la balise « Cloud ». Dans ce cas, Autoscale gère l’alimentation des machines cloud M6 à M10.
  • Configuration des applications ou bureaux publiés. Les préférences de zone sont configurées pour les bureaux publiés (par exemple), où la zone Z1 est préférée à la zone Z2 pour une demande de lancement utilisateur.
    • La zone Z1 est configurée comme zone préférée (zone de base) pour les bureaux publiés.

Le scénario est exécuté dans l’ordre suivant :

  1. Aucun utilisateur ne se connecte.
  2. Les sessions utilisateur augmentent.
  3. Les sessions utilisateur continuent à augmenter jusqu’à ce que toutes les machines locales disponibles soient consommées.
  4. D’autres sessions utilisateur démarrent.
  5. Les sessions utilisateur diminuent en raison de fermetures de session.
  6. Les sessions utilisateur continuent à diminuer jusqu’à ce que la charge de session soit gérée uniquement par des ressources locales.

Voir ci-dessous pour plus de détails sur le fonctionnement de Autoscale dans le scénario ci-dessus.

  • Pas de charge utilisateur (état initial)
    • Les machines locales M1 à M5 sont toutes sous tension.
    • Une machine dans le cloud (par exemple, M6) est sous tension. La machine est sous tension en raison du tampon de capacité configuré. Dans ce cas, 10 (nombre de machines) x 10 000 (indice de charge) x 10 % (tampon de capacité configuré) est égal à 10 000. Par conséquent, une machine est sous tension.
    • La valeur de l’indice de charge de toutes les machines sous tension (M1 à M6) correspond à une charge de base (l’indice de charge est égal à 0).
  • Des utilisateurs se connectent
    • Les sessions sont dirigées pour être hébergées sur les machines M1 à M5 via la préférence de zone configurée et la charge est équilibrée sur ces machines locales.
    • La valeur d’indice de charge des machines sous tension (M1 à M5) augmente.
    • La valeur d’indice de charge de la machine sous tension (M6) correspond à une charge de base.
  • Les utilisateurs augmentent la charge et consomment toutes les ressources locales
    • Les sessions sont dirigées pour être hébergées sur les machines M1 à M5 via la préférence de zone configurée et la charge est équilibrée sur ces machines locales.
    • La valeur d’indice de charge de toutes les machines sous tension (M1 à M5) a atteint 10 000.
    • La valeur d’indice de charge de la machine sous tension (M6) reste sur une charge de base.
  • Un utilisateur de plus se connecte
    • La session dépasse la préférence de zone et est dirigée pour être hébergée sur la machine cloud M6.
    • La valeur d’indice de charge de toutes les machines sous tension (M1 à M5) a atteint 10 000.
    • La valeur d’indice de charge de la machine sous tension (M6) augmente et ne correspond plus à une charge de base. Lorsque la capacité totale de réserve tombe à un niveau inférieur à 10 000 en termes d’indice de charge, Autoscale commence à allumer une machine supplémentaire (M7) pour répondre à la demande en raison du tampon de capacité configuré. Notez que la mise sous tension de la machine M7 peut prendre un certain temps. Il peut donc y avoir un délai avant que la machine M7 soit prête.
  • Plus d’utilisateurs se connectent
    • Les sessions sont dirigées pour être hébergées sur la machine M6.
    • La valeur d’indice de charge de toutes les machines sous tension (M1 à M5) a atteint 10 000.
    • L’indice de charge de la machine M6 sous tension augmente encore, mais la capacité totale de réserve est supérieure à 10 000 en termes d’indice de charge.
    • La valeur d’indice de charge de la machine sous tension (M7) reste sur une charge de base.
  • Encore plus d’utilisateurs se connectent
    • Une fois la machine M7 prête, les sessions sont dirigées pour être hébergées sur les machines M6 et M7 et la charge est équilibrée sur ces machines.
    • La valeur d’indice de charge de toutes les machines sous tension (M1 à M5) a atteint 10 000.
    • La valeur de l’indice de charge de la machine M7 n’est plus à une charge de base.
    • La valeur d’indice de charge des machines sous tension (M6 et M7) augmente.
    • La capacité totale de réserve est encore supérieure à 10 000 en termes d’indice de charge.
  • La charge de session utilisateur diminue en raison de la fin de session
    • Une fois que les utilisateurs ont mis fin à leurs sessions ou que les sessions inactives dépassent le délai, la capacité libérée sur les machines M1 à M7 est réutilisée pour héberger des sessions démarrées par d’autres utilisateurs.
    • Lorsque la capacité totale de réserve augmente à un niveau supérieur à 10 000 en termes d’indice de charge, Autoscale met l’une des machines cloud (M6 à M7) à l’état de vidage. Par conséquent, les sessions lancées par d’autres utilisateurs ne sont plus dirigées vers cette machine (par exemple, M7) à moins que de nouvelles modifications ne se produisent ; par exemple, la charge de l’utilisateur augmente de nouveau ou d’autres machines cloud deviennent moins chargées.
  • La charge de session utilisateur diminue encore jusqu’à ce qu’une ou plusieurs machines cloud ne soient plus nécessaires
    • Une fois que toutes les sessions de la machine M7 sont terminées et que le délai de mise hors tension spécifié expire, Autoscale éteint la machine M7.
    • La valeur d’indice de charge de toutes les machines sous tension (M1 à M5) peut tomber à un niveau inférieur à 10 000.
    • La valeur d’indice de charge de la machine sous tension (M6) diminue.
  • La session utilisateur diminue encore jusqu’à ce qu’aucune machine cloud ne soit nécessaire
    • Même s’il n’y a pas de session utilisateur sur la machine M6, Autoscale ne l’éteint pas car elle sert de capacité de réserve.
    • Autoscale maintient la machine cloud restante (M6) sous tension en raison du tampon de capacité configuré. Cette machine attend de fournir un bureau à un utilisateur entrant.
    • Les sessions ne sont pas dirigées pour être hébergées sur la machine M6 tant que les machines locales ont une capacité disponible.
Autoscaling des machines balisées (cloud bursting)