Excluir um cluster - Amazon EKS

Ajudar a melhorar esta página

Para contribuir com este guia de usuário, escolha o link Editar esta página no GitHub, disponível no painel direito de cada página.

Excluir um cluster

Quando terminar de usar um cluster do Amazon EKS, será necessário excluir os recursos associados a ele para não causar custos desnecessários.

É possível excluir um cluster com eksctl, Console de gerenciamento da AWS ou AWS CLI.

Considerações

  • Se receber um erro porque o criador do cluster foi removido, consulte este artigo para resolvê-lo.

  • Os recursos do Amazon Managed Service for Prometheus estão fora do ciclo de vida do cluster e precisam ser mantidos separados do cluster. Ao excluir seu cluster, certifique-se de excluir também todos os extratores relevantes para interromper os custos aplicáveis. Para obter mais informações, consulte Encontrar e excluir extratores no Guia do usuário do Amazon Managed Service for Prometheus.

  • Para remover um cluster conectado, consulte Cancelar o registro de um cluster do Kubernetes no console do Amazon EKS

  • Antes de excluir um cluster, verifique se a proteção contra exclusão está desabilitada.

Considerações para o Modo Automático do EKS

  • Todos os nós do Modo Automático do EKS serão excluídos, incluindo as instâncias gerenciadas pelo EC2

  • Todos os balanceadores de carga serão excluídos

Para obter mais informações, consulte Desabilitar o Modo Automático do EKS.

Etapas de pré-requisitos

Veja a seguir as etapas que devem ser executadas primeiro para poder excluir um cluster. Essas etapas se aplicam independentemente do método usado para excluir o cluster.

  1. Liste todos os serviços em execução no cluster.

    kubectl get svc --all-namespaces
  2. Exclua todos os serviços que têm um valor EXTERNAL-IP associado. Esses serviços são liderados por um balanceador de carga do Elastic Load Balancing, e será necessário excluí-los no Kubernetes para permitir que o balanceador de carga e os recursos associados sejam liberados corretamente. Substitua service-name pelo nome de cada serviço listado, conforme descrito.

    kubectl delete svc service-name
  3. Exclua também quaisquer recursos de entrada. Se você não excluir os recursos de entrada, o application load balancer permanecerá, mesmo se você excluir o cluster. Substitua ingress-name pelo nome dos seus recursos de entrada.

    kubectl get ingress --all-namespaces
    kubectl delete ing ingress-name

Excluir cluster (eksctl)

Este procedimento exige a versão eksctl 0.215.0 ou superior. É possível verificar a versão com o seguinte comando:

eksctl version

Para obter instruções sobre como instalar ou atualizar o eksctl, consulte Instalação na documentação do eksctl.

  1. Siga as etapas de pré-requisito. Depois de fazer isso, exclua seu cluster e seus nós associados com o comando a seguir, substituindo prod pelo nome do seu cluster.

    eksctl delete cluster --name prod

    Resultado:

    [ℹ] using region region-code [ℹ] deleting EKS cluster "prod" [ℹ] will delete stack "eksctl-prod-nodegroup-standard-nodes" [ℹ] waiting for stack "eksctl-prod-nodegroup-standard-nodes" to get deleted [ℹ] will delete stack "eksctl-prod-cluster" [✔] the following EKS cluster resource(s) for "prod" will be deleted: cluster. If in doubt, check CloudFormation console

Excluir cluster (console do AWS)

  1. Siga as etapas de pré-requisito. Depois de fazer isso, exclua todos os grupos de nós e perfis do Fargate.

    1. Abra o console do Amazon EKS.

    2. No painel de navegação à esquerda, escolha Clusters do Amazon EKS e, em seguida, na lista de clusters com guias, escolha o nome do cluster que você deseja excluir.

    3. Escolha a guia Compute (Computação) e escolha um grupo de nós para exclusão. Escolha Delete (Excluir), insira o nome do grupo de nós e depois escolha Delete (Excluir). Exclua todos os grupos de nós no cluster.

      nota

      Os grupos de nós listados são somente grupos de nós gerenciados .

    4. Escolha um perfil do Fargate para excluir, selecione Delete (Excluir), insira o nome do perfil e selecione Delete (Excluir). Exclua todos os perfis do Fargate no cluster.

  2. Exclua todas as pilhas do AWS CloudFormation de nós autogerenciados.

    1. Abra o console do AWS CloudFormation.

    2. Escolha a pilha de nós a ser excluída e, então, escolha Delete (Excluir).

    3. Na caixa de diálogo de confirmação Delete stack (Excluir pilha), escolha Delete stack (Excluir pilha). Exclua todas as pilhas de nós autogerenciados do cluster.

  3. Excluir o cluster.

    1. Abra o console do Amazon EKS.

    2. escolha o cluster a ser excluído e escolha Delete (Excluir).

    3. Na tela de confirmação de excluir cluster, selecione Delete (Excluir).

  4. (Opcional) Exclua a pilha do VPC AWS CloudFormation.

    1. Abra o console do AWS CloudFormation.

    2. Selecione a pilha da VPC a ser excluída e, então, escolha Delete (Excluir).

    3. Na caixa de diálogo de confirmação Delete stack (Excluir pilha), escolha Delete stack (Excluir pilha).

Excluir cluster (AWS CLI)

  1. Siga as etapas de pré-requisito. Depois de fazer isso, exclua todos os grupos de nós e perfis do Fargate.

    1. Liste os grupos de nós no cluster com o comando a seguir.

      aws eks list-nodegroups --cluster-name my-cluster
      nota

      Os grupos de nós listados são somente grupos de nós gerenciados .

    2. Exclua cada grupo de nós com o comando a seguir. Exclua todos os grupos de nós no cluster.

      aws eks delete-nodegroup --nodegroup-name my-nodegroup --cluster-name my-cluster
    3. Liste os perfis do Fargate no cluster com o comando a seguir.

      aws eks list-fargate-profiles --cluster-name my-cluster
    4. Exclua cada perfil do Fargate com o comando a seguir. Exclua todos os perfis do Fargate no cluster.

      aws eks delete-fargate-profile --fargate-profile-name my-fargate-profile --cluster-name my-cluster
  2. Exclua todas as pilhas do AWS CloudFormation de nós autogerenciados.

    1. Liste suas pilhas disponíveis no AWS CloudFormation com o seguinte comando. Encontre o nome do modelo do nó no resultado.

      aws cloudformation list-stacks --query "StackSummaries[].StackName"
    2. Exclua a pilha de nós com o comando a seguir, substituindo node-stack pelo nome da sua pilha de nós. Exclua todas as pilhas de nós autogerenciados do cluster.

      aws cloudformation delete-stack --stack-name node-stack
  3. Exclua o cluster com o comando a seguir, substituindo my-cluster pelo nome do cluster.

    aws eks delete-cluster --name my-cluster
  4. (Opcional) Exclua a pilha do VPC AWS CloudFormation.

    1. Liste suas pilhas disponíveis no AWS CloudFormation com o seguinte comando. Encontre o nome do modelo da VPC na saída resultante.

      aws cloudformation list-stacks --query "StackSummaries[].StackName"
    2. Exclua a pilha da VPC com o comando a seguir, substituindo my-vpc-stack pelo nome da pilha da VPC.

      aws cloudformation delete-stack --stack-name my-vpc-stack