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.