Översikt över automatisk skalning med VM-skalningsuppsättningar i Azure
Gäller för: ✔️ Flexibla skalningsuppsättningar:heavy_check_mark: Enhetliga skalningsuppsättningar
En VM-skalningsuppsättning i Azure kan automatiskt öka eller minska antalet VM-instanser som kör ditt program. Det här automatiserade och elastiska beteendet minskar hanteringen för att övervaka och optimera programmets prestanda. Du skapar regler som definierar godtagbara prestanda för en positiv kundupplevelse. När de definierade tröskelvärdena uppfylls vidta regler för automatisk skalning åtgärder för att justera kapaciteten för din skalningsuppsättning. Du kan också schemalägga händelser för att automatiskt öka eller minska kapaciteten för din skalningsuppsättning vid fasta tidpunkter. Den här artikeln innehåller en översikt över vilka prestandamått som är tillgängliga och vilka åtgärder autoskalning kan utföra.
Fördelar med autoskalning
Om dina programkrav ökar, ökar även belastningen på de virtuella datorinstanserna i din skalningsuppsättning. Om den här ökade belastningen är konsekvent istället för bara en kortsiktig efterfrågan, kan du konfigurera regler för automatisk skalning för att öka antalet virtuella datorinstanser i skalningsuppsättningen.
Anteckning
När du använder automatiska instansreparationer för din skalningsuppsättning kan det maximala antalet instanser i skalningsuppsättningen vara 200. Läs mer om automatiska instansreparationer.
När dessa virtuella datorinstanser skapas och dina program distribueras, börjar skalningsuppsättningen att distribuera trafik till dem via lastbalanseraren. Du styr vilka mått som ska övervakas, till exempel CPU eller minne, hur länge programbelastningen måste uppfylla ett visst tröskelvärde och hur många VM-instanser som ska läggas till i skalningsuppsättningen.
På kvällar eller helger, kan efterfrågan på ditt program minska. Om den här minskade belastningen är konsekvent över en tidsperiod, kan du konfigurera regler för automatisk skalning för att minska antalet virtuella datorinstanser i skalningsuppsättningen. Den här åtgärden för skala in minskar kostnaden för att köra din skalningsuppsättningen eftersom du bara köra de antal instanser som krävs för att uppfylla den aktuella efterfrågan.
Använda värdbaserade mått
Du kan skapa regler för automatisk skalning som inbyggda värdmått som är tillgängliga från dina VM-instanser. Värdmått ger dig insyn i prestandan för de virtuella datorinstanserna i en skalningsuppsättning utan att du behöver installera eller konfigurera ytterligare agenter och datasamlingar. Regler för automatisk skalning som använder dessa mått kan skala ut eller i antalet virtuella datorinstanser som svar på cpu-användning, minne eller diskåtkomst.
Regler för automatisk skalning som använder värdbaserade mått kan skapas med något av följande verktyg:
Om du vill skapa regler för automatisk skalning som använder mer detaljerade prestandamått kan du installera och konfigurera Azure Diagnostics-tillägget på VM-instanser eller konfigurera ditt program med App Insights.
Regler för automatisk skalning som använder värdbaserade mått, mått för virtuella gästdator med Azure-diagnostiktillägget och App Insights kan använda följande konfigurationsinställningar.
Måttkällor
Regler för automatisk skalning kan använda mått från någon av följande källor:
| Måttkälla | Användningsfall |
|---|---|
| Aktuell skalningsuppsättning | För värdbaserade mått som inte kräver att ytterligare agenter installeras eller konfigureras. |
| Lagringskonto | Azure-diagnostiktillägget skriver prestandamått till Azure Storage som sedan används för att utlösa regler för autoskalning. |
| Service Bus-kö | Ditt program eller andra komponenter kan överföra meddelanden i en Azure Service Bus kö för att utlösa regler. |
| Application Insights | Ett instrumentationspaket installerat i ditt program som strömmar mått direkt från appen. |
Kriterier för autoskalningsregel
Följande värdbaserade mått är tillgängliga för användning när du skapar regler för automatisk skalning. Om du använder Azure-diagnostiktillägget eller App Insights definierar du vilka mått som ska övervakas och användas med regler för automatisk skalning.
| Måttnamn |
|---|
| Processorprocentandel |
| Nätverk – inkommande |
| Nätverk – utgående |
| Byte för diskläsning |
| Diskskrivningsbyte |
| Diskläsningsåtgärder/s |
| Diskskrivningsåtgärder/s |
| Återstående CPU-krediter |
| Förbrukade CPU-krediter |
När du skapar autoskalningsregler för att övervaka ett visst mått tittar reglerna på någon av följande aggregeringsåtgärder för mått:
| Sammansättningstyp |
|---|
| Medelvärde |
| Minimum |
| Maximal |
| Totalt |
| Sista |
| Antal |
Reglerna för autoskalning utlöses sedan när måtten jämförs med det definierade tröskelvärdet med någon av följande operatorer:
| Operator |
|---|
| Större än |
| Större än eller lika med |
| Mindre än |
| Mindre än eller lika med |
| Lika med |
| Inte lika med |
Åtgärder när regler utlöses
När en autoskalningsregel utlöses kan din skalningsuppsättning automatiskt skalas på något av följande sätt:
| Skalningsåtgärd | Användningsfall |
|---|---|
| Öka antalet med | Ett fast antal virtuella datorinstanser som ska skapas. Användbart i skalningsuppsättningar med ett mindre antal virtuella datorer. |
| Öka procent med | En procentuell ökning av VM-instanser. Bra för större skalningsuppsättningar där en fast ökning kanske inte märkbart förbättrar prestandan. |
| Öka antalet till | Skapa så många VM-instanser som krävs för att uppnå en önskad maximal mängd. |
| Minska antalet med | Ett fast antal vm-instanser som ska tas bort. Användbart i skalningsuppsättningar med ett mindre antal virtuella datorer. |
| Minska procent med | En procentandelsbaserad minskning av VM-instanser. Bra för större skalningsuppsättningar där en fast minskning inte märkbart minskar resursförbrukningen och kostnaderna. |
| Minska antalet till | Ta bort så många VM-instanser som krävs för att uppnå en önskad minsta mängd. |
Mått för virtuella gästdatorn med Azure Diagnostics-tillägget
Azure Diagnostics-tillägget är en agent som körs i en virtuell datorinstans. Agenten övervakar och sparar prestandamått till Azure Storage. Dessa prestandamått innehåller mer detaljerad information om den virtuella datorns status, till exempel AverageReadTime för diskar eller PercentIdleTime för CPU. Du kan skapa regler för automatisk skalning baserat på en mer detaljerad medvetenhet om VM-prestanda, inte bara procentandelen cpu-användning eller minnesförbrukning.
Om du vill använda Azure Diagnostics-tillägget måste du skapa Azure Storage-konton för dina VM-instanser, installera Azure Diagnostics-agenten och sedan konfigurera de virtuella datorerna för att strömma specifika prestandaräknare till lagringskontot.
Mer information finns i artiklarna om att aktivera Azure Diagnostics-tillägget på en virtuell Linux-dator eller en virtuell Windows-dator.
Mått på programnivå med App Insights
Om du vill få bättre insyn i prestandan för dina program kan du använda Application Insights. Du installerar ett litet instrumentationspaket i ditt program som övervakar appen och skickar telemetri till Azure. Du kan övervaka mått, till exempel svarstider för ditt program, sidinläsningens prestanda och antalet sessioner. Dessa programmått kan användas för att skapa regler för automatisk skalning på en detaljerad och inbäddad nivå när du utlöser regler baserat på användbara insikter som kan påverka kundupplevelsen.
Mer information om App Insights finns i artikeln Vad är Application Insights.
Schemalagd autoskalning
Du kan också skapa regler för automatisk skalning baserat på scheman. Med de här schemabaserade reglerna kan du automatiskt skala antalet virtuella datorinstanser vid fasta tidpunkter. Med prestandabaserade regler kan det finnas en prestandapåverkan på programmet innan autoskalningsregler utlöses och de nya VM-instanserna etableras. Om du kan förutse denna efterfrågan etableras de ytterligare VM-instanserna och är redo för ytterligare kundanvändning och programbehov.
Följande exempel är scenarier som kan dra nytta av schemabaserade regler för automatisk skalning:
- Skala automatiskt ut antalet VM-instanser i början av arbetsdagen när kundernas efterfrågan ökar. I slutet av arbetsdagen skalar du automatiskt in antalet VM-instanser för att minimera resurskostnaderna över natten när programanvändningen är låg.
- Om en avdelning använder ett program mycket i vissa delar av månaden eller räkenskapscykeln skalar automatiskt antalet VM-instanser för att tillgodose deras ytterligare krav.
- När det finns en marknadsföringshändelse, befordran eller helgförsäljning kan du automatiskt skala antalet VM-instanser före förväntad kundefterfrågan.
Nästa steg
Du kan skapa regler för automatisk skalning som använder värdbaserade mått med något av följande verktyg:
I den här översikten beskrivs hur du använder regler för automatisk skalning för att skala horisontellt och öka eller minska antalet virtuella datorinstanser i din skalningsuppsättning. Du kan också skala lodrätt för att öka eller minska storleken på den virtuella datorinstansen. Mer information finns i Vertikal automatisk skalning med VM-skalningsuppsättningar.
Information om hur du hanterar dina VM-instanser finns i Hantera VM-skalningsuppsättningar med Azure PowerShell.
Information om hur du genererar aviseringar när reglerna för autoskalning utlöses finns i Använda autoskalningsåtgärder för att skicka e-post- och webhook-aviseringsmeddelanden i Azure Monitor. Du kan också använda granskningsloggar för att skicka e-post- och webhookaviseringar i Azure Monitor.