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.