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-linux
zu 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_v2
um 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: