Dela via


Skalning av lodrät nod

Gäller för: AKS på Azure Local 22H2, AKS på Windows Server

Du kan ändra storleken på de virtuella datorerna i en viss nodpool för att öka de resurser som är tillgängliga för nodpoolen i AKS som aktiveras av Azure Arc.

Om du vill hänga med i appkraven i Azure Kubernetes Service (AKS) kan du behöva justera antalet noder som kör dina arbetsbelastningar. I vissa fall räcker det inte med att skala ett kluster horisontellt genom att lägga till noder för att uppfylla kraven från din app på fler CPU-kärnor eller minne.

Utan vertikal nodskalning måste du distribuera om till en ny nodpool och flytta appen. Den här situationen kanske inte är idealisk i resursbegränsade gränsmiljöer. För att möjliggöra den här flexibiliteten introducerar AKS Arc möjligheten att ändra storleken på den virtuella datorn (VM) för de virtuella datorerna i en viss nodpool.

Så här fungerar vertikal nodskalning i AKS Arc

I AKS Arc hanteras målklusternodpooler internt som en machineDeployment. En egenskap för en machineDeployment är den VM-storlek (SKU) som valdes när New-AksHciNodePool kommandot kördes.

Om du vill ändra nodpoolen till en annan vm-storlek (SKU) kan du använda Set-AksHciNodePool kommandot för att ändra vm-storleken för arbetsnoder och Set-AksHciCluster kommandot för att ändra vm-storleken för kontrollplansnoder.

När du skickar kommandot med den nya storleken på den virtuella datorn (SKU) skapas en ny machineDeployment för nodpoolen eller klustret och ersätter den befintliga datoruppsättningen. Den här händelsen utlöser ett uppdateringsflöde i det underliggande distributionssystemet. I likhet med en uppgradering av operativsystemet eller Kubernetes-versionen använder den nya datornDistribution en löpande uppdatering för att ersätta en virtuell dator i nodpoolen eller kontrollplanet efter den andra. Varje uppgradering kontrollerar att den gamla noden är korrekt avspärrad och tömd innan den tas bort.

Kommentar

Systemet förutsätter att det finns tillräckligt med maskinvaruresurser för att skala upp den nya datorn i stället för den gamla datoruppsättningen.

Exempelprocess

I följande exempel visas lodrät nodskalning.

Ändra vm-storleken för en Linux-arbetsnodpool från 4 kärnor och 6 GB minne till 4 kärnor och 8 GB minne

Kontrollera först den aktuella VM-storleken för nodpoolen i klustret mycluster. Från utdata kan du se att vm-storleken är Standard_K8S3_v1:

get-akshcinodepool -clustername mycluster
Status       : {Error, Phase, Details}
ClusterName  : mycluster
NodePoolName : mycluster-linux
Version      : v1.22.4
OsType       : Linux
NodeCount    : 2
VmSize       : Standard_K8S3_v1
Phase        : scaling

Standard_K8S3_v1 I listan över tillgängliga VM-storlekar visas att den har 4 kärnor och 6 GB minne:

Get-AksHciVmSize
VmSize           CPU MemoryGB
------           --- --------
Default          4   4
Standard_A2_v2   2   4
Standard_A4_v2   4   8
Standard_D2s_v3  2   8
Standard_D4s_v3  4   16
Standard_D8s_v3  8   32
Standard_D16s_v3 16  64
Standard_D32s_v3 32  128
Standard_DS2_v2  2   7
Standard_DS3_v2  2   14
Standard_DS4_v2  8   28
Standard_DS5_v2  16  56
Standard_DS13_v2 8   56
Standard_K8S_v1  4   2
Standard_K8S2_v1 2   2
Standard_K8S3_v1 4   6

Den nya storleken som du vill ange för 4 kärnor och 8 GB minne är Standard_A4_v2. Om du vill uppdatera nodpoolen mycluster-linuxanvänder du cmdleten Set-AksHciNodePool , som har uppdaterats för att acceptera en -VMsize parameter:

Set-AksHciNodePool -ClusterName mycluster -name mycluster-linux -vmsize Standard_A4_v2

Efter några minuter är processen klar. Du kan kontrollera resultatet genom att köra Get-AksHciNodePool igen och kontrollera att VmSize är nu Standard_A4_v2:

get-akshcinodepool -clustername mycluster
Status       : {Error, Phase, Details}
ClusterName  : mycluster
NodePoolName : mycluster-linux
Version      : v1.22.4
OsType       : Linux
NodeCount    : 2
VmSize       : Standard_A4_v2
Phase        : scaling

Nästa steg

Se dokumentationen för de uppdaterade PowerShell-kommandona: