Documentação 1.1.2-gke.0
Nesta página, você verá algumas etapas a serem seguidas antes de instalar o GKE On-Prem no seu ambiente.
Revise os seguintes tópicos:
Observação: para problemas atuais conhecidos, consulte as Notas de lançamento.
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.
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.
Observação: a versão mínima necessária de gcloud é 265.0.0. Se você já tiver instalado o SDK do Cloud, execute a atualização dos componentes do gcloud para atualizar gcloud para a versão atual.
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:
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:
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
Observação: se você comprou o Anthos, talvez já tenha criado uma conta de serviço da lista de permissões. Nesse caso, pule esta seçã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:
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:
Observação: é uma prática recomendada ter contas de serviço de conexão separadas para cada cluster de usuário criado.
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:
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:
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.
Observação: os pods no cluster precisam acessar os endereços "www.googleapis.com" e "gkeconnect.googleapis.com" de forma direta ou usando um servidor proxy configurado. Para saber como listar as APIs ativadas nos projetos, consulte Como listar serviços na documentação do Service Usage.
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.
Observação: em todos os comandos a seguir, o parâmetro --member aceita o endereço de e-mail da conta de serviço. O endereço de e-mail é composto pelo nome de exibição e pelo ID do projeto. Para ver os endereços de e-mail de todas as contas de serviço no seu projeto, execute gcloud iam service-accounts list.
Listar endereços de e-mail de contas de serviço
Primeiro, liste as contas de serviço no seu projeto do Google Cloud:
Para um projeto do Google Cloud chamado my-gcp-project, a saída deste comando é semelhante a:
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.
Conceda os papéis gkehub.admin e serviceuseage.serviceUsageViewer à sua conta de serviço de registro:
Conceda o papel gkehub.connect à sua conta de serviço do Connect:
Conceda os papéis stackdriver.resourceMetadata.writer, logging.logWriter e monitoring.metricWriter à conta de serviço do pacote de operações do Google Cloud:
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
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.
Clique na seta de divulgação para revelar a lista de endereços do Google e da HashiCorp.
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:
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.
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:
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.
Observação: o Terraform é executado apenas na máquina usada para criar a estação de trabalho de administrador. O GKE On-Prem não depende do Terraform.
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:
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.