Aggiunta o rimozione di pool di nodi in un cluster

Nei cluster Anthos su Bare Metal, puoi aggiungere o rimuovere pool di nodi in un cluster creando o eliminando risorse personalizzate per i pool di nodi. Utilizzi kubectl per apportare modifiche al pool di nodi.

Puoi aggiungere o eliminare solo pool di nodi worker per un cluster esistente. I pool di nodi del piano di controllo e del bilanciatore del carico aggiunti durante la creazione del cluster sono fondamentali per la funzione del cluster e non possono essere eliminati.

Controlla lo stato dei nodi

Prima di aggiungere o rimuovere i pool di nodi, utilizza kubectl get per controllare lo stato dei nodi e dei rispettivi pool di nodi. Per ulteriori informazioni, inclusi un comando e una risposta di esempio, consulta Visualizzazione dello stato del nodo.

Aggiungi un nuovo pool di nodi

Puoi aggiungere nuovi pool di nodi creando una nuova risorsa nodepools.baremetal.cluster.gke.io nel cluster di amministrazione. Ad esempio, specifica la seguente configurazione per aggiungere un nuovo pool di nodi denominato "nodepool- new" con gli indirizzi IP del nodo 10.200.0.7 e 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>

NodePool.spec.taints e NodePool.spec.labels vengono riconciliate in nodi. Tutte le incompatibilità e le etichette aggiunte direttamente vengono rimosse. Il piano di controllo non rimuove le incompatibilità e le etichette aggiunte direttamente durante il processo di sincronizzazione.

Per ignorare questo passaggio di riconciliazione, puoi annotare il nodo con baremetal.cluster.gke.io/label-taint-no-sync.

La risorsa del pool di nodi deve essere creata nello stesso spazio dei nomi del cluster associato e fare riferimento al nome del cluster nel campo spec.clusterName.

Archivia la configurazione in un file denominato node-pool-new.yaml. Applica la configurazione al cluster di amministrazione con il comando seguente. Utilizza il flag --kubeconfig per specificare esplicitamente la configurazione del cluster di amministrazione, se necessario:

  kubectl apply -f node-pool-new.yaml

Rimuovi un pool di nodi

Rimuovi i pool di nodi con kubectl delete. Ad esempio, per rimuovere il pool di nodi aggiunto nella sezione precedente, node-pool-new, utilizza il comando seguente:

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

La rimozione di un pool di nodi worker in un cluster può causare interruzioni dei pod. Se è presente un PodDisruptionBudget (PDB), potresti non riuscire a rimuovere un pool di nodi. Per saperne di più sui criteri relativi all'interruzione dei pod, consulta Rimozione dei nodi bloccati dal budget di interruzione dei pod.