Autoskalning utlöses inte för rollen FileUploader
Den här artikeln innehåller information om felsökningsproblem där autoskalning inte utlöses för FileUploader-rollen, även om processoranvändningen i en av instanserna alltid ligger kvar på 100 %.
Ursprunglig produktversion: API Management Service
Ursprungligt KB-nummer: 4464899
Kommentar
I artikeln om felsökningsserien för Azure Cloud Service är det här det tredje scenariot i labbet. Kontrollera att du har följt instruktionerna för labbkonfiguration för kompressorprogrammet enligt detta för att återskapa problemet.
Symptom
En av rollinstanserna i FileUploader (FileUploader_IN_1) förbrukar 100 % CPU, medan processoranvändningen i de andra två instanserna är normal. Enligt labbinstruktionen har du skapat en autoskalningsregel för FileUploader-rollen baserat på måttet "Procent cpu", men den utlöses inte av någon anledning.
CPU-användning från alla instanser:
Felsökningssteg
Om du noga tittar på autoskalningsregeln som vi har konfigurerat, står det att regeln endast utlöses om den genomsnittliga CPU-användningen för alla rollinstanser är större än 90, vilket inte sker i det här fallet.
{
"properties": {
"name": "Autoscale based on CPU metric",
"enabled": true,
"targetResourceUri": "/subscriptions/{subscription-id}/resourceGroups/cloudservicelab/providers/Microsoft.ClassicCompute/domainNames/cloudservicelabs/slots/Production/roles/FileUploader",
"profiles": [
{
"name": "Auto created scale condition",
"capacity": {
"minimum": "1",
"maximum": "4",
"default": "1"
},
"rules": [
{
"scaleAction": {
"direction": "Increase",
"type": "ChangeCount",
"value": "1",
"cooldown": "PT10M"
},
"metricTrigger": {
"metricName": "Percentage CPU",
"metricNamespace": "",
"metricResourceUri": "/subscriptions/{subscription-id}/resourceGroups/cloudservicelab/providers/Microsoft.ClassicCompute/domainNames/cloudservicelabs/slots/Production/roles/FileUploader",
"operator": "GreaterThan",
"statistic": "Average",
"threshold": 90,
"timeAggregation": "Average",
"timeGrain": "PT5M",
"timeWindow": "PT30M"
}
}
]
}
],
"notifications": [],
"targetResourceLocation": "southcentralus"
}
}
Konfigurera diagnostik för Azure Cloud Services och kontrollera processoranvändningen för varje rollinstans från WADPerformanceCountersTable. Du kan också hämta måttdata för molntjänstrollen med hjälp av det här REST-API:et eller PowerShell.
Du kan också övervaka den genomsnittliga CPU-användningen av Rollen FileUploader från fliken Mått i molntjänstresursen. Så som du kan se i diagrammet nedan är den genomsnittliga CPU-användningen cirka 33,35 % som ligger ganska under tröskelvärdet.
Så den nedre raden är regler för automatisk skalning som använder en identifieringsmekanism baserat på ett uppmätt utlösarattribut (till exempel CPU-användning) som använder ett aggregerat värde över tid, i stället för omedelbara värden, för att utlösa en autoskalningsåtgärd. Som standard är aggregeringen ett medelvärde av värdena för alla instanser av rollen. Så om det finns flera instanser rapporterar varje virtuell PaaS-dator ett tal för procentandel cpu. För att konsolidera dessa beräknar molntjänstrollen "statistiken" för alla instanser. Om det till exempel finns tre instanser i en molntjänstroll, en som körs med 30 % CPU, en andra på 60 % och en annan som körs med 90 % CPU, skulle rollen generera en genomsnittlig CPU-användning på 60 %.
Kontakta oss för att få hjälp
Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.