Como usar vários projetos do Google Cloud

Nesta página, mostramos como usar projetos separados do Google Cloud para diferentes aspectos do GKE On-Prem.

O arquivo de configuração do GKE On-Prem tem vários campos para especificar um ID do projeto do Google Cloud.

...
usercluster:
  usagemetering:
    bigqueryprojectid: ""
...
gkeconnect:
  projectid: ""
...
stackdriver:
  projectid: ""
...
cloudauditlogging:
  projectid: ""

A ideia é ter um projeto para se conectar ao GKE On-Prem, outro para geração de registros e monitoramento e assim por diante.

Não é necessário usar IDs de projeto separados. Por exemplo, é possível usar o mesmo projeto para se conexão e geração de registros. Se quiser, use o mesmo projeto para tudo.

Projeto de medição de uso

Se você ativar a medição de uso do GKE para um cluster de usuário, o GKE On-Prem armazenará dados de uso em um conjunto de dados do BigQuery associado a um projeto do Cloud de sua escolha.

No arquivo de configuração no GKE On-Prem, defina usercluster.usagemetering.bigqueryprojectid como o ID do projeto do Cloud em que serão armazenados os dados de uso.

Como ativar APIs no projeto de medição de uso

Para ativar as APIs necessárias no seu projeto de medição de uso:

Linux e macOS

gcloud services enable --project [PROJECT_ID] \
    bigquery.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto de medição de uso.

Windows

gcloud services enable --project [PROJECT_ID] ^
    bigquery.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto de medição de uso.

Como atribuir papéis a contas de serviço no projeto de medição de uso

Sua conta de serviço de medição de uso precisa receber determinados papéis no projeto de medição de uso.

Para detalhes, consulte a conta de serviço de medição de uso.

Projeto connect

Quando você cria um cluster de usuário, o GKE On-Prem usa o Connect para registrar o cluster em um projeto do Cloud de sua escolha. Depois de registrar o cluster, você usa o Console do Google Cloud para gerenciá-lo.

O Connect usa uma implantação (em inglês) denominada agente do Connect para estabelecer uma conexão entre o cluster do GKE On-Prem e o projeto do Cloud.

No arquivo de configuração GKE On-Prem, defina gkeconnect.projectid como o ID do projeto do Cloud em que o cluster será registrado.

Como ativar APIs no projeto connect

Para ativar as APIs necessárias no projeto connect:

Linux e macOS

gcloud services enable --project [PROJECT_ID] \
    cloudresourcemanager.googleapis.com \
    container.googleapis.com \
    gkeconnect.googleapis.com \
    gkehub.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto connect.

Windows

gcloud services enable --project [PROJECT_ID] ^
    cloudresourcemanager.googleapis.com ^
    container.googleapis.com ^
    gkeconnect.googleapis.com ^
    gkehub.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto connect.

Como atribuir papéis a contas de serviço no projeto connect

A conta de serviço connect-register e a conta de serviço connect-agent precisam receber determinados papéis no projeto connect.

Para detalhes, consulte Conta de serviço connect-register e Conta de serviço connect-agent.

Projeto logging-monitoring

O Cloud Logging e o Cloud Monitoring coletam dados do cluster do GKE On-Prem e os disponibilizam para o Google Cloud. Para ver registros e métricas do cluster, especifique um projeto do Cloud associado.

No arquivo de configuração do GKE On-Prem, defina stackdriver.projectid como o ID do projeto do Cloud que você quer associar a geração de registros e monitoramento.

Como ativar APIs no projeto logging-monitoring

Para ativar as APIs necessárias no projeto logging-monitoring:

Linux e macOS

gcloud services enable --project [PROJECT_ID] \
    stackdriver.googleapis.com \
    monitoring.googleapis.com \
    logging.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto connect.

Windows

gcloud services enable --project [PROJECT_ID] ^
    stackdriver.googleapis.com ^
    monitoring.googleapis.com ^
    logging.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto connect.

Como conceder papéis a contas de serviço no projeto logging-monitoring

Sua conta de serviço logging-monitoring precisa receber determinados papéis no projeto logging-monitoring.

Para detalhes, consulte Conta de serviço logging-monitoring.

Projeto de registro de auditoria

Se você ativar os registros de auditoria do Cloud para o GKE On-Prem, as entradas correspondentes do servidor da API Kubernetes do cluster serão enviadas ao Google Cloud. É possível ver as entradas de registro de auditoria em um projeto do Cloud de sua escolha.

No arquivo de configuração do GKE On-Prem, defina cloudauditlogging.projectid como o ID do projeto do Cloud em que você quer ver os registros de auditoria.

Como ativar APIs no projeto de registro de auditoria

Para ativar as APIs necessárias no projeto de registro de auditoria:

Linux e macOS

gcloud services enable --project [PROJECT_ID] \
    anthosgke.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto de registro de auditoria.

Windows

gcloud services enable --project [PROJECT_ID] ^
    anthosgke.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto de registro de auditoria.

Como conceder papéis a contas de serviço no projeto de registro de auditoria

Sua conta de serviço de registro de auditoria precisa receber determinados papéis do projeto de registro de auditoria.

Para detalhes, consulte Conta de serviço de registro de auditoria.

Projeto pai da conta de serviço incluída na lista de permissões

Para instalar o GKE On-Prem, você precisa ter:

  • ativado a API Anthos. A ativação desta API pode gerar cobranças. Para mais informações, consulte o guia de preços;

  • criado um projeto do Cloud;

  • no projeto do Cloud, criado uma conta de serviço e executado as ações necessárias para que ela seja incluída na lista de permissões. A conta de serviço é chamada de conta de serviço incluída na lista de permissões.

O projeto do Cloud em que você criou a conta de serviço da lista de permissões é chamado de pai da conta de serviço incluída na lista de permissões. Esse projeto pode ser igual a um dos projetos especificados no arquivo de configuração do GKE On-Prem ou pode ser diferente de todos os projetos especificados no arquivo de configuração.

Para ativar as APIs necessárias para o projeto pai da conta de serviço incluída na lista de permissões, faça o seguinte:

Linux e macOS

gcloud services enable --project [PROJECT_ID] \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto pai da conta de serviço incluída na lista de permissões.

Windows

gcloud services enable --project [PROJECT_ID] ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

[PROJECT_ID] é o ID do projeto pai da conta de serviço incluída na lista de permissões.

A seguir

Saiba mais sobre contas de serviço e chaves do GKE On-Prem.