Adicionar ou remover pools de nós de um cluster

Em clusters do Anthos em bare metal, você adiciona ou remove pools de nós em um cluster criando ou excluindo recursos personalizados do pool de nós. Use kubectl para fazer alterações no pool de nós.

Você só pode adicionar ou excluir pools de nós de trabalho em um cluster existente. Os pools de nós do plano de controle e do balanceador de carga adicionados durante a criação do cluster são essenciais para a função do cluster e não podem ser excluídos.

Para adicionar ou remover nós de um pool de nós de trabalho atual, consulte Adicionar ou remover nós de um cluster.

Verificar o status do nó

Antes de adicionar ou remover pools de nós, use kubectl get para verificar o status dos nós e respectivos pools. Para mais informações, incluindo um comando e uma resposta de amostra, consulte Como visualizar o status do nó.

Adicionar um novo pool de nós

Adicione novos pools de nós criando um novo recurso nodepools.baremetal.cluster.gke.io no cluster de administrador. Em seguida, use o endereço IP dos nós para adicionar eles ao pool de nós. Por exemplo, especifique a seguinte configuração para adicionar um novo pool de nós chamado "nodepool-new" com endereços IP de nó 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>

As configurações NodePool.spec.taints e NodePool.spec.labels são reconciliadas para nós. Todos os taints e rótulos adicionados diretamente são removidos. O plano de controle não remove os taints e os rótulos que você adiciona diretamente durante o processo de sincronização.

Para ignorar essa etapa da reconciliação, anote o nó com baremetal.cluster.gke.io/label-taint-no-sync.

O recurso de pool de nós precisa ser criado no mesmo namespace que o cluster associado e fazer referência ao nome do cluster no campo spec.clusterName.

Armazene a configuração em um arquivo chamado node-pool-new.yaml. Aplique a configuração ao cluster de administrador com o comando a seguir. Use a sinalização --kubeconfig para especificar explicitamente a configuração do cluster de administrador, se necessário:

  kubectl apply -f node-pool-new.yaml

Remover um pool de nós

Remova os pools de nós com kubectl delete. Por exemplo, para remover o pool de nós adicionado na seção anterior, node-pool-new, use o seguinte comando:

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

A remoção de um pool de nós de trabalho em um cluster pode causar interrupções no pod. Se houver um Orçamento de interrupção de pod (PDB, na sigla em inglês) em vigor, você poderá ser impedido de remover um pool de nós. Para mais informações sobre políticas de interrupção de pods, consulte Como remover nós bloqueados pelo Orçamento de interrupção de pod.

A seguir

Se os requisitos da carga de trabalho mudarem após a criação dos pools de nós, vai ser possível atualizar um pool de nós de trabalho para adicionar ou remover nós. Para adicionar ou remover nós de um pool de nós de trabalho, consulte Adicionar ou remover nós de um cluster.