Virtual Machine Scale Sets- och placeringsgrupper

Anteckning

Det här dokumentet beskriver Virtual Machine Scale Sets som körs i enhetligt orkestreringsläge. Vi rekommenderar att du använder Flexibel orkestrering för nya arbetsbelastningar. Mer information finns i Orchesration-lägen för Virtual Machine Scale Sets i Azure.

Nu kan du skapa Azure Virtual Machine Scale Sets med en kapacitet på upp till 1 000 virtuella datorer. I det här dokumentet definieras en stor VM-skalningsuppsättning som en skalningsuppsättning som kan skalas till fler än 100 virtuella datorer. Den här funktionen ställs in med skalningsuppsättningsegenskapen (singlePlacementGroup=False).

Vissa aspekter av stora skalningsuppsättningar, som belastningsutjämning och feldomäner beter sig annorlunda jämfört med en vanlig skalningsuppsättning. I det här dokumentet beskrivs egenskaper för stora skalningsuppsättningar och vad du behöver veta för att kunna använda dem i dina program.

Ett vanligt sätt att distribuera molninfrastruktur i stor skala är att skapa en uppsättning skalningsenheter, till exempel genom att skapa flera skalningsuppsättningar för virtuella datorer över flera virtuella nätverk och lagringskonton. Den här metoden tillhandahåller enklare hantering jämfört med enskilda virtuella datorer, och flera skalningsenheter är användbara för många program, särskilt de som kräver andra stapelbara komponenter som flera virtuella nätverk och slutpunkter. Men om programmet kräver ett stort kluster kan det vara enklare att distribuera en enda skalningsuppsättning med upp till 1 000 virtuella datorer. Exempelscenarier omfattar centraliserade distributioner av stordata eller beräkningsnät som kräver enkel hantering av en stor pool av arbetsnoder. I kombination med anslutna datadiskar med vm-skalningsuppsättningar kan du distribuera en skalbar infrastruktur som består av tusentals vCPU:er och petabyte lagringsutrymme som en enda åtgärd.

Placeringsgrupper

Vad som gör en stor skalningsuppsättning speciell är inte antalet virtuella datorer, utan antalet placeringsgrupper som den innehåller. En placeringsgrupp är en konstruktion som liknar en Azure-tillgänglighetsuppsättning, med egna feldomäner och uppgraderingsdomäner. Som standard består en skalningsuppsättning av en enda placeringsgrupp med maximalt 100 virtuella datorer. Om en skalningsuppsättningsegenskap som kallas singlePlacementGroup har angetts som falskt kan skalningsuppsättningen bestå av flera placeringsgrupper och innehålla allt mellan 0-1 000 virtuella datorer. Om värdet är standardvärdet sant består skalningsuppsättningen av en enda placeringsgrupp och innehåller mellan 0-100 virtuella datorer.

Checklista för att använda stora skalningsuppsättningar

Beakta följande krav för att lista ut om programmet effektivt kan använda stora skalningsuppsättningar:

  • Om du planerar att distribuera ett stort antal virtuella datorer kan du behöva öka din kvotgräns för Compute-vCPU:er.
  • Skalningsuppsättningar som skapats från Azure Marketplace bilder eller Azure Compute Gallery-avbildningar kan skala upp till 1 000 virtuella datorer.
  • Skalningsuppsättningar som skapas från anpassade avbildningar (VM-avbildningar som du skapar och laddar upp själv) kan för närvarande skala upp till 600 virtuella datorer.
  • Stora skalningsuppsättningar kräver Azure Managed Disks. Skalningsuppsättningar som inte har skapats med Managed Disks kräver flera lagringskonton (ett konto kan användas för 20 virtuella dator). Stora skalningsuppsättningar är utformade för att endast fungera med Managed Disks för att minska dina omkostnader för lagringshantering och för att undvika risken att du får problem med prenumerationsbegränsningar för lagringskonton.
  • Stor skala (SPG=false) stöder inte InfiniBand-nätverk
  • Layer-4-lastbalansering med skalningsuppsättningar som består av flera placeringsgrupper kräver Azure Load Balancers standard-SKU. Load Balancers standard-SKU ger ytterligare fördelar, till exempel möjligheten att utföra lastbalanseringar mellan flera olika skalningsuppsättningar. En standard-SKU kräver också en skalningsuppsättning som har en nätverkssäkerhetsgrupp kopplad till den, annars fungerar inte NAT-poolerna som de ska. Kontrollera att skalningsuppsättningen är konfigurerad för att använda standardinställningen att bara använda en enda placeringsgrupp om du behöver använda Azure Load Balancers grundläggande SKU.
  • Layer-7-belastningsutjämning med Azure Application Gateway stöds för alla skalningsuppsättningar.
  • En skalningsuppsättning definieras med ett enda undernät – kontrollera att ditt undernät har ett adressutrymme som är tillräckligt stort för alla de virtuella datorerna du behöver. Som standard överetablerar skalningsuppsättningar (skapar extra virtuella datorer vid tidpunkten för distribution eller vid utskalning, som du inte debiteras för) för att förbättra distributionstillförlitlighet och prestanda. Tillåt ett adressutrymme 20% större än antalet virtuella datorer som du planerar att skala till.
  • Feldomäner och uppgraderingsdomäner är endast konsekventa i en placeringsgrupp. Den här arkitekturen ändrar inte den övergripande tillgängligheten för en skalningsuppsättning, eftersom virtuella datorer är jämnt fördelade över distinkt fysisk maskinvara, men det innebär att om du behöver garantera att två virtuella datorer finns på olika maskinvara kontrollerar du att de finns i olika feldomäner i samma placeringsgrupp. Se den här länken Tillgänglighetsalternativ.
  • Feldomän och placeringsgrupp-ID som visas i instansvyn för en virtuell dator i en skalningsuppsättning. Du kan se instansvyn för en virtuell dator i en skalningsuppsättning i Resursutforskaren i Azure.

Skapa en stor skalningsuppsättning

När du skapar en skalningsuppsättning i Azure-portalen anger du värde för antalet instanser till upp till 1 000. Om det är mer än 100 instanser anges Enable scaling beyond 100 instances (Aktivera skalning över 100 instanser) till Ja så att det kan skalas till flera placeringsgrupper.

Den här bilden visar instansbladet i Azure-portalen. Alternativ för att välja instansantal och instansstorlek är tillgängliga.

Du kan skapa en stor vm-skalningsuppsättning med hjälp av kommandot Azure CLIaz vmss create . Det här kommandot anger intelligenta standardvärden som storleken för undernät baserat på argumentet för antal instanser:

az group create -l southcentralus -n biginfra
az vmss create -g biginfra -n bigvmss --image Ubuntu2204 --instance-count 1000

Kommandot vmss create ställer in vissa konfigurationsvärden som standard om du inte själv anger dem. För att se de tillgängliga alternativen som du kan åsidosätta kan du försöka följande:

az vmss create --help

Kontrollera att mallen skapar en skalningsuppsättning som baseras på Azure Managed Disks om du skapar en stor skalningsuppsättning genom att skapa en Azure Resource Manager-mall. Du kan ställa in egenskapen singlePlacementGroup som falsk i avsnittet egenskaper i resursen Microsoft.Compute/virtualMachineScaleSets. Följande JSON-fragment visas i början av en mall för skalningsuppsättningar, inklusive kapaciteten på 1 000 virtuella datorer och inställningen "singlePlacementGroup" : false:

{
  "type": "Microsoft.Compute/virtualMachineScaleSets",
  "location": "australiaeast",
  "name": "bigvmss",
  "sku": {
    "name": "Standard_DS1_v2",
    "tier": "Standard",
    "capacity": 1000
  },
  "properties": {
    "singlePlacementGroup": false,
    "upgradePolicy": {
      "mode": "Automatic"
    }

För ett fullständigt exempel på en mall i stor skala, se https://github.com/gbowerman/azure-myriad/blob/main/bigtest/bigbottle.json.

Konvertera en befintlig skalningsuppsättning som sträcker sig över flera placeringsgrupper

Om du vill göra en befintlig vm-skalningsuppsättning som kan skalas till fler än 100 virtuella datorer måste du ändra egenskapen singlePlacementGroup till false i skalningsuppsättningsmodellen. Du kan ändra den här egenskapen med Resursutforskaren i Azure. Hitta en befintlig skalningsuppsättning, välj Redigera och ändra egenskapen singlePlacementGroup. Om du inte ser den här egenskapen kanske du tittar på en skalningsuppsättning med en äldre version av Microsoft.Compute-API.

Anteckning

Du kan ändra så att en skalningsuppsättning går från att endast stödja en enda placeringsgrupp (standardinställningen) till att stödja flera placeringsgrupper, men du kan inte konvertera åt det andra hållet. Se därför till att du förstår egenskaperna för stora skalningsuppsättningar innan du konverterar.