Ajouter ou supprimer des pools de nœuds d'un cluster

Dans Anthos clusters on Bare Metal, vous ajoutez ou supprimez des pools de nœuds dans un cluster en créant ou en supprimant des ressources personnalisées de pool de nœuds. Vous utilisez kubectl pour apporter des modifications au pool de nœuds.

Vous ne pouvez ajouter ou supprimer des pools de nœuds de calcul que pour un cluster existant. Les pools de nœuds de l'équilibreur de charge et du plan de contrôle ajoutés lors de la création du cluster sont essentiels à la fonction du cluster et ne peuvent pas être supprimés.

Vérifier l'état du nœud

Avant d'ajouter ou de supprimer des pools de nœuds, utilisez kubectl get pour vérifier l'état des nœuds et leurs pools de nœuds respectifs. Pour en savoir plus et obtenir un exemple de commande et de réponse, consultez la section Afficher l'état des nœuds.

Ajouter un pool de nœuds

Vous pouvez ajouter des pools de nœuds en créant une ressource nodepools.baremetal.cluster.gke.io dans le cluster d'administrateur. Par exemple, vous pouvez spécifier la configuration suivante pour ajouter un nouveau pool de nœuds nommé "nodepool-new" avec les adresses IP des nœuds 10.200.0.7 et 10.200.0.8 :

  apiVersion: baremetal.cluster.gke.io/v1
  kind: NodePool
  metadata:
    name: node-pool-new
    namespace: cluster-my-cluster
  spec:
    clusterName: my-cluster
    nodes:
    - address: 10.200.0.7
    - address: 10.200.0.8
    taints:
    - key: <key1>
      value: <value1>
      effect: NoSchedule
    labels:
      key1: <value1>
      key2: <value2>

Les configurations NodePool.spec.taints et NodePool.spec.labels sont rapprochées aux nœuds. Tous les rejets et libellés directement ajoutés sont supprimés. Le plan de contrôle ne supprime pas les rejets et les libellés que vous ajoutez directement lors du processus de synchronisation.

Pour contourner cette étape du rapprochement, vous pouvez annoter le nœud avec baremetal.cluster.gke.io/label-taint-no-sync.

La ressource de pool de nœuds doit être créée dans le même espace de noms que le cluster associé et référencer le nom du cluster dans le champ spec.clusterName.

Stockez la configuration dans un fichier nommé node-pool-new.yaml. Appliquez la configuration au cluster d'administrateur à l'aide de la commande suivante : Utilisez l'option --kubeconfig pour spécifier explicitement la configuration du cluster d'administrateur si nécessaire :

  kubectl apply -f node-pool-new.yaml

Supprimer un pool de nœuds

Vous supprimez les pools de nœuds avec kubectl delete. Par exemple, pour supprimer le pool de nœuds ajouté à la section précédente, node-pool-new, utilisez la commande suivante :

  kubectl -n cluster-my-cluster delete nodepool node-pool-new

La suppression d'un pool de nœuds de calcul dans un cluster peut provoquer l'interruption des pods. Si un PodDisruptionBudget (PDB) est en place, il se peut que vous ne puissiez pas supprimer un pool de nœuds. Pour en savoir plus sur les règles d'interruption des pods, consultez la section Supprimer des nœuds bloqués par le budget d'interruption de pod.