Mise à l’échelle verticale des nœuds
S’applique à : AKS sur Azure Local 22H2, AKS sur Windows Server
Vous pouvez modifier la taille des machines virtuelles dans un pool de nœuds donné pour augmenter les ressources disponibles pour le pool de nœuds dans AKS activé par Azure Arc.
Pour suivre les demandes d’application dans Azure Kubernetes Service (AKS), vous devrez peut-être ajuster le nombre de nœuds qui exécutent vos charges de travail. Dans certains cas, la mise à l’échelle horizontale d’un cluster en ajoutant des nœuds n’est pas suffisante pour répondre aux demandes de votre application pour plus de cœurs de processeur ou de mémoire.
Sans mise à l’échelle verticale des nœuds, vous devez redéployer dans un nouveau pool de nœuds et déplacer l’application. Cette situation peut ne pas être idéale dans les environnements de périphérie limités aux ressources. Pour permettre cette flexibilité, AKS Arc introduit la possibilité de modifier la taille de la machine virtuelle (SKU) des machines virtuelles dans un pool de nœuds donné.
Fonctionnement de la mise à l’échelle des nœuds verticaux dans AKS Arc
Dans AKS Arc, les pools de nœuds de cluster cibles sont gérés en interne en tant que machineDeployment. Une propriété d'un machineDeployment est la taille de la machine virtuelle (SKU) sélectionnée lors de l'exécution de la commande New-AksHciNodePool
.
Pour modifier la taille des machines virtuelles (SKU) du pool de nœuds, vous pouvez utiliser la commande Set-AksHciNodePool
afin de modifier la taille des machines virtuelles des nœuds worker, et la commande Set-AksHciCluster
afin de modifier la taille des machines virtuelles des nœuds du plan de contrôle.
Lorsque vous envoyez la commande avec la nouvelle taille de machine virtuelle (SKU), un nouvel ordinateurDeployment pour le pool de nœuds ou le cluster est créé, en remplaçant le jeu d’ordinateurs existant. Cet événement déclenche un flux de mise à jour dans le système de déploiement sous-jacent. Comme pour une mise à niveau de version du système d’exploitation ou de Kubernetes, le nouveau machineDeployment utilise une mise à jour propagée pour remplacer une machine virtuelle dans le pool de nœuds ou le plan de contrôle après l’autre. Chaque mise à niveau vérifie que l'ancien nœud est correctement fermé et vidé avant d'être supprimé.
Remarque
Le système part du principe que suffisamment de ressources matérielles sont disponibles pour monter en puissance le nouveau groupe d’ordinateurs à la place de l’ancien groupe d’ordinateurs.
Exemple de processus
L'exemple suivant montre la mise à l'échelle verticale des nœuds.
Modifier la taille de la machine virtuelle pour un pool de nœuds Worker Linux de 4 cœurs et de 6 Go de mémoire à 4 cœurs et 8 Go de mémoire
Tout d’abord, vérifiez la taille actuelle de la machine virtuelle du pool de nœuds sur le cluster mycluster
. À partir de la sortie, vous pouvez voir que la taille de la machine virtuelle est la suivante 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
dans la liste des tailles de machine virtuelle disponibles indique qu’elle a 4 cœurs et 6 Go de mémoire :
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
La nouvelle taille que vous souhaitez définir pour 4 cœurs et 8 Go de mémoire est Standard_A4_v2
. Pour mettre à jour le pool mycluster-linux
de nœuds, utilisez l’applet Set-AksHciNodePool
de commande, qui a été mise à jour pour accepter un -VMsize
paramètre :
Set-AksHciNodePool -ClusterName mycluster -name mycluster-linux -vmsize Standard_A4_v2
Après quelques minutes, le processus est terminé. Vous pouvez vérifier le résultat en réécutant Get-AksHciNodePool
et en vérifiant que le VmSize
résultat est maintenant 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
Étapes suivantes
Consultez la documentation relative aux commandes PowerShell mises à jour :