Nesta página, descrevemos como excluir um cluster de usuário do GKE no VMware. A exclusão do cluster de usuário cancela o registro do cluster da frota e exclui as cargas de trabalho, os pools de nós, os nós do plano de controle e os recursos correspondentes, como VMs, partições F5 e discos de dados.
Escolha uma ferramenta para excluir um cluster
A maneira como você exclui um cluster de usuário depende se o cluster está inscrito na API Anthos On-Prem. Um cluster de usuário será registrado na API Anthos On-Prem se uma das seguintes condições for verdadeira:
O cluster foi criado usando o Console do Google Cloud, a Google Cloud CLI (CLI gcloud) ou o Terraform, que registra automaticamente o cluster na API Anthos On-Prem. Coletivamente, esses aplicativos padrão são chamados de clientes da API Anthos On-Prem.
O cluster foi criado usando
gkectl
, mas foi inscrito na API Anthos On-Prem.
Se o cluster estiver inscrito na API Anthos On-Prem, use um cliente da API Anthos
Prem para excluí-lo. Se o cluster não estiver inscrito na
API Anthos On-Prem, use gkectl
na estação de trabalho de administrador para excluir o cluster.
Para encontrar todos os clusters de usuário inscritos na API Anthos On-Prem em um projeto específico, execute o seguinte comando:
gcloud container vmware clusters list \ --project=PROJECT_ID \ --location=-
Quando você define --location=-
, significa listar todos os clusters em todas as regiões.
Se você precisar reduzir o escopo da lista, defina --location
como uma região específica.
Se o cluster estiver listado, ele estará inscrito na API Anthos On-Prem. Se você não for proprietário de um projeto, precisa ter, no mínimo, o papel de gerenciamento de identidade e acesso roles/gkeonprem.admin
no projeto para excluir clusters inscritos. Para ver detalhes sobre as permissões incluídas nesse papel, consulte
Papéis do GKE On-Prem
na documentação do IAM.
Excluir cargas de trabalho com estado
Antes de excluir o cluster, execute kubectl delete
para excluir
cargas de trabalho com estado, PVCs e PVs.
Excluir um cluster de usuário
gkectl
É possível usar gkectl
para excluir clusters que não estão inscritos na
API Anthos On-Prem. Se as regras de firewall e proxy da sua organização permitirem
que o tráfego alcance gkeonprem.googleapis.com
e
gkeonprem.mtls.googleapis.com
(os nomes de serviço da API Anthos On-Prem),
gkectl
poderá para excluir clusters inscritos.
Execute o seguinte comando na estação de trabalho do administrador para excluir o cluster:
gkectl delete cluster \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster CLUSTER_NAME
onde
ADMIN_CLUSTER_KUBECONFIG
é o caminho para o arquivo kubeconfig do cluster de administrador.CLUSTER_NAME
é o nome do cluster de usuário que você quer excluir.
Se a exclusão falhar com uma mensagem semelhante à seguinte:
Exit with error: ... failed to unenroll user cluster CLUSTER_NAME failed to create GKE On-Prem API client
Isso significa que o cluster está inscrito, mas gkectl
não conseguiu acessar a
API Anthos On-Prem. Nesse caso, a maneira mais fácil de fazer isso é usar um
cliente da API Anthos On-Prem para excluir o cluster.
Se a exclusão do cluster de usuário falhar na metade, você poderá executar gkectl
com a sinalização --force
para ignorar o erro e continuar a exclusão.
gkectl delete cluster \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster CLUSTER_NAME \ --force
Se você estiver usando o balanceador de carga em pacote Seesaw, exclua o balanceador de carga.
Console do Google Cloud
Se o cluster de usuário for gerenciado pela API Anthos On-Prem, siga as etapas abaixo para excluí-lo:
No console do Google Cloud, acesse a página de clusters do GKE Enterprise.
Selecione o projeto do Cloud em que o cluster de usuário está.
Na lista de clusters, clique no cluster que você quer editar.
No painel Detalhes, se o Tipo for vm Anthos (VMware), siga as etapas a seguir para excluir o cluster usando o console do Google Cloud:
No painel Detalhes, clique em Mais detalhes.
Próximo à parte superior da janela, clique em
Excluir.Quando solicitado a confirmar, clique em Excluir novamente.
Se o Tipo for externo, isso indicará que o cluster foi criado usando
gkectl
. Nesse caso, usegkectl
para excluir o cluster.
CLI da gcloud
Se o cluster de usuário for gerenciado pela API Anthos On-Prem, faça o seguinte em um computador que tenha a CLI gcloud instalada:
Faça login com sua Conta do Google:
gcloud auth login
Atualize os componentes:
gcloud components update
Receba uma lista de clusters para garantir que seja especificado o nome correto do cluster no comando de exclusão:
gcloud container vmware clusters list \ --project=FLEET_HOST_PROJECT_ID \ --location=LOCATION
Substitua:
FLEET_HOST_PROJECT_ID
: o ID do projeto em que o cluster está registrado.LOCATION
: o local do Google Cloud associado ao cluster de usuário.
O resultado será assim:
NAME LOCATION VERSION ADMIN_CLUSTER. STATE example-user-cluster-1a us-west1 1.14.1-gke.39 example-admin-cluster-1 RUNNING
Use o comando a seguir para excluir o cluster:
gcloud container vmware clusters delete USER_CLUSTER_NAME \ --project=FLEET_HOST_PROJECT_ID \ --location=LOCATION \ --force \ --allow-missing
Substitua:
USER_CLUSTER_NAME
: o nome do cluster de usuário a ser verificado.FLEET_HOST_PROJECT_ID
: o ID do projeto em que o cluster está registrado.LOCATION
: o local do Google Cloud associado ao cluster de usuário.
A sinalização
--force
permite excluir um cluster que tenha pools de nós. Sem a sinalização--force
, é necessário excluir os pools de nós primeiro e, em seguida, excluir o cluster.A sinalização
--allow-missing
é uma sinalização padrão da API do Google. Ao incluir essa sinalização, o comando retornará que a operação foi bem-sucedida, se o cluster não for encontrado.Se o comando retornar um erro que contenha o texto
failed connecting to the cluster's control plane
, isso indica problemas de conectividade com o cluster de administrador, o agente do Connect ou no ambiente local.Se você acha que o problema de conectividade é temporário, por exemplo, por causa de problemas de rede, aguarde e execute o comando novamente.
Se a tentativa de comando continuar a falhar, consulte Como coletar registros do agente do Connect para resolver problemas com o agente.
Se você souber que o cluster de administrador foi excluído e se as VMs do administrador ou do cluster de usuário tiverem sido encerradas ou estiverem inacessíveis, inclua a sinalização
--ignore-errors
e tente executar o comando novamente.
Para informações sobre outras sinalizações, consulte a referência da CLI gcloud.
Limpar recursos
Se houve problemas quando você excluiu o cluster, alguns recursos F5 ou vSphere podem ser deixados para trás. As seções a seguir explicam como limpar esses recursos restantes.
Como limpar as VMs de um cluster de usuário no vSphere
Para verificar se as VMs do cluster de usuário foram excluídas, execute as seguintes etapas:
No menu Navigator do lado esquerdo do Cliente da Web do vSphere, clique no menu Hosts and Clusters.
Encontre o pool de recursos do cluster de administrador. Esse é o valor de
vCenter.resourcePool
no arquivo de configuração do cluster de administrador.No pool de recursos, localize as VMs com o prefixo do nome do seu cluster de usuário. Esses são os nós do plano de controle do cluster de usuário. Haverá um ou três deles dependendo se o cluster de usuário tem um plano de controle de alta disponibilidade.
Encontre o pool de recursos do seu cluster de usuário. Esse é o valor de
vCenter.resourcePool
no arquivo de configuração do cluster de usuário. Se o arquivo de configuração do cluster de usuário não especificar um pool de recursos, ele será herdado do cluster de administrador.No pool de recursos, localize as VMs com o prefixo do nome de um pool de nós no cluster de usuário. Esses são os nós de trabalho no cluster de usuário.
Para cada nó do plano de controle e cada nó de trabalho:
No vSphere Web Client, clique com o botão direito do mouse na VM e selecione Power > Power Off.
Quando a VM estiver desativada, clique com o botão direito na VM e selecione Delete from Disk.
Como limpar a partição F5 de um cluster de usuário
Se houver entradas restantes na partição do cluster de usuário, execute as seguintes etapas:
- No console F5 BIG-IP, no canto superior direito do console, alterne para a partição do cluster de usuário que você quer limpar.
- Selecione Local Traffic > Virtual Servers > Virtual Server List.
- No menu Virtual Servers, remova todos os IPs virtuais.
- Selecione Pools e exclua todos os pools.
- Selecione Nodes e exclua todos os nós.
Depois de terminar
Depois que o cluster for excluído, será possível excluir o kubeconfig dele.