Dans Google Distributed Cloud, vous pouvez activer le redimensionnement automatique des nœuds pour un cluster. Le redimensionnement signifie que les ressources de processeur et de mémoire attribuées à un nœud sont ajustées.
Si le redimensionnement automatique des nœuds est activé pour un cluster d'administrateur, les nœuds des modules complémentaires du cluster sont redimensionnés en fonction du nombre total de nœuds du cluster d'administrateur. Pour chaque cluster d'utilisateur, il existe un ou plusieurs nœuds de plan de contrôle dans le cluster d'administrateur. Ainsi, à mesure que vous créez des clusters d'utilisateur, le nombre total de nœuds dans le cluster d'administrateur augmente et la taille des nœuds des modules complémentaires augmente automatiquement.
Si le redimensionnement automatique des nœuds est activé pour un cluster d'utilisateur, les nœuds du plan de contrôle du cluster d'utilisateur sont redimensionnés en fonction du nombre de nœuds du cluster d'utilisateur. Ainsi, à mesure que vous ajoutez des nœuds de calcul au cluster d'utilisateur, la taille des nœuds du plan de contrôle est augmentée. Notez que les nœuds du plan de contrôle du cluster d'utilisateur se trouvent dans le cluster d'administrateur.
Un cluster d'utilisateur à disponibilité élevée dispose de trois nœuds de plan de contrôle dans le cluster d'administrateur, et un cluster d'utilisateur standard comporte un nœud de plan de contrôle dans le cluster d'administrateur. Le redimensionnement d'un nœud nécessite sa recréation. Ainsi, lorsque le nœud du plan de contrôle d'un cluster d'utilisateur standard est redimensionné, il peut y avoir un petit temps d'arrêt.
Le redimensionnement automatique des nœuds n'est pas compatible avec les clusters avancés.
Activer le redimensionnement des nœuds pour les nœuds de module complémentaire d'un cluster d'administrateur
Suivez les étapes décrites dans cette section uniquement si votre cluster d'administrateur comporte des nœuds complémentaires. La présence de nœuds complémentaires dans un cluster d'administrateur dépend de la configuration et de la version spécifiques, comme suit :
- Clusters d'administrateur non HA : les clusters d'administrateur non HA comportent un nœud de plan de contrôle et deux nœuds de complément.
- Clusters d'administrateur à haute disponibilité :
- Version 1.16 et versions antérieures : les clusters d'administrateur HA comportent trois nœuds de plan de contrôle et deux nœuds de module complémentaire.
- Version 1.28 et versions ultérieures : les clusters d'administrateur HA ne comportent pas de nœuds supplémentaires. Les trois nœuds sont tous des nœuds de plan de contrôle.
Pour déterminer si votre cluster comporte des nœuds de module complémentaire, exécutez la commande suivante :
kubectl get nodes --kubeconfig ADMIN_CLUSTER_KUBECONFIG'
Remplacez ADMIN_CLUSTER_KUBECONFIG
par le chemin d'accès du fichier kubeconfig de votre cluster d'administrateur.
Si votre cluster comporte des nœuds de module complémentaire, activez le redimensionnement des nœuds de module complémentaire comme suit :
Dans votre fichier de configuration de cluster d'administrateur, définissez addonNode.autoResize.enabled
sur true
:
addonNode: autoResize: enabled: true
Pour un nouveau cluster d'administrateur, suivez les instructions de la section Créer un cluster d'administrateur.
Pour un cluster d'administrateur existant :
gkectl update admin --config ADMIN_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Remplacez l'élément suivant :
ADMIN_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'administrateur
ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
Activer le redimensionnement des nœuds pour les nœuds du plan de contrôle d'un cluster d'utilisateur
Dans votre fichier de configuration de cluster d'utilisateur, définissez masterNode.autoResize.enabled
sur true
:
masterNode: autoResize: enabled: true
Pour un nouveau cluster d'utilisateur, suivez les instructions de la page Créer un cluster d'utilisateur.
Pour un cluster existant :
gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
Remplacez l'élément suivant :
ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
USER_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'utilisateur
Une fois le redimensionnement automatique des nœuds activé pour un cluster d'utilisateur, toute tentative de modification du processeur ou de la mémoire d'un nœud de plan de contrôle en exécutant gkectl update
est rejetée. Si vous souhaitez utiliser gkectl update
pour modifier le processeur ou la mémoire d'un nœud de plan de contrôle du cluster d'utilisateur, vous devez désactiver le redimensionnement automatique des nœuds.
Désactiver le redimensionnement des nœuds pour les nœuds de module complémentaire d'un cluster d'administrateur
Dans votre fichier de configuration de cluster d'administrateur, définissez addonNode.autoResize.enabled
sur false
:
addonNode: autoResize: enabled: false
Mettez à jour le cluster :
gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG
Désactiver le redimensionnement des nœuds pour les nœuds du plan de contrôle d'un cluster d'utilisateur
Dans votre fichier de configuration de cluster d'utilisateur, définissez masterNode.autoResize.enabled
sur false
:
masterNode: autoResize: enabled: false
Mettez à jour le cluster :
gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
Lorsque vous désactivez le redimensionnement automatique des nœuds pour un cluster d'utilisateur, le processeur et la mémoire des nœuds de plan de contrôle sont rapprochés pour correspondre aux valeurs du processeur et de la mémoire spécifiées dans le fichier de configuration du cluster d'utilisateur.
Journaux et événements
Pour trouver le nom du pod de redimensionnement automatique, procédez comme suit :
kubectl --kubeconfig ADMIN_KUBECONFIG describe deployment auto-resize-controller
Le nom du pod se présente au format auto-resize-controller-xxxxx
.
Pour afficher les journaux du pod de redimensionnement automatique, procédez comme suit :
kubectl --kubeconfig ADMIN_KUBECONFIG logs AUTO_RESIZE_POD_NAME
Le contrôleur de redimensionnement automatique génère des événements sur les objets MachineDeployment pour donner de la visibilité sur les décisions et les actions pertinentes pour le redimensionnement.
Pour trouver les noms des objets MachineDeployment, procédez comme suit :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machinedeployments --all-namespaces
Pour voir les événements, procédez comme suit :
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment USER_CONTROL_PLANE_NODE_MACHINE_DEPLOYMENT kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment ADMIN_ADDON_NODE_MACHINE_DEPLOYMENT