Freigeben über


Skalierung vertikaler Knoten

Gilt für: AKS auf Azure Stack HCI 22H2, AKS unter Windows Server

Sie können die Größe der virtuellen Computer in einem bestimmten Knotenpool ändern, um die verfügbaren Ressourcen für den Knotenpool in AKS zu erhöhen, die von Azure Arc aktiviert sind.

Um mit den App-Anforderungen in Azure Kubernetes Service (AKS) schritt zu halten, müssen Sie möglicherweise die Anzahl der Knoten anpassen, die Ihre Workloads ausführen. In einigen Fällen reicht die horizontale Skalierung eines Clusters durch Hinzufügen von Knoten nicht aus, um die Anforderungen Ihrer App für mehr CPU-Kerne oder Arbeitsspeicher zu erfüllen.

Ohne vertikale Knotenskalierung müssen Sie erneut in einem neuen Knotenpool bereitstellen und die App verschieben. Diese Situation ist in ressourcengrenzten Edgeumgebungen möglicherweise nicht ideal. Um diese Flexibilität zu ermöglichen, bietet AKS Arc die Möglichkeit, die Größe des virtuellen Computers (VM) der virtuellen Computer (VM) der virtuellen Computer in einem bestimmten Knotenpool zu ändern.

Funktionsweise der Skalierung von vertikalen Knoten in AKS Arc

In AKS Arc werden Zielclusterknotenpools intern als MachineDeployment verwaltet. Eine Eigenschaft von machineDeployment ist die VM-Größe (SKU), die beim Ausführen des Befehls New-AksHciNodePool ausgewählt wurde.

Zum Ändern des Knotenpools in eine andere VM-Größe (SKU) können Sie den Befehl Set-AksHciNodePool verwenden, um die VM-Größe für Workerknoten zu ändern, und den Befehl Set-AksHciCluster, um die VM-Größe für Knoten der Steuerungsebene zu ändern.

Wenn Sie den Befehl mit der neuen VM-Größe (VM Size, SKU) übermitteln, wird eine neue MachineDeployment für den Knotenpool oder den Cluster erstellt, wobei der vorhandene Computersatz ersetzt wird. Dieses Ereignis löst einen Updatefluss im zugrunde liegenden Bereitstellungssystem aus. Ähnlich wie bei einem Betriebssystem- oder Kubernetes-Versionsupgrade verwendet die neue MachineDeployment ein rollierendes Update, um einen virtuellen Computer im Knotenpool oder der Steuerebene nach dem anderen zu ersetzen. Bei jedem Upgrade wird überprüft, ob der alte Knoten ordnungsgemäß isoliert und ausgeglichen wurde, bevor er entfernt wird.

Hinweis

Das System geht davon aus, dass genügend Hardwareressourcen verfügbar sind, um den neuen Computersatz anstelle des alten Computersatzes zu skalieren.

Beispielprozess

Im folgenden Beispiel wird die vertikale Knotenskalierung veranschaulicht.

Ändern der VM-Größe für einen Linux-Workerknotenpool von 4 Kernen und 6 GB Arbeitsspeicher in 4 Kerne und 8 GB Arbeitsspeicher

Überprüfen Sie zunächst die aktuelle VM-Größe des Knotenpools im Cluster mycluster. Aus der Ausgabe können Sie sehen, dass die Größe des virtuellen Computers lautet 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 in der Liste der verfügbaren VM-Größen zeigt, dass sie 4 Kerne und 6 GB Arbeitsspeicher aufweist:

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

Die neue Größe, die Sie für 4 Kerne und 8 GB Arbeitsspeicher festlegen möchten, ist Standard_A4_v2. Um den Knotenpool mycluster-linuxzu aktualisieren, verwenden Sie das Set-AksHciNodePool Cmdlet, das aktualisiert wurde, um einen -VMsize Parameter zu akzeptieren:

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

Nach ein paar Minuten ist der Vorgang abgeschlossen. Sie können das Ergebnis überprüfen, indem Sie es erneut ausführen Get-AksHciNodePool und überprüfen, ob es sich jetzt Standard_A4_v2um Folgendes VmSize handelt:

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ächste Schritte

Informationen zu den aktualisierten PowerShell-Befehlen finden Sie in der Dokumentation: