Você está visualizando a documentação de uma versão anterior do GKE On-Prem. Veja a documentação mais recente.

Como se preparar para a instalação

Nesta página, você verá algumas etapas a serem seguidas antes de instalar o GKE On-Prem no seu ambiente.

Antes de começar

Revise os seguintes tópicos:

Limitações

Limitação Descrição
Limites máximo e mínimo para clusters e nós

Consulte Cotas e limites. O desempenho do ambiente pode afetar esses limites.

Exclusividade para nomes de cluster de usuário

Todos os clusters de usuário registrados no mesmo projeto do Google Cloud precisam ter nomes exclusivos.

Não é possível implantar em mais de um data center do vCenter e/ou do vSphere

Atualmente, é possível implantar apenas um cluster de administrador e um conjunto de clusters de usuário associados a um único vCenter e/ou data center do vSphere. Não é possível implantar os mesmos clusters de administrador e de usuário em mais de um data center do vCenter e/ou vSphere.

Não é possível alterar as configurações do cluster de forma declarativa após a criação Embora seja possível criar mais clusters e redimensionar clusters atuais, não é possível alterar um cluster atual pelo arquivo de configuração.

Como criar um projeto do Google Cloud

Crie um projeto do Google Cloud, caso ainda não tenha um. Você precisa de um projeto para executar o GKE On-Prem.

Como instalar as ferramentas de interface de linha de comando necessárias

  • Instale o SDK do Cloud, que inclui o gcloud, a interface de linha de comando (CLI, na sigla em inglês) do Google Cloud.

  • Instale o govc, a CLI do VMware vSphere.

  • Instale o Terraform 0.11, que inclui a CLI terraform. Siga as instruções de instalação do Terraform para verificar a instalação e configurar a variável PATH.

Como configurar o SDK do Cloud para usar seu proxy/firewall no laptop/estação de trabalho

Se você estiver usando um proxy para se conectar à Internet no seu laptop ou estação de trabalho, talvez seja necessário configurar o SDK do Cloud para o proxy, para poder executar comandos gcloud e gsutil. Para mais instruções, consulte Como configurar o SDK do Cloud para usar com um proxy/firewall.

Como autorizar o gcloud a acessar o Google Cloud

Depois de instalar o SDK do Cloud, faça login no Google Cloud usando as credenciais da sua conta:

gcloud auth login

Como definir um projeto padrão do Google Cloud

Definir um Google Cloud padrão faz com que todos os comandos do SDK do Cloud sejam executados no projeto, para que você não precise especificar o projeto para cada comando. Para definir um projeto padrão, execute o comando a seguir:

gcloud config set project [PROJECT_ID]

Substitua [PROJECT_ID] pelo ID do projeto. (É possível encontrar o ID do projeto no Console do Cloud ou executar gcloud config get-value project.)

Como criar contas de serviço do Google Cloud

Antes de instalar o GKE On-Prem pela primeira vez, use gcloud para criar quatro contas de serviço do Google Cloud. O GKE On-Prem usa essas contas de serviço para concluir tarefas em seu nome. As seções a seguir descrevem a finalidade de cada conta.

Acessar conta de serviço

Use essa conta de serviço para fazer o download dos binários do GKE On-Prem no Cloud Storage. É a única conta de serviço que o Google coloca na lista de permissões.

Execute o seguinte comando para criar access-service-account:

gcloud iam service-accounts create access-service-account

Registrar conta de serviço

O Connect usa essa conta de serviço para registrar seus clusters do GKE On-Prem no Console do Google Cloud.

Execute o seguinte comando para criar register-service-account:

gcloud iam service-accounts create register-service-account

Conectar conta de serviço

O Connect usa essa conta de serviço para manter uma conexão entre os clusters do GKE On-Prem e o Google Cloud.

Execute o seguinte comando para criar connect-service-account:

gcloud iam service-accounts create connect-service-account

Conta de serviço do pacote de operações do Google Cloud

Essa conta de serviço permite que o GKE On-Prem grave dados de geração de registros e monitoramento no pacote de operações do Google Cloud:

Execute o seguinte comando para criar stackdriver-service-account:

gcloud iam service-accounts create stackdriver-service-account

Como colocar seu projeto e contas na lista de permissões

Depois de comprar o Anthos, o Google colocará na lista de permissões a seguir para conceder acesso ao GKE On-Prem e ao Connect:

  • Seu projeto do Google Cloud.
  • Sua Conta do Google e Contas do Google individuais de membros da equipe.
  • Sua conta de serviço de acesso.

Se você quiser usar um projeto ou uma conta de serviço diferente ou se quiser ativar mais usuários, o suporte do Google Cloud ou o gerente técnico de contas poderá ajudar. Abra um histórico de consultas por meio do Console do Cloud ou da Central de suporte do Google Cloud.

Como ativar as APIs necessárias no projeto

É preciso ativar as seguintes APIs no projeto do Google Cloud:

  • cloudresourcemanager.googleapis.com
  • container.googleapis.com
  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • serviceusage.googleapis.com
  • stackdriver.googleapis.com
  • monitoring.googleapis.com
  • logging.googleapis.com

Para ativar essas APIs, execute o seguinte comando:

gcloud services enable \
cloudresourcemanager.googleapis.com \
container.googleapis.com \
gkeconnect.googleapis.com \
gkehub.googleapis.com \
serviceusage.googleapis.com \
stackdriver.googleapis.com \
monitoring.googleapis.com \
logging.googleapis.com

Como atribuir papéis do Cloud Identity and Access Management às suas contas de serviço

O Cloud IAM concede permissões de contas para chamar as APIs do Google Cloud. Atribua papéis dedicados do Cloud IAM a essas contas de serviço para isolamento de privilégios.

Listar endereços de e-mail de contas de serviço

Primeiro, liste as contas de serviço no seu projeto do Google Cloud:

gcloud iam service-accounts list

Para um projeto do Google Cloud chamado my-gcp-project, a saída deste comando é semelhante a:

gcloud iam service-accounts list
NAME                                    EMAIL
                                        access-service-account@my-gcp-project.iam.gserviceaccount.com
                                        register-service-account@my-gcp-project.iam.gserviceaccount.com
                                        connect-service-account@my-gcp-project.iam.gserviceaccount.com
                                        stackdriver-service-account@my-gcp-project.iam.gserviceaccount.com

Anote o endereço de e-mail de cada conta. Para cada uma das seções a seguir, você fornece a conta de e-mail da conta relevante.

Registrar conta de serviço

Conceda os papéis gkehub.admin e serviceuseage.serviceUsageViewer à sua conta de serviço de registro:

gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[REGISTER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/gkehub.admin"
gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[REGISTER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/serviceusage.serviceUsageViewer"

Conectar conta de serviço

Conceda o papel gkehub.connect à sua conta de serviço do Connect:

gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[CONNECT_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/gkehub.connect"

Conta de serviço do pacote de operações do Google Cloud

Conceda os papéis stackdriver.resourceMetadata.writer, logging.logWriter e monitoring.metricWriter à conta de serviço do pacote de operações do Google Cloud:

gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/stackdriver.resourceMetadata.writer"
gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/logging.logWriter"
gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/monitoring.metricWriter"

Como criar um espaço de trabalho do Stackdriver

O Stackdriver Logging e o Stackdriver Monitoring são ativados por padrão para o GKE On-Prem. Para que o Stackdriver Monitoring funcione corretamente, você precisa criar um espaço de trabalho do Stackdriver.

Para saber como criar um espaço de trabalho do Stackdriver, consulte Receber um espaço de trabalho rapidamente na documentação do Stackdriver Monitoring.

Como colocar endereços na lista de permissões do proxy

Se sua organização exigir acesso à Internet para passar por um proxy HTTP, você precisará colocar os seguintes endereços na lista de permissões do proxy.

As seções a seguir explicam os endereços em detalhes.

Endereços do Google

O GKE On-Prem usa várias APIs do Google para criar e gerenciar clusters. Coloque na lista de permissões os seguintes endereços do Google no proxy:

Address Motivo
accounts.google.com Permite o acesso a Contas do Google para acessar seu projeto do Google Cloud.
cloudresourcemanager.googleapis.com Cria, lê e atualiza metadados para contêineres de recursos do Google Cloud.
console.cloud.google.com Permite acesso ao Console do Google Cloud.
container.googleapis.com Permite acesso à API do Google Kubernetes Engine.
gcr.io Permite o acesso a repositórios do Container Registry, incluindo o repositório do GKE On-Prem.
gkeconnect.googleapis.com Permite acesso ao Connect para estabelecer uma conexão criptografada de longa duração com o Google Cloud.
gkehub.googleapis.com Permite acesso ao Console do Google Cloud para o registro do cluster com seu projeto do Google Cloud.
logging.googleapis.com Permite o acesso à API do Cloud Logging para recursos de geração de registros de métricas de cluster.
monitoring.googleapis.com Permite o acesso à API do Cloud Monitoring para recursos de monitoramento de cluster.
oauth2.googleapis.com Permite acesso à API OAuth2 do Google para autenticação.
serviceusage.googleapis.com
storage.googleapis.com Permite o acesso a intervalos do Cloud Storage.
googleapis.com Permite o acesso a endpoints específicos do produto do Google Cloud.

Endereços de HashiCorp

Use o HashiCorp Terraform versão 0.11 para criar uma VM da estação de trabalho de administrador no vSphere. Para executar o Terraform em um ambiente com um proxy ou firewall, você precisa colocar na lista de permissões os seguintes endereços de HashiCorp:

Address Motivo
checkpoint-api.hashicorp.com Permite o acesso à versão da HashiCorp e a informações de alerta para vários produtos de código aberto e reservados.
releases.hashicorp.com Permite o acesso aos binários da HashiCorp.

VMware, balanceador de carga e outros endereços

Por fim, coloque os endereços a seguir para seu proxy na lista de permissões. Esses endereços podem variar:

Address Motivo
Endereço IP do servidor vCenter Permite o tráfego da Internet para o servidor vCenter.
Todos os endereços IP dos hosts do ESXi Permite o tráfego da Internet para os hosts do ESXi que executam clusters do GKE On-Prem.
Outros endereços IP que você pretende configurar no balanceador de carga Permite o tráfego da Internet para outros endereços IP, como clientes e cargas de trabalho.

Como reservar intervalos de pods e serviços

Para o cluster de administrador e para cada cluster de usuário que você pretende criar, é preciso reservar dois blocos CIDR IPv4 distintos: um para IPs de pods e um para IPs de serviços.

Os tamanhos desses intervalos dependem de quantos pods e serviços você pretende criar. Por exemplo, se você pretende criar menos de 256 Serviços em um cluster, poderá reservar um intervalo de serviço /24, como 10.96.233.0/24. Se você pretende criar menos de 4.096 pods no cluster, poderá reservar um intervalo de pod /20, como 172.16.0.0/20.

Para um determinado cluster, os intervalos de serviços e pods não podem se sobrepor. Além disso, os intervalos de serviços e pods não podem se sobrepor a endereços IP usados para nós em qualquer cluster.

Como preparar seu balanceador de carga

Os clusters do GKE On-Prem podem ser executados com um dos dois modos de balanceamento de carga, "Integrado" e "Manual". Com o modo integrado, os clusters do GKE On-Prem são executados com o balanceador de carga F5 BIG-IP. Com o modo Manual, você configura manualmente um balanceador de carga diferente.

Como preparar partições F5 BIG-IP

Se você optar por usar o modo integrado, precisará criar uma partição F5 BIG-IP para lidar com o balanceamento de carga para cada cluster do GKE On-Prem que você pretende criar.

Inicialmente, você precisa criar pelo menos duas partições: uma para o cluster de administrador e outra para um cluster de usuário. É preciso criar uma partição antes de criar o cluster correspondente.

Não use as partições de cluster para mais nada. Cada um dos clusters precisa ter uma partição exclusiva para esse cluster.

Para saber como criar partições, leia Como criar uma partição administrativa na documentação F5 BIG-IP.

Como usar o modo de balanceamento de carga manual

O modo de balanceamento de carga manual requer mais configuração do que o modo integrado. Para detalhes, consulte Como ativar o balanceamento de carga manual.