Planer för automatisk skalning och exempelscenarier i Azure Virtual Desktop

Med autoskalning kan du skala upp eller ned dina virtuella sessionsvärddatorer i en värdpool enligt schemat för att optimera distributionskostnaderna.

Kommentar

  • Azure Virtual Desktop (klassisk) stöder inte autoskalning.
  • Autoskalning stöds inte på Azure Virtual Desktop för Azure Stack HCI.
  • Du kan inte använda sessionsvärdar för automatisk skalning och skalning med hjälp av Azure Automation i samma värdpool. Du måste använda det ena eller det andra.
  • Autoskalning är tillgängligt i Azure och Azure Government i samma regioner som du kan skapa värdpooler i.

För bästa resultat rekommenderar vi att du använder autoskalning med virtuella datorer som du distribuerade med ARM-mallar (Azure Virtual Desktop Azure Resource Manager) eller verktyg från första part från Microsoft.

Så här fungerar en skalningsplan

Tänk på följande innan du skapar din plan:

  • Du kan tilldela en skalningsplan till en eller flera värdpooler av samma värdpoolstyp. Skalningsplanens scheman tillämpas på alla tilldelade värdpooler.

  • Du kan bara associera en skalningsplan per värdpool. Om du tilldelar en enda skalningsplan till flera värdpooler kan dessa värdpooler inte tilldelas till en annan skalningsplan.

  • Viloläge (förhandsversion) är tillgängligt för personliga värdpooler. Mer information finns i Viloläge på virtuella datorer.

  • En skalningsplan kan bara användas i den konfigurerade tidszonen.

  • En skalningsplan kan ha ett eller flera scheman. Till exempel olika scheman under vardagar jämfört med helgen.

  • Se till att du förstår användningsmönster innan du definierar ditt schema. Du måste schemalägga runt följande tider på dagen:

    • Ramp-up: början av dagen, när användningen tar fart.
    • Rusningstid: den tid på dagen då användningen förväntas vara som högst.
    • Ramp-down: när användningen avsmalnas. Detta är vanligtvis när du stänger av dina virtuella datorer för att spara kostnader.
    • Låg belastning: den tid på dagen då användningen förväntas vara som lägst.
  • Skalningsplanen börjar gälla så snart du aktiverar den.

Tänk också på följande begränsningar:

  • Använd inte autoskalning i kombination med andra skalningsverktyg från Microsoft eller tredje part. Se till att du inaktiverar dem för de värdpooler som du tillämpar skalningsplanerna på.

  • För poolade värdpooler skriver autoskalning över tömningsläget, så se till att använda undantagstaggar när du uppdaterar virtuella datorer i värdpooler.

  • För poolade värdpooler ignorerar autoskalning befintliga belastningsutjämningsalgoritmer i värdpoolsinställningarna och tillämpar i stället belastningsutjämning baserat på schemakonfigurationen.

Exempelscenarier för autoskalning för poolbaserade värdpooler

I det här avsnittet finns det fyra scenarier som visar hur olika delar av autoskalning för poolbaserade värdpooler fungerar. I varje exempel finns det tabeller som visar värdpoolens inställningar och animerade visuella demonstrationer.

Kommentar

Mer information om vad parametertermerna betyder finns i vår ordlista för autoskalning.

Scenario 1: När aktiverar autoskalning virtuella datorer?

I det här scenariot visar vi att autoskalning kan aktivera virtuella sessionsvärddatorer (VM) i valfri fas i skalningsplanens schema när den använda värdpoolkapaciteten överskrider kapacitetströskeln.

Låt oss till exempel titta på följande konfiguration av värdpoolen enligt beskrivningen i den här tabellen:

Parameter Värde
Fas Upprampning
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 30 %
Minsta procentandel värdar 30 %
Tillgängliga sessionsvärdar 2
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 10
Användarsessioner 0
Använd värdpoolskapacitet 0 %

I början av den här fasen har autoskalning aktiverat två sessionsvärdar för att matcha den lägsta procentandelen värdar. Även om 30 % av sex inte är ett heltal avrundar autoskalning upp till närmaste heltal. Att ha två tillgängliga sessionsvärdar och en maximal sessionsgräns på fem sessioner per värd innebär att värdpoolen har en tillgänglig värdpoolskapacitet på 10. Eftersom det för närvarande inte finns några användarsessioner är den använda värdpoolskapaciteten 0 %.

När dagen börjar ska vi säga att tre användare loggar in och startar användarsessioner. Deras användarsessioner fördelas jämnt mellan de två tillgängliga sessionsvärdarna eftersom belastningsutjämningsalgoritmen är bredd först. Den tillgängliga värdpoolkapaciteten är fortfarande 10, men med de tre nya användarsessionerna är den använda värdpoolskapaciteten nu 30 %. Autoskalning aktiverar dock inte virtuella datorer förrän den använda värdpoolkapaciteten är större än kapacitetströskeln. I det här exemplet är kapacitetströskelvärdet 30 %, så autoskalning aktiverar inga virtuella datorer ännu.

Nu ser värdpoolens parametrar ut så här:

Parameter Värde
Fas Upprampning
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 30 %
Minsta procentandel värdar 30 %
Tillgängliga sessionsvärdar 2
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 10
Användarsessioner 3
Använd värdpoolskapacitet 30 %

När en annan användare loggar in och startar en session finns det nu fyra totalt antal användarsessioner fördelade över två sessionsvärdar. Den använda värdpoolskapaciteten är nu 40 %, vilket är större än kapacitetströskelvärdet. Därför aktiverar autoskalning en annan sessionsvärd för att ge den använda värdpoolkapaciteten mindre än eller lika med kapacitetströskelvärdet (30 %).

Sammanfattningsvis är här parametrarna när den använda värdpoolkapaciteten överskrider kapacitetströskeln:

Parameter Värde
Fas Upprampning
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 30 %
Minsta procentandel värdar 30 %
Tillgängliga sessionsvärdar 2
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 10
Användarsessioner 4
Använd värdpoolskapacitet 40 %

Här är parametrarna när autoskalning har aktiverat en annan sessionsvärd:

Parameter Värde
Fas Upprampning
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 30 %
Minsta procentandel värdar 30 %
Tillgängliga sessionsvärdar 3
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 15
Användarsessioner 4
Använd värdpoolskapacitet 27%

Om du aktiverar en annan sessionsvärd finns det nu tre tillgängliga sessionsvärdar i värdpoolen. Med den maximala sessionsgränsen fortfarande fem har den tillgängliga värdpoolkapaciteten gått upp till 15. Eftersom den tillgängliga värdpoolskapaciteten ökade har kapaciteten för den använda värdpoolen sjunkit till 27 %, vilket är under tröskelvärdet för 30 % kapacitet.

När en annan användare loggar in finns det nu fem användarsessioner spridda över tre tillgängliga sessionsvärdar. Den använda värdpoolskapaciteten är nu 33 %, vilket är över tröskelvärdet för 30 % kapacitet. Om du överskrider kapacitetströskeln aktiveras autoskalning för att aktivera en annan sessionsvärd.

Eftersom vårt exempel är i ramp-up-fasen kommer nya användare sannolikt att fortsätta att logga in. När fler användare anländer blir mönstret tydligare:

Totalt antal användarsessioner Antal tillgängliga sessionsvärdar Tillgänglig värdpoolskapacitet Kapacitetströskel Använd värdpoolskapacitet Aktiverar autoskalning en annan sessionsvärd?
5 3 15 30 % 33 % Ja
5 4 20 30 % 25 % Nej
6 4 20 30 % 30 % Nej
7 4 20 30 % 35 % Ja
7 5 25 30 % 28% Nej

Som den här tabellen visar aktiverar autoskalning endast nya sessionsvärdar när kapaciteten för den använda värdpoolen överskrider kapacitetströskeln. Om den använda värdpoolskapaciteten ligger på eller under kapacitetströskelvärdet aktiveras inte nya sessionsvärdar automatiskt.

Följande animering är en visuell sammanfattning av vad vi precis gick igenom i scenario 1.

A visual recap of Scenario 1.

Scenario 2: När inaktiverar autoskalning virtuella datorer?

I det här scenariot visar vi att automatisk skalning inaktiverar sessionsvärdar när alla följande saker är sanna:

  • Den använda värdpoolskapaciteten ligger under kapacitetströskelvärdet.
  • Autoskalning kan inaktivera sessionsvärdar utan att överskrida kapacitetströskeln.
  • Autoskalning inaktiverar endast sessionsvärdar utan användarsessioner på dem (såvida inte skalningsplanen är i ramp-down-fasen och du har aktiverat inställningen för tvingad utloggning).
  • Automatisk skalning av pooler inaktiverar inte sessionsvärdar i ramp-up-fasen för att undvika felaktig användarupplevelse.

I det här scenariot börjar värdpoolen se ut så här:

Parameter Värde
Fas Topp
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 30 %
Minsta procentandel värdar 30 %
Tillgängliga sessionsvärdar 5
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 25
Användarsessioner 7
Använd värdpoolskapacitet 28%

Eftersom vi är i toppfasen kan vi förvänta oss att antalet användare förblir relativt stabilt. Men för att hålla mängden resurser som används stabilt samtidigt som den är effektiv, aktiverar och inaktiverar autoskalning sessionsvärdar efter behov.

Så låt oss säga att det finns sju användare som är inloggade under rusningstid. Om det totala antalet användarsessioner är sju skulle den använda värdpoolens kapacitet vara 28 %. Eftersom autoskalning inte kan stänga av en sessionsvärd utan att den använda värdpoolkapaciteten överskrider kapacitetströskeln inaktiverar autoskalning inga sessionsvärdar ännu.

Om två av de sju användarna loggar ut under lunchpausen lämnar det fem användarsessioner över fem sessionsvärdar. Eftersom den maximala sessionsgränsen fortfarande är fem är den tillgängliga värdpoolskapaciteten 25. Att bara ha fem användare innebär att den använda värdpoolkapaciteten nu är 20 %. autoskalning måste nu kontrollera om den kan inaktivera en sessionsvärd utan att den använda värdpoolkapaciteten överskrider kapacitetströskeln.

Om autoskalning inaktiverade en sessionsvärd skulle den tillgängliga värdpoolkapaciteten vara 20. Med fem användare skulle den använda värdpoolkapaciteten då vara 25 %. Eftersom 25 % är mindre än kapacitetströskelvärdet på 30 %, väljer autoskalning en sessionsvärd utan användarsessioner på den, placerar den i tömningsläge och inaktiverar den.

När autoskalning inaktiverar en av sessionsvärdarna utan användarsessioner finns det fyra tillgängliga sessionsvärdar kvar. Den maximala sessionsgränsen för värdpoolen är fortfarande fem, så den tillgängliga värdpoolkapaciteten är 20. Eftersom det finns fem användarsessioner är den använda värdpoolskapaciteten 25 %, vilket fortfarande ligger under kapacitetströskeln.

Men om en annan användare loggar ut och ger sig ut på lunch finns det nu fyra användarsessioner spridda över de fyra sessionsvärdarna i värdpoolen. Eftersom den maximala sessionsgränsen fortfarande är fem är den tillgängliga värdpoolskapaciteten 20 och den använda värdpoolskapaciteten är 20 %. Om du stänger av en annan sessionsvärd lämnar du tre sessionsvärdar och en tillgänglig värdpoolskapacitet på 15, vilket skulle göra att den använda värdpoolkapaciteten ökar till cirka 27 %. Även om 27 % ligger under kapacitetströskelvärdet finns det inga sessionsvärdar utan användarsessioner. Autoskalning väljer sessionsvärden med minst antal användarsessioner, placerar den i avloppsläge och väntar på att alla användarsessioner ska logga ut innan du stänger av den. Om den använda värdpoolskapaciteten vid något tillfälle kommer till en punkt där autoskalning inte längre kan stänga av sessionsvärden, kommer sessionsvärden ur tömningsläge.

Följande animering är en visuell sammanfattning av vad vi precis gick igenom i scenario 2.

A visual recap of Scenario 2.

Scenario 3: När tvingar autoskalning användarna att logga ut?

Autoskalning tvingar bara användare att logga ut om du har aktiverat inställningen force logoff under ramp-down-fasen i ditt skalningsplanschema. Inställningen för tvingad utloggning loggar inte ut användare under någon annan fas i skalningsplanens schema.

Låt oss till exempel titta på en värdpool med följande parametrar:

Parameter Värde
Fas Ramp-down
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Djup först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 4
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 20
Användarsessioner 4
Använd värdpoolskapacitet 20 %

Under ramp-down-fasen har värdpoolsadministratören angett kapacitetströskeln till 75 % och den minsta procentandelen värdar till 10 %. Om du har ett högt kapacitetströskelvärde och en låg minsta procentandel värdar i den här fasen minskar behovet av att aktivera nya sessionsvärdar i slutet av arbetsdagen.

I det här scenariot ska vi säga att det för närvarande finns fyra användare på de fyra tillgängliga sessionsvärdarna i den här värdpoolen. Eftersom den tillgängliga värdpoolkapaciteten är 20 innebär det att den använda värdpoolkapaciteten är 20 %. Baserat på den här informationen identifierar autoskalning att det kan inaktivera två sessionsvärdar utan att överskrida kapacitetströskeln på 75 %. Men eftersom det finns användarsessioner på alla sessionsvärdar i värdpoolen måste autoskalning tvinga användare att logga ut för att stänga av två sessionsvärdar.

När du har aktiverat inställningen tvingad utloggning väljer autoskalning sessionsvärdarna med minst antal användarsessioner och placerar sedan sessionsvärdarna i tömningsläge. Autoskalning skickar sedan användare i den valda sessionen värdar meddelanden om att de kommer att med två skäl loggas ut från sina sessioner efter en viss tid. När den tiden har passerat, om användarna inte redan har avslutat sina sessioner, avslutar autoskalningen med två gånger sina sessioner för dem. I det här scenariot, eftersom det finns lika många användarsessioner på var och en av sessionsvärdarna i värdpoolen, väljer autoskalning två sessionsvärdar slumpmässigt för att med två skäl logga ut alla sina användare och inaktiverar sedan sessionsvärdarna.

När autoskalning stänger av de två sessionsvärdarna är den tillgängliga värdpoolskapaciteten nu 10. Nu när det bara finns två användarsessioner kvar är den använda värdpoolskapaciteten 20 %, enligt följande tabell.

Parameter Värde
Fas Ramp-down
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Djup först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 2
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 10
Användarsessioner 2
Använd värdpoolskapacitet 20 %

Nu ska vi säga att de två användare som tvingades logga ut vill fortsätta arbeta och logga in igen. Eftersom den tillgängliga värdpoolkapaciteten fortfarande är 10 är den använda värdpoolskapaciteten nu 40 %, vilket är under kapacitetströskelvärdet på 75 %. Autoskalning kan dock inte inaktivera fler sessionsvärdar eftersom det bara skulle lämna en tillgänglig sessionsvärd och en tillgänglig värdpoolskapacitet på fem. Med fyra användare skulle det göra den använda värdpoolens kapacitet till 80 %, vilket är över kapacitetströskeln.

Så nu ser parametrarna ut så här:

Parameter Värde
Fas Ramp-down
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Djup först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 2
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 10
Användarsessioner 4
Använd värdpoolskapacitet 40 %

Om en annan användare nu loggar ut lämnar det bara tre användarsessioner fördelade över de två tillgängliga sessionsvärdarna. Med andra ord ser värdpoolen nu ut så här:

Parameter Värde
Fas Ramp-down
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Djup först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 2
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 10
Användarsessioner 3
Använd värdpoolskapacitet 30 %

Eftersom den maximala sessionsgränsen fortfarande är fem och den tillgängliga värdpoolskapaciteten är 10 är den använda värdpoolskapaciteten nu 30 %. Autoskalning kan nu inaktivera en sessionsvärd utan att överskrida kapacitetströskeln. Autoskalning inaktiverar en sessionsvärd genom att välja sessionsvärden med minst antal användarsessioner på den. Autoskalning placerar sedan sessionsvärden i tömningsläge, skickar ett meddelande till användarna som säger att sessionsvärden kommer att stängas av, och sedan efter en viss tid signerar med två skäl alla återstående användare och stänger av den. När du har gjort det finns det nu en återstående tillgänglig sessionsvärd i värdpoolen med en maximal sessionsgräns på fem, vilket gör den tillgängliga värdpoolskapaciteten fem.

Eftersom autoskalning tvingade en användare att logga ut när den valda sessionsvärden stängdes av finns det nu bara två användarsessioner kvar, vilket gör den använda värdpoolens kapacitet till 40 %.

Sammanfattningsvis ser värdpoolen ut så här nu:

Parameter Värde
Fas Ramp-down
Totalt antal sessionsvärdar 6
Maximal sessionsgräns 5
Belastningsutjämningsalgoritm Djup först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgänglig värdpoolskapacitet 5
Användarsessioner 2
Tillgängliga sessionsvärdar 1
Använd värdpoolskapacitet 40 %

