Partage via


Analyser des opérations de mise à l’échelle automatique avec Insights dans Azure Virtual Desktop

La mise à l’échelle automatique vous permet d’effectuer un scale-up ou un scale-down de vos hôtes de session de machines virtuelles dans un pool d’hôtes pour optimiser les coûts de déploiement. Les données de diagnostic de mise à l’échelle automatique, intégrées à Insights dans Azure Virtual Desktop, vous permettent d’analyser les opérations de mise à l’échelle, d’identifier les problèmes qui doivent être résolus et de reconnaître les opportunités d’optimisation de la configuration de votre plan de mise à l’échelle pour réduire les coûts.

Pour en savoir plus sur la mise à l’échelle automatique, consultez Plans de mise à l’échelle automatique et exemples de scénarios, et pour plus d’informations sur Insights dans Azure Virtual Desktop, consultez Activer Insights pour analyser Azure Virtual Desktop.

Remarque

Vous pouvez analyser les opérations de mise à l’échelle automatique avec Insights uniquement avec des pools d’hôtes groupés. Pour obtenir des informations sur les pool d’hôtes personnels, consultez Configurer des diagnostics pour la mise à l’échelle automatique dans Azure Virtual Desktop.

Prérequis

Avant de pouvoir analyser les opérations de mise à l’échelle automatique avec Insights, vous avez besoin des éléments suivants :

  • Un pool d’hôtes groupé avec un plan de mise à l’échelle attribué. Les pools d’hôtes personnels ne sont pas pris en charge.

  • Insights configuré pour votre pool d’hôtes et son espace de travail associé. Pour savoir comment configurer Insights, consultez Activer Insights pour analyser Azure Virtual Desktop.

  • Un compte Azure qui reçoit les rôles de contrôle d’accès en fonction du rôle (RBAC) suivants, en fonction de votre scénario :

    Scénario Rôles RBAC Étendue
    Configurer les paramètres de diagnostic Contributeur de virtualisation des services Bureau Attribué au groupe de ressources ou à l’abonnement pour vos pools d’hôtes, espaces de travail et hôtes de session.
    Afficher et interroger les données Lecteur de virtualisation des services Bureau

    Lecteur Log Analytics
    - Lecteur de virtualisation de bureau attribué au groupe de ressources ou à l’abonnement où se trouvent les pools d’hôtes, les espaces de travail et les hôtes de session.

    - Lecteur Log Analytics attribué à n’importe quel espace de travail Log Analytics utilisé pour Insights Azure Virtual Desktop.1

    1. Vous pouvez également créer un rôle personnalisé pour réduire l’étendue de l’affectation sur l’espace de travail Log Analytics. Pour plus d’informations, consultez Gérer l’accès aux espaces de travail Log Analytics.

Configurer les paramètres de diagnostic et vérifier la configuration du classeur Insights

Tout d’abord, vous devez vous assurer que les paramètres de diagnostic sont configurés pour envoyer les journaux nécessaires à partir de votre pool d’hôtes et de votre espace de travail à votre espace de travail Log Analytics.

Activer les journaux de mise à l’échelle automatique pour un pool d’hôtes

Outre les journaux de pool d’hôtes existants que vous envoyez déjà à un espace de travail Log Analytics, vous devez également envoyer des journaux de mise à l’échelle automatique pour un pool d’hôtes :

  1. Connectez-vous au portail Azure.

  2. Dans la barre de recherche, tapez Azure Virtual Desktop et sélectionnez l’entrée de service correspondante.

  3. Dans la page de présentation d’Azure Virtual Desktop, sélectionnez Pools d’hôtes, puis sélectionnez le pool d’hôtes groupé pour lequel vous souhaitez activer les journaux de mise à l’échelle automatique.

  4. Dans la page de présentation du pool d’hôtes, sélectionnez Paramètres de diagnostic.

  5. Sélectionnez Ajouter un paramètre de diagnostic ou sélectionnez un paramètre de diagnostic existant à modifier.

  6. Sélectionnez au minimum les catégories suivantes. Si vous avez déjà sélectionné certaines de ces catégories pour ce pool d’hôtes dans le cadre de ce paramètre de diagnostic ou d’un paramètre existant, ne les sélectionnez pas à nouveau, sinon vous obtenez une erreur lorsque vous enregistrez le paramètre de diagnostic.

    • Point de contrôle
    • Error
    • Gestion
    • Connection
    • HostRegistration
    • AgentHealthStatus
    • Journaux de mise à l’échelle automatique pour les pool d’hôtes groupés
  7. Pour Détails de la destination, sélectionnez Envoyer à l’espace de travail Log Analytics.

  8. Sélectionnez Enregistrer.

Vérifier les journaux de l’espace de travail

