A API GKE On-Prem é uma API hospedada no Google Cloud que permite gerenciar o
ciclo de vida dos clusters no local usando ferramentas padrão: o
console do Google Cloud, a Google Cloud CLI 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 ver detalhes do cluster ou gerenciar
o ciclo de vida dos clusters que foram criados usando gkectl
, registre 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 GKE 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 da frota são exibidos nas páginas Clusters do GKE Enterprise e Clusters do GKE no console. Isso fornece uma visão geral de toda a frota e, para o GKE no VMware, mostra quais clusters são gerenciados pela API GKE On-Prem.
Para ver os clusters da frota:
-
No console, acesse a página de clusters do GKE Enterprise.
Acesse a página de clusters do GKE Enterprise -
Selecione o projeto do Google Cloud.
- Se VMware for exibido na coluna Tipo, o cluster será gerenciado pela API GKE On-Prem.
- Se Externo aparecer na coluna Tipo, o cluster não será gerenciado pela API GKE On-Prem.
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 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 CLI gcloud, se necessário:
gcloud components update
Verifique se a API GKE On-Prem está ativada no projeto. Para ativar a API, execute este comando:
gcloud services enable \ --project PROJECT_ID \ gkeonprem.googleapis.com
Substitua
PROJECT_ID
pelo ID do projeto host da frota. Este é o ID do projeto que foi configurado na seçãogkeconnect
do arquivo de configuração do cluster de administrador ou no arquivo de configuração do cluster de usuário.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 Google Cloud CLI com a conta que tem acesso ao projeto.Se esta é a primeira vez que você ativa a API GKE On-Prem no seu projeto, talvez seja 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 vmware 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 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
Estes são os nomes de serviço da API GKE On-Prem.
Registrar um cluster
Para registrar um cluster, use a gcloud CLI. Se a versão do cluster
for a 1.15.3 ou mais recente, use a ferramenta de linha de comando gkectl
.
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 vmware 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 executa e armazena metadados de cluster. Especifiqueus-west1
ou outra região compatível. Após o registro do cluster, não é possível alterar a região.
gkectl
1.15.3+
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 de cluster. Especifiqueus-west1
ou outra região compatível. Recomendamos usar a mesma região configurada emstackdriver.clusterLocation
. Após o registro do cluster, não é possível alterar a região.Atualize o cluster:
gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG_FILE
Substitua:
ADMIN_CLUSTER_KUBECONFIG
: o caminho do arquivo kubeconfig do cluster de administradorUSER_CLUSTER_CONFIG_FILE
: o caminho do arquivo de configuração do cluster de usuário.
Registrar um cluster de administrador
CLI da gcloud
gcloud container vmware 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 executa e armazena metadados de cluster. Especifiqueus-west1
ou outra região compatível. Após o registro do cluster, não é possível alterar a região.
gkectl
1.15.3+
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 de cluster. Especifiqueus-west1
ou outra região compatível. Recomendamos usar a mesma região configurada emstackdriver.clusterLocation
. Após o registro do cluster, não é possível alterar a região.Atualize o cluster:
gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG_FILE
Substitua:
ADMIN_CLUSTER_KUBECONFIG
: o caminho do arquivo kubeconfig do cluster de administradorADMIN_CLUSTER_CONFIG_FILE
: o caminho do arquivo de configuração 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 vmware clusters describe USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=REGION
- Para listar os clusters de usuário:
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 a região
especificada ao registrar o cluster.
Cluster de administrador
- Para descrever um cluster de administrador:
gcloud container vmware admin-clusters describe ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=REGION
- Para listar os clusters de administrador:
gcloud container vmware 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.
Conectar ao cluster
Depois que o cluster for registrado com a API GKE On-Prem, escolha e configure 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: