A API GKE 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 essas ferramentas para conferir detalhes do cluster ou gerenciar
o ciclo de vida dos clusters criados usando bmctl
, será necessário
registrar os clusters na API GKE On-Prem.
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 Google Distributed Cloud são registrados em uma frota no momento da criação do cluster. Ao criar um cluster usando o bmctl, o cluster
é registrado no projeto do Google Cloud especificado no
campo gkeConnect.projectID
do 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 da frota são exibidos nas páginas Clusters do GKE no console. Isso oferece uma visão geral de toda a frota e, para o Google Distributed Cloud, permite ver quais clusters são gerenciados pela API GKE On-Prem.
Para ver os clusters da frota:
-
No console, acesse a
página clusters do GKE.
Acesse os clusters do GKE -
Selecione o projeto do Google Cloud.
- Se Bare metal for exibido na coluna Tipo, o cluster será gerenciado pela API GKE On-Prem.
- Se Externo for exibido na coluna Tipo, o cluster não vai ser gerenciado pela API GKE On-Prem.
Requisitos
- Somente clusters de usuário e administrador podem ser inscritos com a API GKE On-Prem. Não é possível registrar clusters híbridos e independentes.
Versão 1.13 ou mais recente.
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.
Antes de começar
Configure a CLI da gcloud, se necessário.
Se você precisar instalar a CLI da gcloud, consulte a documentação da CLI da gcloud. Atualize os componentes da gcloud CLI, se necessário:
gcloud components update
Siga estas etapas para ativar e usar a API GKE On-Prem:
Ative a API no projeto:
gcloud services enable \ --project PROJECT_ID \ gkeonprem.googleapis.com
Substitua
PROJECT_ID
pelo ID do projeto host da frota. Esse é o ID do projeto que foi configurado na seçãogkeconnect
do arquivo de configuração do cluster.Se você receber um erro
PERMISSION_DENIED
, verifique novamente o ID do projeto inserido. Se o ID do projeto estiver correto, executegcloud auth login
para fazer login na CLI do Google Cloud com a conta que tem acesso ao projeto.Se esta for a primeira vez que você ativa a API GKE On-Prem no seu projeto, será necessário inicializar a API. Para fazer isso, chame um comando da gcloud CLI que exibe as versões disponíveis que podem ser usadas para criar um cluster:
gcloud container bare-metal clusters query-version-config \ --project=PROJECT_ID \ --location=REGION
Substitua
REGION
porus-west1
ou outra região compatível.
Se a organização tiver configurado uma lista de permissões que permita o tráfego de APIs do Google 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 GKE On-Prem.
Registrar um cluster de usuário
CLI da gcloud
Role a tela para cima, se necessário, para preencher o
marcador ADMIN_CLUSTER_NAME
para a
flag --admin-cluster-membership
.
gcloud container bare-metal clusters enroll USER_CLUSTER_NAME \ --project=PROJECT_ID \ --admin-cluster-membership=projects/PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \ --location=REGION
Substitua:
USER_CLUSTER_NAME
: o nome do cluster de usuário que você quer registrar.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.REGION
: a região do Google Cloud em que a API GKE On-Prem é executada e armazena os metadados do cluster. Especifiqueus-west1
ou outra região compatível. Após o registro do cluster, não é possível alterar a região.
bmctl
Execute as etapas a seguir na estação de trabalho do administrador.
Adicione a seguinte seção ao arquivo de configuração do cluster de administrador:
gkeOnPremAPI: enabled: true location: REGION
Substitua
REGION
pela região do Google Cloud em que a API GKE On-Prem executa e armazena metadados do cluster. Especifiqueus-west1
ou outra região compatível. Após o registro do cluster, não é possível alterar a região.Atualize o cluster:
bmctl update cluster -c USER_CLUSTER_NAME \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Substitua:
USER_CLUSTER_NAME
: o nome do cluster de usuário a ser atualizado.ADMIN_CLUSTER_KUBECONFIG
: o caminho do arquivo kubeconfig do cluster de administrador
Registrar um cluster de administrador
CLI da gcloud
Role a tela para cima, se necessário, para preencher o
marcador ADMIN_CLUSTER_NAME
para a
flag --admin-cluster-membership
.
gcloud container bare-metal admin-clusters enroll ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --admin-cluster-membership=projects/PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \ --location=REGION
Substitua:
ADMIN_CLUSTER_NAME
: o nome do cluster de administrador que você quer registrar.PROJECT_ID
O ID do projeto host da frota.O
ADMIN_CLUSTER_NAME
e oPROJECT_ID
são usados para formar o nome do cluster totalmente especificado para o flag--admin-cluster-membership
.REGION
: a região do Google Cloud em que a API GKE On-Prem é executada e armazena os metadados do cluster. Especifiqueus-west1
ou outra região compatível. Após o registro do cluster, não é possível alterar a região.
bmctl
Execute as etapas a seguir na estação de trabalho do administrador.
Adicione a seguinte seção ao arquivo de configuração do cluster de administrador:
gkeOnPremAPI: enabled: true location: REGION
Substitua
REGION
pela região do Google Cloud em que a API GKE On-Prem executa e armazena metadados do cluster. Especifiqueus-west1
ou outra região compatível. Após o registro do cluster, não é possível alterar a região.Atualize o cluster:
bmctl update cluster -c ADMIN_CLUSTER_NAME \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Substitua:
ADMIN_CLUSTER_NAME
: o nome do cluster de administrador a ser atualizado.ADMIN_CLUSTER_KUBECONFIG
: o caminho do arquivo kubeconfig do cluster de administrador
Receber informações sobre o cluster
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 container bare-metal clusters describe USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=REGION
- Para listar os clusters de usuário:
gcloud container bare-metal 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 a região
especificada ao registrar o cluster.
Cluster de administrador
- Para descrever um cluster de administrador:
gcloud container bare-metal admin-clusters describe ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=REGION
- Para listar os clusters de administrador:
gcloud container bare-metal admin-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 a região
especificada ao registrar o cluster.
Conexão ao cluster
Depois que o cluster for registrado com a API GKE 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: