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 les pools d’hôtes personnels, vous pouvez envoyer des journaux de diagnostic à un compte de stockage ou un Event Hub pour la mise à l’échelle automatique. Pour découvrir plus d’informations, 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.11. 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 :
Connectez-vous au portail Azure.
Dans la barre de recherche, tapez Azure Virtual Desktop et sélectionnez l’entrée de service correspondante.
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.
Dans la page de présentation du pool d’hôtes, sélectionnez Paramètres de diagnostic.
Sélectionnez Ajouter un paramètre de diagnostic ou sélectionnez un paramètre de diagnostic existant à modifier.
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
Pour Détails de la destination, sélectionnez Envoyer à l’espace de travail Log Analytics.
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 :
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.
Dans la page de présentation de l’espace de travail, sélectionnez Paramètres de diagnostic.
Sélectionnez Modifier le paramètre.
Vérifiez que les catégories suivantes sont activées.
- Point de contrôle
- Error
- Gestion
- Flux
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.
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 :
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.
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.
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 :
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 :
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.
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.
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.
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.
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
Contenu connexe
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.