Ajouter ou supprimer des nœuds dans un cluster

Dans les clusters Anthos sur Bare Metal, vous ajoutez ou supprimez des nœuds dans un cluster en modifiant les définitions de pool de nœuds du cluster. Vous pouvez modifier ces définitions à l'aide de la commande kubectl.

Dans les clusters Anthos sur Bare Metal, il existe trois types de pools de nœuds : plan de contrôle, équilibreur de charge et pools de nœuds de calcul. Vous pouvez modifier les nœuds du plan de contrôle et de l'équilibreur de charge à travers les définitions des ressources de cluster associées, mais vous pouvez modifier les définitions des pools de nœuds de calcul directement.

Afficher l'état des nœuds

Vous pouvez afficher l'état des nœuds et de leurs pools de nœuds respectifs à l'aide de la commande kubectl get.

Par exemple, la commande suivante affiche l'état des pools de nœuds dans l'espace de noms du cluster my-cluster :

 kubectl -n my-cluster get nodepools.baremetal.cluster.gke.io

Le système renvoie des résultats semblables à ceux-ci :

  NAME                    READY   RECONCILING   STALLED   UNDERMAINTENANCE   UNKNOWN
  my-cluster              3       0             0         0                  0
  my-cluster-lb           2       0             0         0                  0
  np1                     3       0             0         0                  0

Si vous avez besoin d'informations supplémentaires sur le diagnostic de vos clusters, consultez la page Diagnostiquer et réinitialiser les clusters.

Modifier les nœuds du plan de contrôle

Pour ajouter ou supprimer des nœuds de plan de contrôle, vous pouvez modifier le tableau d'adresses spec.controlPlane.nodePoolSpec.nodes d'un cluster dans la définition de ressource du cluster.

Notez que la modification directe du pool de nœuds du plan de contrôle ne fonctionne pas, car la spécification de cluster est la définition primaire du pool de nœuds du plan de contrôle.

Dans une configuration à haute disponibilité, un nombre impair de pools de nœuds du plan de contrôle (au moins trois) est requis pour établir un quorum afin d'être sûr que si un plan de contrôle échoue, d'autres prennent le relais. Si vous disposez temporairement d'un nombre pair de nœuds pendant l'ajout ou la suppression de nœuds à des fins de maintenance ou de remplacement, votre déploiement maintient une haute disponibilité tant que vous avez assez de quorum.

Modifier les nœuds de l'équilibreur de charge

Vous pouvez ajouter ou supprimer des pools de nœuds de l'équilibreur de charge d'un cluster en modifiant le tableau d'adresses spec.loadBalancer.nodePoolSpec.nodes du cluster dans le fichier de configuration du cluster.

Modifier les nœuds de calcul

Vous pouvez ajouter ou supprimer des nœuds de calcul directement à l'aide de la commande kubectl. Les pools de nœuds de calcul doivent comporter au moins un nœud souhaité.

Dans l'exemple suivant, la commande supprime un pool de nœuds nommé np1, où la variable de l'espace de noms du cluster est my-cluster :

  kubectl -n my-cluster delete nodepool np1
 

De même, il est possible de redimensionner les pools de nœuds en modifiant le tableau d'adresses spec.nodes.

Notez que lorsque vous supprimez des nœuds d'un cluster, ceux-ci sont d'abord drainés de tous leurs pods. Les nœuds ne seront pas supprimés du cluster si les pods ne peuvent pas être reprogrammés sur d'autres nœuds. La suppression de nœuds ne supprime que le nœud du plan de contrôle. Le contenu du nœud n'est pas réinitialisé.

La commande kubectl edit suivante vous permet de modifier, puis de valider les modifications apportées à l'espace de noms du cluster my-cluster et du pool de nœuds np1 :

  kubectl -n my-cluster edit nodepool np1