Configurar um cluster a ser gerenciado pela API Anthos On-Prem

A API Anthos On-Prem é uma API hospedada no Google Cloud que permite gerenciar o ciclo de vida dos clusters locais usando ferramentas padrão: o Console do Google Cloud, a CLI do Google Cloud ou o Terraform. Quando você cria um cluster usando uma dessas ferramentas, a API armazena metadados sobre o estado do cluster na região do Google Cloud especificada na criação. Esses metadados permitem gerenciar o ciclo de vida do cluster usando as ferramentas padrão. Se você quiser usar esses clientes para visualizar detalhes do cluster ou gerenciar o ciclo de vida dos clusters criados usando gkectl, será necessário registrar os clusters com o Anthos On-Prem API.

Terminologia

A inscrição de um cluster permite gerenciar o ciclo de vida dele usando o console, a CLI da gcloud ou o Terraform.

O registro de um cluster é um processo separado que o registra para uma frota. Uma frota é um agrupamento lógico de clusters do Kubernetes que podem ser gerenciados juntos. Todos os clusters do Anthos no VMware são registrados em uma frota no momento da criação do cluster. Ao criar um cluster usando o gkectl, ele é registrado no projeto do Google Cloud que você especifica no campo gkeConnect.projectID no arquivo de configuração do cluster. Esse projeto é chamado de projeto host da frota. Para saber mais sobre frotas, incluindo casos de uso, práticas recomendadas e exemplos, consulte a documentação Gerenciamento de frotas.

Ver clusters registrados

Todos os clusters de frota são exibidos nas páginas Clusters do Anthos e Clusters do GKE no console. Isso fornece uma visão geral de toda a frota e, para clusters do Anthos no VMware, além de permitir ver quais clusters são gerenciados pela API Anthos On-Prem.

Para ver os clusters da frota:

  1. No console, acesse a página de clusters do Anthos.
    Acesse a página de clusters do Anthos
  2. Selecione o projeto do Google Cloud.
    • Se Anthos (VMware) for exibido na coluna Tipo, o cluster será gerenciado pela API Anthos On-Prem.
    • Se Externo for exibido na coluna Tipo, o cluster não vai ser gerenciado pela API Anthos On-Prem.
Lista de clusters do Anthos

Requisitos

  • Os clusters de usuário precisam ser da versão 1.11 ou mais recente.
  • Os clusters de administrador precisam ser da versão 1.13 ou mais recente.
  • Se a organização tiver configurado uma lista de permissões que permita o tráfego do Google APIs e de outros endereços pelo servidor proxy, adicione o seguinte à lista de permissões:

    • gkeonprem.googleapis.com
    • gkeonprem.mtls.googleapis.com

    Esses são os nomes de serviço da API Anthos On-Prem.

  • Se você não for proprietário de um projeto, precisa receber, no mínimo, o papel roles/gkeonprem.admin do Identity and Access Management. Para ver detalhes sobre as permissões incluídas nesse papel, consulte Papéis do GKE On-Prem na documentação do IAM.

Registrar um cluster

Para registrar um cluster para gerenciamento pela API Anthos On-Prem:

  1. Verifique se você tem a versão mais recente da CLI gcloud, incluindo os componentes beta da CLI gcloud.

    1. Se você ainda não tiver os componentes beta, execute o seguinte comando para instalá-los:

      gcloud components install beta
      
    2. Atualize os componentes da CLI gcloud, se necessário:

        gcloud components update
      
  2. Ative a API Anthos On-Prem no projeto host da frota:

    gcloud services enable \
        --project FLEET_HOST_PROJECT_ID \
        gkeonprem.googleapis.com
    

    Substitua FLEET_HOST_PROJECT_ID pelo ID do projeto host da frota. Este é o ID do projeto que foi configurado na seção gkeconnect do arquivo de configuração do cluster de administrador ou no arquivo de configuração do cluster de usuário.

  3. Registre o cluster com a API Anthos On-Prem:

    Cluster de usuário

    Role a tela para cima, se necessário, para preencher o marcador ADMIN_CLUSTER_NAME para a flag --admin-cluster-membership.

    gcloud beta container vmware clusters enroll USER_CLUSTER_NAME  \
      --project=FLEET_HOST_PROJECT_ID \
      --admin-cluster-membership=projects/FLEET_HOST_PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \
      --location=LOCATION
    

    Substitua:

    • USER_CLUSTER_NAME: o nome do cluster de usuário que você quer registrar.

    • FLEET_HOST_PROJECT_ID O ID do projeto host da frota.

    • ADMIN_CLUSTER_NAME: o cluster de administrador que gerencia o cluster de usuário. O nome do cluster de administrador é o último segmento do nome totalmente especificado que identifica o cluster no Google Cloud:

    • LOCATION: a região do Google Cloud em que a API Anthos On-Prem é executada. Especifique us-west1 ou outra região compatível. Após o registro do cluster, não é possível alterar a região. Além de definir a região em que a API Anthos On-Prem é executada, esta é a região em que o seguinte é armazenado:

      • Os metadados do cluster de usuário de que a API Anthos On-Prem precisa para gerenciar o ciclo de vida do cluster
      • Os dados do Cloud Logging e do Cloud Monitoring dos componentes do sistema
      • O registro de auditoria do administrador criado pelos registros de auditoria do Cloud

    Cluster de administrador

    gcloud beta container vmware admin-clusters enroll ADMIN_CLUSTER_NAME \
       --project=FLEET_HOST_PROJECT_ID \
       --admin-cluster-membership=projects/FLEET_HOST_PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \
       --location=LOCATION
    

    Substitua:

    • ADMIN_CLUSTER_NAME: o nome do cluster de administrador que você quer registrar.

    • FLEET_HOST_PROJECT_ID O ID do projeto host da frota.

      O ADMIN_CLUSTER_NAME e o FLEET_HOST_PROJECT_ID são usados para formar o nome do cluster totalmente especificado para a sinalização --admin-cluster-membership.

    • LOCATION: a região do Google Cloud em que a API Anthos On-Prem é executada. Especifique us-west1 ou outra região compatível. Após o registro do cluster, não é possível alterar a região. Além de definir a região em que a API Anthos On-Prem é executada, esta é a região em que o seguinte é armazenado:

      • Os metadados do cluster de usuário de que a API Anthos On-Prem precisa para gerenciar o ciclo de vida do cluster
      • Os dados do Cloud Logging e do Cloud Monitoring dos componentes do sistema
      • O registro de auditoria do administrador criado pelos registros de auditoria do Cloud
  4. Depois que o cluster for registrado, será possível usar os seguintes comandos para receber informações sobre os clusters:

    Cluster de usuário

    • Para descrever um cluster de usuário:
    gcloud beta container vmware clusters describe USER_CLUSTER_NAME \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    
    • Para listar os clusters de usuário:
    gcloud beta container vmware clusters list \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    

    Cluster de administrador

    • Para descrever um cluster de administrador:
    gcloud beta container vmware admin-clusters describe ADMIN_CLUSTER_NAME \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    
    • Para listar os clusters de administrador:
    gcloud beta container vmware admin-clusters list \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    

Conexão ao cluster

Depois que o cluster for registrado na API Anthos On-Prem, você precisará escolher e configurar um método de autenticação para gerenciar o cluster no console do Google Cloud. O método de autenticação selecionado também controla o acesso ao cluster pela linha de comando. Para ver mais informações, consulte os seguintes tópicos: