Como criar um cluster de usuário

Nesta página, mostramos como criar um cluster de usuário para clusters do Anthos no VMware (GKE On-Prem).

As instruções aqui são completas. Para uma introdução mais curta sobre como criar um cluster de usuário, consulte Criar um cluster de usuário (guia de início rápido).

Antes de começar

Criar um cluster de administrador.

Como conseguir uma conexão SSH com a estação de trabalho de administrador

Consiga uma conexão SSH para a estação de trabalho do administrador

Lembre-se de que gkeadm ativou a conta de serviço de acesso a componentes na estação de trabalho de administrador.

Realize todas as etapas restantes neste tópico na estação de trabalho de administrador no diretório inicial.

Arquivo de configuração de credenciais

Quando você usou gkeadm para criar a estação de trabalho de administrador, preencheu um arquivo de configuração de credenciais chamado credential.yaml. Esse arquivo contém o nome de usuário e a senha do servidor vCenter.

Arquivo de configuração do cluster de usuário

Quando gkeadm criou a estação de trabalho do administrador, foi gerado um arquivo de configuração chamado user-cluster.yaml. Esse arquivo de configuração serve para criar o cluster de usuário.

Como preencher o arquivo de configuração

name

Defina o campo name como um nome de sua escolha para o cluster de usuário.

gkeOnPremVersion

Este campo já foi preenchido para você.

vCenter

Os valores definidos na seção vCenter do arquivo de configuração do cluster de administrador são globais. Ou seja, eles se aplicam ao cluster de administrador e aos clusters de usuário.

Para cada cluster de usuário criado, você tem a opção de modificar alguns dos valores globais de vCenter.

Se você quiser modificar qualquer um dos valores vCenter globais, preencha os campos relevantes na seção vCenter do arquivo de configuração do cluster de usuário.

network

Defina network.ipMode.type com o mesmo valor definido no arquivo de configuração do cluster de administrador: "dhcp" ou "static".

Se você definir ipMode.type como "static", crie um arquivo de bloco de IPs que forneça os endereços IP estáticos para os nós no cluster de usuário. Depois, defina network.ipMode.ipBlockFilePath como o caminho do arquivo de bloco de IP.

Forneça valores para os campos restantes na seção network.

Independentemente de você depender de um servidor DHCP ou de especificar uma lista de endereços IP estáticos, você precisa de endereços IP suficientes para atender às seguintes condições:

  • Os nós no seu cluster de usuário

  • Um nó adicional no cluster de usuários a ser usado temporariamente durante os upgrades

Conforme mencionado anteriormente, se você quiser usar endereços IP estáticos, será necessário fornecer um arquivo de bloco de IPs. Veja um exemplo de arquivo de bloco de IP com seis hosts: Isso é um número suficiente de endereços para um cluster que tem cinco nós e um sexto nó para upgrades:

blocks:
  - netmask: 255.255.252.0
    gateway: 172.16.23.254
    ips:
    - ip: 172.16.20.21
      hostname: user-host1
    - ip: 172.16.20.22
      hostname: user-host2
    - ip: 172.16.20.23
      hostname: user-host3
    - ip: 172.16.20.24
      hostname: user-host4
    - ip: 172.16.20.25
      hostname: user-host5
    - ip: 172.16.20.26
      hostname: user-host6

loadBalancer

Reserve um VIP para o servidor da API Kubernetes do seu cluster de usuários. Reserve outro VIP para o serviço de entrada do seu cluster de usuários. Forneça seus VIPs como valores para loadBalancer.vips.controlPlaneVIP e loadBalancer.vips.ingressVIP.

Defina loadBalancer.kind com o mesmo valor definido no arquivo de configuração do cluster de administrador: "ManualLB", "F5BigIP" ou "Seesaw". Em seguida, preencha a seção correspondente: manualLB, f5BigIP ou seesaw.

masterNode

Preencha a seção masterNode.

nodePools

Preencha a seção nodePools.

antiAffinityGroups

Defina antiAffinityGroups.enabled como true ou false.

authentication

Se você quiser usar OpenID Connect (OIDC) para autenticar usuários, preencha a seção authentication.oidc.

Se você quiser fornecer um certificado de veiculação adicional para o servidor vCenter do cluster de usuários, preencha a seção authentication.sni.

stackdriver

Preencha a seção stackdriver.

gkeConnect

Preencha a seção gkeConnect.

usageMetering

Se você quiser ativar a medição de uso do cluster, preencha a seção usageMetering.

cloudAuditLogging

Se você quiser integrar os registros de auditoria do servidor da API Kubernetes do cluster com os registros de auditoria do Cloud, preencha a seção cloudAuditLogging.

Como validar seu arquivo de configuração

Depois de preencher o arquivo de configuração do cluster de usuário, execute gkectl check-config para verificar se o arquivo é válido:

gkectl check-config --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] --config [CONFIG_PATH]

em que:

  • [ADMIN_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig para o cluster de administrador;

  • [CONFIG_PATH] é o caminho do arquivo de configuração do cluster de usuário.

Se o comando retornar mensagens, corrija os problemas e valide o arquivo novamente.

Se quiser pular as validações mais demoradas, transmita a sinalização --fast. Para pular validações individuais, use as sinalizações --skip-validation-xxx. Para saber mais sobre o comando check-config, consulte Como executar verificações de simulação.

Como criar um balanceador de carga da Seesaw para o cluster de usuários

Se você escolheu usar o balanceador de carga Seesaw em pacote, siga as etapas nesta seção. Caso contrário, pule esta seção.

Crie e configure a VM para o balanceador de carga do Seesaw:

gkectl create loadbalancer --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config user-cluster.yaml

onde

  • ADMIN_CLUSTER_KUBECONFIG é o caminho do arquivo kubeconfig para o cluster de administrador;

Fazer upload do Container-Optimized OS para o vCenter

Se você escolheu criar um pool de nós do Container-Optimized OS para o cluster de usuário, faça upload do Container-Optimized OS para o vCenter.

Para fazer upload do Container-Optimized OS para o vCenter, execute este comando:

gkectl prepare --config ADMIN_CLUSTER_CONFIG_PATH --extra-os-image-types cos

em que ADMIN_CLUSTER_CONFIG_PATH é o caminho do arquivo de configuração do cluster de administrador.

Como criar um cluster de usuário

Crie um cluster de usuário:

gkectl create cluster --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] \
  --config [CONFIG_PATH]

onde

  • [CONFIG_PATH] é o caminho do arquivo de configuração do cluster de usuário.

  • [ADMIN_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig para o cluster de administrador;

O comando gkectl create cluster cria um arquivo kubeconfig chamado [USER_CLUSTER_NAME]-kubeconfig no diretório atual. Você precisará desse arquivo kubeconfig mais tarde para interagir com seu cluster de usuários.

Localizar o arquivo kubeconfig do cluster de usuário

O comando gkectl create cluster cria um arquivo kubeconfig chamado USER_CLUSTER_NAME-kubeconfig no diretório atual. Você precisará desse arquivo kubeconfig mais tarde para interagir com seu cluster de usuários.

Se preferir, é possível alterar o nome e o local do arquivo kubeconfig.

Verificar se o cluster de usuário está em execução

Verifique se o cluster de usuário está em execução:

kubectl get nodes --kubeconfig USER_CLUSTER_KUBECONFIG

Substitua USER_CLUSTER_KUBECONFIG pelo caminho do arquivo kubeconfig do cluster de usuário.

A saída mostra os nós do cluster de usuário. Exemplo:

my-user-cluster-node-pool-69-d46d77885-7b7tx   Ready ...
my-user-cluster-node-pool-69-d46d77885-lsvzk   Ready ...
my-user-cluster-node-pool-69-d46d77885-sswjk   Ready ...

Solução de problemas

Consulte Solução de problemas na criação e no upgrade de clusters.

A seguir