Vérifiez que vous envoyez déjà les journaux nécessaires pour un espace de travail à un espace de travail Log Analytics :

  1. Dans la page de présentation d’Azure Virtual Desktop, sélectionnez Espaces de travail, puis sélectionnez l’espace de travail associé au pool d’hôtes que vous analysez.

  2. Dans la page de présentation de l’espace de travail, sélectionnez Paramètres de diagnostic.

  3. Sélectionnez Modifier le paramètre.

  4. Vérifiez que les catégories suivantes sont activées.

    • Point de contrôle
    • Error
    • Gestion
    • Flux
  5. Pour Détails de destination, vérifiez que vous envoyez des données au même espace de travail Log Analytics que le pool d’hôtes.

  6. Si vous avez apporté des modifications, sélectionnez Enregistrer.

Vérifier la configuration du classeur Insights

Vous devez vérifier que votre classeur Insights est configuré correctement pour votre pool d’hôtes :

  1. Dans la page de présentation d’Azure Virtual Desktop, sélectionnez Pools d’hôtes, puis sélectionnez le pool d’hôtes groupé que vous analysez.

  2. Dans la page de présentation du pool d’hôtes, sélectionnez Insights si vous utilisez l’agent Azure Monitor sur vos hôtes de session, ou Insights (hérité) si vous utilisez l’agent Log Analytics sur vos hôtes de session.

  3. Vérifiez qu’il n’existe pas de problèmes de configuration en suspens. Si c’est le cas, le message suivant s’affiche :

    • Azure Monitor n’est pas configuré pour les hôtes de la session.
    • Azure Monitor n’est pas configuré pour le pool d’hôtes AVD sélectionné.
    • Il existe des hôtes de session qui n’envoient pas de données à l’espace de travail Log Analytics attendu.

    Vous devez terminer la configuration dans le classeur approprié pour résoudre ces problèmes. Pour plus d’informations, consultez Activer Insights pour analyser Azure Virtual Desktop. En l’absence de problèmes de configuration, Insights doit ressembler à l’image suivante :

    Capture d’écran montrant la vue d’ensemble d’Insights pour un pool d’hôtes.

Afficher les aperçus de mise à l’échelle automatique

Après avoir configuré vos paramètres de diagnostic et vérifié la configuration de votre classeur Insights, vous pouvez afficher les aperçus de mise à l’échelle automatique :

  1. Dans la page de présentation d’Azure Virtual Desktop, sélectionnez Pools d’hôtes, puis sélectionnez le pool d’hôtes groupé pour lequel vous souhaitez afficher les aperçus de mise à l’échelle automatique.

  2. Dans la page de présentation du pool d’hôtes, sélectionnez Insights si vous utilisez l’agent Azure Monitor sur vos hôtes de session, ou Insights (hérité) si vous utilisez l’agent Log Analytics sur vos hôtes de session.

  3. Sélectionnez Mise à l’échelle automatique dans la ligne d’onglets. Selon la largeur de votre affichage, vous devez peut-être sélectionner le bouton points de suspension ... bouton pour afficher la liste complète avec la mise à l’échelle automatique.

    Capture d’écran montrant l’onglet Vue d’ensemble d’Insights pour un pool d’hôtes avec les points de suspension sélectionnés afin d’afficher la liste complète avec la mise à l’échelle automatique.

  4. Insights affiche des informations concernant les opérations de mise à l’échelle automatique de votre pool d’hôtes, telles qu’un graphique du changement de l’état d’alimentation de vos hôtes de session dans le pool d’hôtes au fil du temps et des informations récapitulatives.

    Capture d’écran montrant l’onglet Mise à l’échelle automatique d’Insights pour un pool d’hôtes.

Requêtes pour les données de mise à l’échelle automatique dans Log Analytics

Pour plus d’informations sur les opérations de mise à l’échelle automatique, vous pouvez utiliser des requêtes d’exécution sur les données dans Log Analytics. Les données sont écrites dans la table WVDAutoscaleEvaluationPooled. Les sections suivantes contiennent le schéma et quelques exemples de requêtes. Pour découvrir comment exécuter des requêtes dans Log Analytics, consultez le tutoriel Log Analytics.

Schéma WVDAutoscaleEvaluationPooled

Le tableau suivant détaille le schéma de la table WVDAutoscaleEvaluationPooled, qui contient les résultats d’une évaluation du plan de mise à l’échelle automatique sur un pool d’hôtes. Les informations incluent les actions effectuées par la mise à l’échelle automatique sur les hôtes de session, telles que leur démarrage ou leur libération, et la raison pour laquelle ces actions ont été effectuées. Les entrées qui commencent par Config contiennent les valeurs de configuration du plan de mise à l’échelle pour une phase de planification de mise à l’échelle automatique. Si la valeur ResultType est Échec, joignez-vous à la table WVDErrors à l’aide de CorrelationId pour obtenir plus de détails.

