Como excluir um cluster de administrador

Nesta página, descrevemos como excluir um cluster de administrador criado com o Google Distributed Cloud (somente software) para VMware.

Antes de começar

Antes de excluir um cluster de administrador, siga estas etapas:

  • Exclua os clusters de usuário. Consulte Como excluir um cluster de usuários.
  • Exclua todas as cargas de trabalho que usam PodDisruptionBudgets do cluster de administrador.
  • Exclua todos os objetos externos, como PersistentVolumes, do cluster de administração.
  • Defina uma variável de ambiente KUBECONFIG que aponte para o kubeconfig do cluster de administrador que você quer excluir:

    export KUBECONFIG=ADMIN_CLUSTER_KUBECONFIG
    

    em que ADMIN_CLUSTER_KUBECONFIG é o caminho do arquivo kubeconfig do cluster de administrador.

  • Anote o nome do cluster de administrador:

    kubectl get onpremadmincluster

Como cancelar a inscrição do cluster de administrador

Se o cluster de administrador estiver inscrito na API GKE On-Prem, primeiro será necessário cancelar o registro na API. Um cluster de administrador é registrado na API quando você registra explicitamente o cluster ou quando você faz upgrade de um cluster de usuário usando a CLI do Google Cloud.

  1. Liste todos os clusters de administrador inscritos no projeto:

    gcloud container vmware admin-clusters list \
         --project=PROJECT_ID \
         --location=-
    

    Substitua PROJECT_ID pelo ID do projeto host da frota.

    O comando gera o nome de cada cluster de administrador inscrito na API GKE On-Prem no projeto com a região do Google Cloud.

    Definir --location=- significa listar todos os clusters em todas as regiões. Se você precisar reduzir o escopo da lista, defina --location como a região especificada ao inscrever o cluster.

  2. Cancele a inscrição do cluster na API GKE On-Prem:

    gcloud container vmware admin-clusters unenroll  ADMIN_CLUSTER_NAME \
        --project=PROJECT_ID \
        --location=REGION
    

    Substitua:

    • ADMIN_CLUSTER_NAME: o nome do cluster de administrador.
    • PROJECT_ID: o ID do projeto host da frota.
    • REGION: a região do Google Cloud.

    Esse comando remove os recursos da API GKE On-Prem do Google Cloud.

Como excluir registros e monitoramento

Pods de monitoramento e geração de registros do Google Distributed Cloud, implantados de StatefulSets usam PDBs que podem impedir que os nós sejam drenados corretamente. Para excluir corretamente um cluster de administrador, é preciso excluir esses pods.

Para excluir pods de registro e monitoramento, execute os seguintes comandos:

kubectl delete monitoring --all -n kube-system
kubectl delete stackdriver --all -n kube-system

A exclusão do monitoramento limpa os PersistentVolumes (PVs) associados a StatefulSets, mas o PersistentVolume para Stackdriver precisa ser excluído separadamente.

A exclusão do PVs do Stackdriver é opcional. Se você optar por não excluir o PV, registre o local e o nome do PV associado em um local externo fora do cluster do usuário.

A exclusão do PV será propagada por meio da exclusão da reivindicação de volume permanente (PVC, na sigla em inglês).

Para encontrar o PVC do Stackdriver, execute o seguinte comando:

kubectl get pvc -n kube-system

Para excluir o PVC, execute o seguinte comando:

kubectl delete pvc -n kube-system PVC_NAME

Como verificar que a geração de registros e o monitoramento foram excluídos

Para verificar se a geração de registros e o monitoramento foram removidos, execute os seguintes comandos:

kubectl get pvc -n kube-system
kubectl get statefulsets -n kube-system

Como limpar a partição F5 de um cluster de administrador

A exclusão do namespace gke-system do cluster de administrador garante a limpeza adequada da partição F5, permitindo que você reutilize a partição para outro cluster de administrador.

Para excluir o namespace gke-system, execute o seguinte comando:

kubectl delete ns gke-system

Em seguida, exclua os serviços restantes do tipo LoadBalancer. Para listar todos os serviços, execute o seguinte comando:

kubectl get services --all-namespaces

Para cada serviço do tipo LoadBalancer, exclua-o executando o seguinte comando:

kubectl delete service SERVICE_NAME -n SERVICE_NAMESPACE

