Resolver problemas com clusters registrados na API GKE On-Prem

Nesta página, mostramos como investigar problemas criando um cluster de usuário do GKE em VMware no console do Google Cloud.

O cluster de administrador não é exibido na lista suspensa Princípios básicos do cluster.

O cluster de administrador precisa estar registrado em uma frota para que você possa criar clusters de usuário no Console do Google Cloud. Se o cluster de administrador não aparecer na lista suspensa da seção Princípios básicos do cluster no Console do Google Cloud, o cluster de administrador não foi registrado ou está registrado usando o comando gcloud container hub memberships register.

Verifique o status do registro:

  • No Console do Google Cloud, acesse a página Anthos > Clusters e selecione o mesmo projeto do Google Cloud em que você tentou criar o cluster de usuário.

    Acesse a página de clusters do GKE Enterprise

    • Se o cluster de administrador não estiver na lista, consulte Registrar um cluster de administrador.

    • Se o cluster de administrador estiver na lista, isso indicará que o cluster foi registrado usando o comando gcloud container hub memberships register. O comando gcloud não registra clusters de administrador corretamente.

Para corrigir o problema no registro, faça o seguinte:

  1. Exclua a associação de frota do cluster de administrador.

    gcloud container fleet memberships delete ADMIN_CLUSTER_NAME \
      --project=PROJECT_ID \
      --location=global
    
    • ADMIN_CLUSTER_NAME: o nome do cluster de administrador.
    • PROJECT_ID: o ID do seu projeto host da frota. Esse é o projeto que você selecionou ao tentar criar o cluster de usuário no Console do Google Cloud.
  2. Siga as etapas em Registrar um cluster de administrador para registrar novamente o cluster.

Erros de criação de cluster

Nesta seção, descrevemos alguns erros que ocorrem durante a criação do cluster no Console do Google Cloud.

Erro de recurso já existente

A criação do cluster de usuário falha e exibe uma mensagem de erro semelhante a esta:

Resource 'projects/1234567890/locations/europe-west1/vmwareClusters/user-cluster1'
already exists
Request ID: 129290123128705826

Essa mensagem de erro indica que o nome do cluster já está em uso.

Uma solução para corrigir o problema:

  1. Exclua o cluster.

  2. Crie o cluster novamente com outro nome que não entre em conflito com um cluster atual.

Erro nos grupos de antiafinidade

A criação do cluster de usuário falha e exibe uma mensagem de erro semelhante a esta:

- Validation Category: VCenter
    - [FATAL] Hosts for AntiAffinityGroups: Anti-affinity groups enabled with
    available vsphere host number 1 less than 3, please add more vsphere hosts
    or disable anti-affinity groups.

As regras de antiafinidade do VMware Distributed Resource Scheduler (DRS) exigem pelo menos três hosts físicos no ambiente do vSphere. Para corrigir o problema, desative os grupos de antiafinidade na seção Recursos da página Detalhes do cluster da seguinte forma:

  1. No console do Google Cloud, acesse a página de clusters do GKE Enterprise.

    Acesse a página de clusters do GKE Enterprise

  2. Selecione o projeto do Cloud em que o cluster de usuário está.

  3. Na lista de cluster, clique no nome dele e em Ver detalhes no painel Detalhes.

  4. Na seção Recursos, clique em Editar.

  5. Desmarque Ativar grupos antiafinidade e clique em Concluído.

  6. O Console do Google Cloud exibe Status do cluster: alterações em andamento. Clique em Mostrar detalhes para ver a Condição do status do recurso e as Mensagens de status.

Erro de endereços IP conflitantes

A criação do cluster de usuário falha e exibe uma mensagem de erro semelhante a esta:

- Validation Category: Network Configuration
- [FAILURE] CIDR, VIP and static IP (availability and overlapping): user: user
  cluster control plane VIP "10.251.133.132" overlaps with
  example-cluster1/control plane VIP "10.251.133.132"

No momento, não é possível editar campos como o plano de controle VIP e a Entrada VIP na seção Balanceador de carga de Detalhes do cluster no Console do Google Cloud. Para corrigir endereços IP conflitantes, faça o seguinte:

  1. Exclua o cluster.

  2. Crie o cluster novamente com endereços IP que não entrem em conflito com um cluster atual.

Remover clusters não íntegros

Um cluster pode ficar em um estado não íntegro por vários motivos, como os seguintes:

  • Problemas de conectividade com o agente do Connect ou com o ambiente local.

  • O cluster de administrador de um cluster de usuário foi excluído ou há problemas de conectividade entre os clusters de administrador e de usuário.

  • A VM do cluster foi excluída antes de excluir o cluster.

Se o console não conseguir excluir um cluster, use os comandos da gcloud CLI para excluir os recursos do Google Cloud de clusters não íntegros. Se você não atualizou a gcloud CLI recentemente, execute o comando para atualizar os componentes:

gcloud components update

Em seguida, exclua os recursos do Google Cloud.

Cluster de usuário

  1. Exclua o cluster de usuário:

    gcloud container vmware clusters delete USER_CLUSTER_NAME \
      --project=PROJECT_ID \
      --location=REGION \
      --force \
      --allow-missing \
      --ignore-errors

    Substitua:

    • USER_CLUSTER_NAME: o nome do cluster de usuário a ser verificado.

    • PROJECT_ID: o ID do projeto em que o cluster está registrado.

    • REGION: o local do Google Cloud associado ao cluster de usuário. O local é exibido no console.

      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 flag --allow-missing permite que o comando continue se o cluster não for encontrado.

      O --ignore-errors remove os recursos do Google Cloud quando os clusters de administrador e de usuário estão inacessíveis. Alguns recursos do F5 ou do vSphere podem ser deixados para trás. Consulte Como limpar recursos para informações sobre como limpar os recursos restantes.

      Esse comando exclui o cluster se ele existir e remove a API GKE On-Prem e os recursos de associação de frota do Google Cloud.

  2. Confirme se os recursos da API GKE On-Prem foram excluídos:

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

    Definir --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.

  3. Confirme se os recursos de assinatura de frota foram excluídos:

    gcloud container fleet memberships list \
      --project=PROJECT_ID

Cluster de administrador

  1. Se você tiver registrado o cluster de administrador na API GKE On-Prem, cancele a inscrição:

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

    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.

    A sinalização --allow-missing cancela o registro do cluster se a assinatura de frota não for encontrada.

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

  2. Remova o cluster da frota:

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

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

  3. Confirme se os recursos da API GKE On-Prem foram excluídos:

gcloud container fleet memberships delete ADMIN_CLUSTER_NAME --project=FLEET_HOST_PROJECT_ID

Definir --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.

  1. Confirme se os recursos de assinatura de frota foram excluídos:

    gcloud container fleet memberships list \
      --project=PROJECT_ID