Nom Type Description
ActiveSessionHostCount Int Nombre d’hôtes de session acceptant les connexions utilisateur.
ActiveSessionHostsPercent Double Pourcentage d’hôtes de session dans le pool d’hôtes considéré comme actifs par la mise à l’échelle automatique.
ConfigCapacityThresholdPercent Double Pourcentage de seuil de capacité.
ConfigMinActiveSessionHostsPercent Double Pourcentage minimal des hôtes de session qui doivent être actifs.
ConfigScheduleName Chaîne Nom de la planification utilisée dans l’évaluation.
ConfigSchedulePhase Chaîne Planification de la phase au moment de l’évaluation.
CorrelationId Chaîne GUID généré pour cette évaluation de mise à l’échelle automatique.
ExcludedSessionHostCount Int Nombre d’hôtes de session exclus de la gestion de la mise à l’échelle automatique.
MaxSessionLimitPerSessionHost Int Valeur MaxSessionLimit définie sur le pool d’hôtes. Cette valeur correspond au nombre maximal de sessions utilisateur autorisées par hôte de session.
Properties Dynamique Informations supplémentaires
ResultType Chaîne État de cet événement d’évaluation.
ScalingEvaluationStartTime Date/Heure Timestamp (UTC) au démarrage de l’évaluation de la mise à l’échelle automatique.
ScalingPlanResourceId Chaîne ID de ressource du plan de la mise à l’échelle automatique.
ScalingReasonMessage Chaîne Actions que la mise à l’échelle automatique a décidé d’effectuer et pourquoi les elle a effectué.
SessionCount Int Nombre de sessions utilisateur. Seules les sessions utilisateur des hôtes de session considérées comme actives par la mise à l’échelle automatique sont incluses.
SessionOccupancyPercent Double Pourcentage de capacité d’hôte de session occupée par les sessions utilisateur.
TimeGenerated Date/Heure Timestamp (UTC) généré par cet événement.
TotalSessionHostCount Int Nombre d’hôtes de session dans le pool d’hôtes.
UnhealthySessionHostCount Int Nombre d’hôtes de session dans un état défectueux.

Exemple de données

La requête suivante retourne les 10 lignes de données les plus récentes pour la mise à l’échelle automatique :

WVDAutoscaleEvaluationPooled
| take 10

Évaluations ayant échoué avec WVDErrors

La requête suivante met en corrélation les tables WVDAutoscaleEvaluationPooled et WVDErrors, et retourne des entrées où la colonne ServiceError dans WVDErrors a la valeur false :

La requête suivante retourne les évaluations de mise à l’échelle automatique qui ont échoué, y compris celles qui ont partiellement échoué. La requête se joint également à WVDErrors pour fournir plus de détails sur l’échec, le cas échéant. Les entrées correspondantes dans WVDErrors contiennent uniquement les résultats où ServiceError a la valeur false :

WVDAutoscaleEvaluationPooled
| where ResultType != "Succeeded"
| join kind=leftouter WVDErrors
    on CorrelationId
| order by _ResourceId asc, TimeGenerated asc, CorrelationId, TimeGenerated1 asc

Opérations de démarrage, de libération et de déconnexion forcée

La requête suivante retourne le nombre de tentatives d’opérations de démarrage de l’hôte de session, de libération de l’hôte de session et de déconnexion forcée de session utilisateur par pool d’hôtes, le nom de planification, la phase et le jour de planification :

WVDAutoscaleEvaluationPooled
| where ResultType == "Succeeded"
| extend properties = parse_json(Properties)
| extend BeganStartVmCount = toint(properties.BeganStartVmCount)
| extend BeganDeallocateVmCount = toint(properties.BeganDeallocateVmCount)
| extend BeganForceLogoffOnSessionHostCount = toint(properties.BeganForceLogoffOnSessionHostCount)
| summarize sum(BeganStartVmCount), sum(BeganDeallocateVmCount), sum(BeganForceLogoffOnSessionHostCount) by _ResourceId, bin(TimeGenerated, 1d), ConfigScheduleName, ConfigSchedulePhase
| order by _ResourceId asc, TimeGenerated asc, ConfigScheduleName, ConfigSchedulePhase asc

Occupation maximale de session et hôtes de session actifs

La requête suivante retourne le pourcentage maximal d’occupation de session, le nombre de sessions, le pourcentage d’hôtes de session active et le nombre d’hôtes de session actif par pool d’hôtes, le nom de planification, la phase et le jour de planification :

WVDAutoscaleEvaluationPooled
| where ResultType == "Succeeded"
| summarize max(SessionOccupancyPercent), max(SessionCount), max(ActiveSessionHostsPercent), max(ActiveSessionHostCount) by _ResourceId, bin(TimeGenerated, 1d), ConfigScheduleName, ConfigSchedulePhase
| order by _ResourceId asc, TimeGenerated asc, ConfigScheduleName, ConfigSchedulePhase asc

Pour plus d’informations sur l’heure à laquelle les données de journal deviennent disponibles après la collecte, consultez Heure d’ingestion des données de journal dans Azure Monitor.