Em seguida, no console F5 BIG-IP:

  1. No canto superior direito do console, alterne para a partição para limpar.
  2. Selecione Local Traffic > Virtual Servers > Virtual Server List.
  3. No menu Virtual Servers, remova todos os IPs virtuais.
  4. Selecione Pools e exclua todos os pools.
  5. Selecione Nodes e exclua todos os nós.

Como verificar se a partição F5 está limpa

CLI

Verifique se o VIP está inativo executando o seguinte comando:

ping -c 1 -W 1 F5_LOAD_BALANCER_IP; echo $?

que retornará 1 se o VIP estiver inativo.

IU do F5

Para verificar se a partição foi limpa na interface do usuário do F5, execute as seguintes etapas:

  1. No canto superior direito, clique no menu suspenso Partition. Selecione a partição do seu cluster de administrador.
  2. No menu Main à esquerda, selecione Local Traffic > Network Traffic. Não haverá nada listado abaixo do mapa da rede de trânsito local.
  3. Em Local Traffic > Virtual Servers, selecione Nodes e, em seguida, Nodes List. Não haverá nada listado aqui.

Se houver alguma entrada restante, exclua-as manualmente da IU.

Como desligar máquinas de nó de administrador

Primeiro, execute este comando para ver os nomes das máquinas antes de desligá-las.

kubectl get machines -o wide

A saída listará os nomes das máquinas. Agora é possível encontrá-las na IU do vSphere.

Para excluir as máquinas de nós do plano de controle do administrador, é necessário desativar cada uma das VMs de administrador restantes no pool de recursos do vSphere.

IU do vSphere

Siga as etapas abaixo:

  1. No menu do vSphere, selecione a VM no pool de recursos do Vsphere.
  2. Na parte superior do menu da VM, clique em Actions.
  3. Selecione Power > Power Off. Pode levar alguns minutos para que a VM seja desligada.

Como excluir máquinas de nós de administrador

Depois que a VM for desligada, será possível excluí-la.

IU do vSphere

Siga as etapas abaixo:

  1. No menu do vSphere, selecione a VM no pool de recursos do Vsphere.
  2. Na parte superior do menu da VM, clique em Actions.
  3. Clique em Delete from Disk.

Como excluir o disco de dados

Depois de excluir as VMs, você pode excluir o disco de dados. As etapas diferem um pouco se você tem um cluster de administrador altamente disponível (HA, na sigla em inglês).

Siga estas etapas na IU do vSphere:

Sem alta disponibilidade

  1. No menu do vSphere, selecione o disco de dados do repositório de dados, conforme especificado no campo vCenter.dataDisk no arquivo de configuração do cluster de administrador.
  2. No meio do menu do armazenamento de dados, clique em Excluir.

HA

Os caminhos do disco de dados para as três máquinas do plano de controle de administrador serão gerados automaticamente em /anthos/ADMIN_CLUSTER/default/, por exemplo:

/anthos/ADMIN_CLUSTER_NAME/default/MACHINE_NAME-0-data.vmdk
/anthos/ADMIN_CLUSTER_NAME/default/MACHINE_NAME-1-data.vmdk
/anthos/ADMIN_CLUSTER_NAME/default/MACHINE_NAME-2-data.vmdk

Siga estas etapas para excluir cada disco de dados:

  1. No menu do vSphere, selecione o disco de dados do armazenamento de dados.
  2. No meio do menu do armazenamento de dados, clique em Excluir.

Como excluir o arquivo checkpoint.yaml

Se você estiver excluindo um cluster de administrador de alta disponibilidade, pule esta etapa, porque clusters assim não têm suporte para o arquivo de checkpoint.

O arquivo DATA_DISK_NAME-checkpoint.yaml, em que DATA_DISK_NAME é o nome do disco de dados, está na mesma pasta do disco de dados. Exclua esse arquivo.

Como cancelar o registro do cluster de administrador

Quando você cria um cluster de administrador, register em uma frota do Google Cloud. Execute o seguinte comando para excluir a assinatura da frota , que cancela o registro do cluster:

gcloud container fleet memberships delete ADMIN_CLUSTER_NAME \
    --project=PROJECT_ID \
    --location=global

Esse comando remove os recursos de associação à frota do Google Cloud.

Depois de terminar

Depois de excluir o cluster de administrador, exclua o kubeconfig dele.