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 forma de excluir um cluster de usuário depende de o cluster estar registrado ou não na API GKE On-Prem. Um cluster de usuário será registrado na API GKE 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 GKE On-Prem. Coletivamente, esses aplicativos padrão são chamados de clientes da API GKE On-Prem.
O cluster foi criado usando
gkectl
, mas foi registrado na API GKE On-Prem.
Se o cluster estiver registrado na API GKE On-Prem, use um cliente da API GKE On-Prem
para excluir o cluster. Se o cluster não estiver registrado na
API GKE On-Prem, use gkectl
na estação de trabalho do administrador para excluir o cluster.
Para encontrar todos os clusters de usuário registrados na API GKE 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á registrado na API GKE 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
saber mais sobre as permissões incluídas nesse papel, consulte
Papéis da API GKE On-Prem
na documentação do IAM.
Excluir cargas de trabalho com estado
Antes de excluir o cluster, exclua as cargas de trabalho, PVCs e PVs com estado
executando kubectl delete
.
Excluir um cluster de usuário
gkectl
É possível usar gkectl
para excluir clusters que não estão inscritos na
API GKE On-Prem. Se as regras de proxy e firewall da organização permitirem que o tráfego alcance gkeonprem.googleapis.com
e gkeonprem.mtls.googleapis.com
(os nomes de serviço da API GKE On-Prem), gkectl
poderá excluir os clusters registrados.
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á registrado, mas gkectl
não conseguiu acessar a
API GKE On-Prem. Nesse caso, a coisa mais fácil é usar um
cliente da API GKE 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
Se o cluster de usuário for gerenciado pela API GKE On-Prem, siga estas etapas para excluí-lo:
No console, acesse a página de visão geral dos clusters do Google Kubernetes Engine.
Selecione o projeto do Cloud em que o cluster de usuário está.
Na lista de clusters, localize aquele que você quer excluir. Se o Tipo for externo, isso indica que o cluster foi criado usando
gkectl
e não foi registrado na API GKE On-Prem. Nesse caso, siga as etapas na guiagkectl
para excluir o cluster.Se o ícone na coluna Status indicar um problema, siga as etapas na guia da CLI gcloud para excluir o cluster. É necessário adicionar a sinalização
--ignore-errors
ao comando de exclusão.Clique no nome da programação que você quer excluir.
No painel Detalhes, perto da parte de cima da janela, clique em
Excluir.Quando solicitado a confirmar, insira o nome do cluster e clique em Remover.
CLI da gcloud
Se o cluster de usuário for gerenciado pela API GKE On-Prem, faça o seguinte em um computador que tenha a gcloud CLI instalada:
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.28.300-gke.123 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.