Efter det antar vi att användaren som tvingades logga ut loggar in igen, vilket gör att värdpoolen ser ut så här:

Parameter Värde
Fas Ramp-down
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Djup först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 1
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 5
Användarsessioner 3
Använd värdpoolskapacitet 60%

Nu finns det tre användarsessioner i värdpoolen. Värdpoolkapaciteten är dock fortfarande fem, vilket innebär att den använda värdpoolkapaciteten är 60 % och under kapacitetströskeln. Eftersom om du inaktiverar den återstående sessionsvärden skulle den tillgängliga värdpoolens kapacitet vara noll, vilket är lägre än 10 % av den minsta procentandelen värdar, säkerställer autoskalning att det alltid finns minst en tillgänglig sessionsvärd under ramp-down-fasen.

Följande animering är en visuell sammanfattning av vad vi precis gick igenom i scenario 3.

A visual recap of Scenario 3.

Scenario 4: Hur fungerar undantagstaggar?

När en virtuell dator har ett taggnamn som matchar skalningsplanens exkluderingstagg aktiverar, inaktiverar eller ändrar autoskalningen inte inställningen för avloppsläge. Undantagstaggar gäller i alla faser i ditt skalningsplanschema.

Här är exempelvärdpoolen som vi börjar med:

Parameter Värde
Fas Lågtrafik
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 1
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 5
Användarsessioner 3
Använd värdpoolskapacitet 60%

I det här exempelscenariot tillämpar värdpoolsadministratören undantagstaggen för skalningsplan på fem av de sex sessionsvärdarna. När en ny användare loggar in blir det totala antalet användarsessioner upp till fyra. Det finns bara en tillgänglig sessionsvärd och värdpoolens maximala sessionsgräns är fortfarande fem, så den tillgängliga värdpoolkapaciteten är fem. Den använda värdpoolskapaciteten är 80 %. Även om den använda värdpoolkapaciteten är större än kapacitetströskeln, aktiveras inte någon annan sessionsvärd automatiskt eftersom alla sessionsvärdar förutom den som körs har taggats med undantagstaggen.

Så nu ser värdpoolen ut så här:

Parameter Värde
Fas Lågtrafik
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 1
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 5
Användarsessioner 4
Använd värdpoolskapacitet 80 %

Nu ska vi säga att alla fyra användare har loggat ut och inte lämnar några användarsessioner kvar på den tillgängliga sessionsvärden. Eftersom det inte finns några användarsessioner i värdpoolen är den använda värdpoolskapaciteten 0. Autoskalning behåller den här sessionsvärden på trots att den inte har några användare, eftersom autoskalningens minsta procentandel av värdinställningarna under låg belastning kräver att minst en sessionsvärd är tillgänglig under den här fasen.

Sammanfattningsvis ser värdpoolen nu ut så här:

Parameter Värde
Fas Lågtrafik
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 75 %
Minsta procentandel värdar 10 %
Tillgängliga sessionsvärdar 1
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 5
Användarsessioner 0
Använd värdpoolskapacitet 0 %

Om administratören tillämpar undantagstaggnamnet på den senaste otaggade virtuella sessionsvärdens virtuella dator och inaktiverar den, innebär det att även om andra användare försöker logga in kan autoskalning inte aktivera en virtuell dator för att anpassa användarsessionen. Användaren ser felet "Inga tillgängliga resurser".

Men om du inte kan aktivera virtuella datorer igen kan värdpoolen inte uppfylla den lägsta procentandelen värdar. För att åtgärda eventuella problem som orsakar tar administratören bort undantagstaggar från två av de virtuella datorerna. Autoskalning aktiverar bara en av de virtuella datorerna eftersom den bara behöver en virtuell dator för att uppfylla minimikravet på 10 %.

Så slutligen ser värdpoolen ut så här:

Parameter Värde
Fas Lågtrafik
Totalt antal sessionsvärdar 6
Belastningsutjämningsalgoritm Bredd-först
Kapacitetströskel 75 %
Minsta procentandel värdar 19 %
Tillgängliga sessionsvärdar 1
Maximal sessionsgräns 5
Tillgänglig värdpoolskapacitet 5
Användarsessioner 0
Använd värdpoolskapacitet 0 %

Följande animering är en visuell sammanfattning av vad vi just gick igenom i scenario 4.

A visual recap of Scenario 4.

Nästa steg