Métriques courantes pour la mise à l’échelle automatique d’Azure Monitor
La mise à l’échelle automatique Azure Monitor vous permet de faire un scale-in ou scale-out du nombre des instances exécutées en fonction des données de télémétrie ou des métriques. La mise à l’échelle peut être basée sur n’importe quelle métrique, même les métriques d’une autre ressource. Par exemple, mettez à l’échelle un groupe de machines virtuelles identiques en fonction de la quantité de trafic sur un pare-feu.
Cet article décrit les métriques couramment utilisées pour déclencher des événements de mise à l’échelle.
La mise à l’échelle automatique Azure prend en charge de nombreux types de ressources. Pour plus d’informations sur les ressources prises en charge, consultez Ressources prises en charge par la mise à l’échelle automatique.
Pour toutes les ressources, vous pouvez obtenir la liste des métriques disponibles en utilisant PowerShell ou Azure CLI
Get-AzMetricDefinition -ResourceId <resource_id>
az monitor metrics list-definitions --resource <resource_id>
Calcul des métriques pour les machines virtuelles basées sur Resource Manager
Par défaut, les machines virtuelles et les groupes de machines virtuelles identiques basés sur Azure Resource Manager émettent des métriques de base (au niveau de l’hôte). Par ailleurs, quand vous configurez la collecte de données de diagnostic pour une machine virtuelle et un groupe de machines virtuelles identiques Azure, l’extension Diagnostics Azure émet également les compteurs de performances du système d’exploitation invité. Ces compteurs sont communément appelés « métriques du système d’exploitation invité ». Vous utilisez toutes ces métriques dans les règles de mise à l’échelle automatique.
Si vous utilisez des groupes de machines virtuelles identiques et que vous ne voyez pas une métrique particulière dans la liste, elle est probablement désactivée dans votre extension Diagnostics.
Si une métrique en particulier n’est pas en cours d’échantillonnage ou de transfert vers la fréquence souhaitée, vous pouvez mettre à jour la configuration des diagnostics.
Si l’un des deux cas ci-dessus s’applique, consultez Utiliser PowerShell pour activer Diagnostics Azure sur une machine virtuelle exécutant Windows pour savoir comment configurer et mettre à jour votre extension Diagnostics de machine virtuelle Azure afin d’activer la métrique. Cet article inclut également un exemple de fichier de configuration de diagnostics.
Métriques de l’hôte pour les machines virtuelles Windows et Linux basées sur Resource Manager
Les métriques de niveau hôte suivantes sont émises par défaut pour les machines virtuelles et groupes de machines virtuelles identiques Azure dans les instances Windows et Linux. Ces métriques décrivent votre machine virtuelle Azure, mais sont collectées à partir de l’hôte de la machine virtuelle Azure plutôt que via l’agent installé sur la machine virtuelle invitée. Vous pouvez utiliser ces métriques dans les règles de mise à l’échelle automatique.
- Métriques de l’hôte pour les machines virtuelles Windows et Linux basées sur Resource Manager
- Métriques de l’hôte pour les groupes de machines virtuelles identiques Windows et Linux basés sur Resource Manager
Métriques de système d’exploitation invité pour les machines virtuelles Windows basées sur Resource Manager
Lorsque vous créez une machine virtuelle dans Azure, les diagnostics sont effectués grâce à l’extension Diagnostics. L’extension Diagnostics émet un ensemble de métriques extraites de la machine virtuelle. Cela signifie que vous pouvez appliquer une mise à l’échelle automatique en utilisant des métriques qui ne sont pas émises par défaut.
Vous pouvez créer une alerte pour les métriques suivantes :
Nom de métrique | Unité |
---|---|
\Processor(_Total)% temps processeur | Pourcentage |
\Processor(_Total)% temps privilégié | Pourcentage |
\Processor(_Total)% temps utilisateur | Pourcentage |
\Processor Information(_Total)\Fréquence du processeur | Count |
\System\Processus | Count |
\Process(_Total)\Nombre de threads | Count |
\Process(_Total)\Nombre de handles | Count |
\Memory% octets de mémoire engagés utilisés | Pourcentage |
\Memory\Octets disponibles | Octets |
\Memory\Octets validés | Octets |
\Memory\Limite de mémoire dédiée | Octets |
\Memory\Octets de réserve paginée | Octets |
\Memory\Octets de réserve non paginée | Octets |
\PhysicalDisk(_Total)% temps disque | Pourcentage |
\PhysicalDisk(_Total)% temps lecture du disque | Pourcentage |
\PhysicalDisk(_Total)% temps écriture du disque | Pourcentage |
\PhysicalDisk(_Total)\Disk Transfers/sec | CountPerSecond |
\PhysicalDisk(_Total)\Lectures disque/s | CountPerSecond |
\PhysicalDisk(_Total)\Écritures disque/s | CountPerSecond |
\PhysicalDisk(_Total)\Octets disque/s | BytesPerSecond |
\PhysicalDisk(_Total)\Lectures disque, octets/s | BytesPerSecond |
\PhysicalDisk(_Total)\Écritures disque, octets/s | BytesPerSecond |
\PhysicalDisk(_Total)\Longueur moyenne Longueur de file d'attente de disque | Count |
\PhysicalDisk(_Total)\Longueur moyenne de file d’attente lecture disque | Count |
\PhysicalDisk(_Total)\Longueur moyenne de file d’attente écriture disque | Count |
\LogicalDisk(_Total)% espace libre | Pourcentage |
\LogicalDisk(_Total)\Mégaoctets libres | Count |
Métriques de SE invité pour les machines virtuelles Linux
Lorsque vous créez une machine virtuelle dans Azure, les diagnostics sont activés par défaut grâce à l’extension Diagnostics.
Vous pouvez créer une alerte pour les métriques suivantes :
Nom de métrique | Unité |
---|---|
\Mémoire\Mémoire disponible | Octets |
\Mémoire\Pourcentage de mémoire disponible | Pourcentage |
\Mémoire\Mémoire utilisée | Octets |
\Mémoire\Pourcentage de mémoire utilisée | Pourcentage |
\Mémoire\Pourcentage de mémoire utilisée par le cache | Pourcentage |
\Mémoire\Pages par seconde | CountPerSecond |
\Mémoire\Pages lues par seconde | CountPerSecond |
\Mémoire\Pages écrites par seconde | CountPerSecond |
\Mémoire\Échanges disponibles | Octets |
\Mémoire\Pourcentage d’échanges disponibles | Pourcentage |
\Mémoire\Échanges utilisés | Octets |
\Mémoire\Pourcentage d’échanges utilisés | Pourcentage |
\Processeur\Pourcentage de temps d’inactivité | Pourcentage |
\Processeur\Pourcentage de temps d’utilisateur | Pourcentage |
\Processeur\Pourcentage de temps d’efficacité | Pourcentage |
\Processeur\Pourcentage de temps privilégié | Pourcentage |
\Processeur\Pourcentage de temps d’interruption | Pourcentage |
\Processeur\Pourcentage de temps d’appels de procédure différés (DPC) | Pourcentage |
\Processeur\Pourcentage de temps de processeur | Pourcentage |
\Processeur\Pourcentage de temps d’attente | Pourcentage |
\Disque physique\Octets par seconde | BytesPerSecond |
\Disque physique\Octets lus par seconde | BytesPerSecond |
\Disque physique\Octets écrits par seconde | BytesPerSecond |
\Disque physique\Transferts par seconde | CountPerSecond |
\Disque physique\Lectures par seconde | CountPerSecond |
\Disque physique\Écritures par seconde | CountPerSecond |
\Disque physique\Temps de lecture moyen | Secondes |
\Disque physique\Temps d’écriture moyen | Secondes |
\Disque physique\Temps de transfert moyen | Secondes |
\Disque physique\Longueur moyenne de la file d’attente du disque | Count |
\Interface réseau\Octets transmis | Octets |
\Interface réseau\Octets reçus | Octets |
\Interface réseau\Paquets transmis | Count |
\Interface réseau\Paquets reçus | Count |
\Interface réseau\Total des octets | Octets |
\Interface réseau\Total des erreurs Rx | Count |
\Interface réseau\Total des erreurs Tx | Count |
\Interface réseau\Total des collisions | Count |
Métriques App Service (batterie de serveurs) couramment utilisées
Vous pouvez également effectuer la mise à l’échelle en fonction des métriques de serveur web courantes, telles que la longueur de file d’attente HTTP. Son nom de métrique est HttpQueueLength. La section suivante liste les métriques de batterie de serveurs (App Service) disponibles.
Métriques Web Apps
Pour Web Apps, vous pouvez envoyer une alerte ou faire une mise à l’échelle en fonction de ces métriques.
Nom de métrique | Unité |
---|---|
CpuPercentage | Pourcentage |
MemoryPercentage | Pourcentage |
DiskQueueLength | Count |
HttpQueueLength | Count |
BytesReceived | Octets |
BytesSent | Octets |
Métriques couramment utilisées dans Azure Storage
Vous pouvez procéder à une mise à l’échelle en fonction de la longueur de la file d’attente Stockage Azure, qui correspond au nombre de messages dans la file d’attente Stockage. La longueur de file d’attente Stockage est une métrique spéciale et le seuil appliqué sera le nombre de messages par instance. Par exemple, si vous avez deux instances et que le seuil est défini sur 100, la mise à l’échelle aura lieu lorsque la file d’attente contiendra 200 messages. Cela peut être 100 messages par instance, 120 + 80 ou toute autre combinaison qui correspond à 200 ou plus.
Configurez ce paramètre dans le panneau Paramètres du portail Azure. Pour les groupes de machines virtuelles identiques, vous pouvez mettre à jour le paramètre de mise à l’échelle automatique dans le modèle Resource Manager afin d’utiliser metricName
comme ApproximateMessageCount
, puis passer l’ID de la file d’attente de stockage comme metricResourceUri
.
Par exemple, avec un compte Stockage Azure classique, le paramètre de mise à l’échelle automatique metricTrigger
peut inclure :
"metricName": "ApproximateMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RES_GROUP_NAME/providers/Microsoft.ClassicStorage/storageAccounts/STORAGE_ACCOUNT_NAME/services/queue/queues/QUEUE_NAME"
Pour un compte Stockage Azure (non classique), le paramètre metricTrigger
peut inclure :
"metricName": "ApproximateMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RES_GROUP_NAME/providers/Microsoft.Storage/storageAccounts/STORAGE_ACCOUNT_NAME/services/queue/queues/QUEUE_NAME"
Métriques Service Bus généralement utilisées
Vous pouvez procéder à une mise à l’échelle en fonction de la longueur de la file d’attente Azure Service Bus, autrement dit en fonction du nombre de messages présents dans cette file d’attente. La longueur de la file d’attente Service Bus est une métrique particulière. Le seuil correspond au nombre de messages par instance. Par exemple, si vous avez deux instances et que le seuil est défini sur 100, la mise à l’échelle a lieu quand le nombre total de messages dans la file d’attente est 200. Cela peut être 100 messages par instance, 120 + 80 ou toute autre combinaison qui correspond à 200 ou plus.
Pour Virtual Machine Scale Sets, vous pouvez mettre à jour le paramètre de mise à l’échelle automatique dans le modèle Resource Manager afin d’utiliser metricName
comme ActiveMessageCount
, puis passer l’ID de la file d’attente Service Bus comme metricResourceUri
.
"metricName": "ActiveMessageCount",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/RES_GROUP_NAME/providers/Microsoft.ServiceBus/namespaces/SB_NAMESPACE/queues/QUEUE_NAME"
Remarque
Pour Service Bus, le concept de groupe de ressources n’existe pas. Azure Resource Manager crée un groupe de ressources par défaut par région. Le groupe de ressources est généralement affiché au format « Default-ServiceBus-[région] ». Par exemple : Default-ServiceBus-EastUS, Default-ServiceBus-WestUS, et Default-ServiceBus-AustraliaEast.