Partilhar via


Excluir um pool de nós do Serviço Kubernetes do Azure (AKS)

Este artigo descreve a eliminação de pools de nós no Serviço Kubernetes do Azure (AKS), incluindo o que acontece quando se elimina um pool de nós e como eliminar um pool de nós.

O que acontece quando se elimina um pool de nós?

Quando você exclui um pool de nós, os seguintes recursos são excluídos:

  • O conjunto de escala de máquina virtual (VMSS) e máquinas virtuais (VMs) para cada nó no pool de nós
  • Instâncias de nós no pool de nós e quaisquer pods em execução nesses nós

Eliminar um pool de nós

Importante

Tenha em mente as seguintes informações ao apagar um pool de nós:

  • Não é possível recuperar um pool de nós depois que ele é excluído. Você precisa criar um novo pool de nós e reimplantar seus aplicativos.

Exclua um pool de nós usando o az aks nodepool delete comando.

az aks nodepool delete \
    --resource-group <resource-group-name> \
    --cluster-name <cluster-name> \
    --name <node-pool-name>

Para verificar se o pool de nós foi excluído com êxito, use o kubectl get nodes comando para confirmar se os nós no pool de nós não existem mais.

Ignorar PodDisruptionBudgets (PDBs) ao remover um pool de nós existente

Se o seu cluster tiver PodDisruptionBudgets que impedem a eliminação do pool de nós, pode ignorar os requisitos do PodDisruptionBudget definindo --ignore-pdb. Para saber mais sobre PodDisruptionBudgets, consulte:

  1. Eliminar um pool de nós existente sem respeitar os PodDisruptionBudgets definidos no cluster, usando o comando az aks nodepool delete com o parâmetro --ignore-pdb.

    az aks nodepool delete \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name nodepool1 \
        --ignore-pdb
    
  2. Para verificar se o pool de nós foi excluído com êxito, use o kubectl get nodes comando para confirmar se os nós no pool de nós não existem mais.

Remover VMs específicas em um pool de nós existente

Nota

Quando você exclui uma VM com esse comando, o AKS não executa cordão e drenagem. Para minimizar a interrupção do reagendamento de pods atualmente em execução na VM que planeia excluir, execute um cordon e drain na VM antes de excluir. Você pode aprender mais sobre como isolar e drenar usando o cenário de exemplo fornecido no tutorial de redimensionamento de grupos de nós.

  1. Liste os nós existentes usando o kubectl get nodes comando.

    kubectl get nodes
    

    Sua saída deve ser semelhante à saída de exemplo a seguir:

    NAME                                 STATUS   ROLES   AGE   VERSION
    aks-mynodepool-20823458-vmss000000   Ready    agent   63m   v1.21.9
    aks-mynodepool-20823458-vmss000001   Ready    agent   63m   v1.21.9
    aks-mynodepool-20823458-vmss000002   Ready    agent   63m   v1.21.9
    
  2. Exclua as VMs especificadas usando o az aks nodepool delete-machines comando. Certifique-se de substituir os espaços reservados pelos seus próprios valores.

    az aks nodepool delete-machines \
        --resource-group <resource-group-name> \
        --cluster-name <cluster-name> \
        --name <node-pool-name> \
        --machine-names <vm-name-1> <vm-name-2>
    
  3. Verifique se as VMs foram excluídas com êxito usando o kubectl get nodes comando.

    kubectl get nodes
    

    Sua saída não deve mais incluir as VMs especificadas no az aks nodepool delete-machines comando.

Próximos passos

Para obter mais informações sobre como ajustar tamanhos de "node pools" no AKS, consulte Redimensionar node pools.