Neste tópico, explicamos como executar verificações de simulação no arquivo de configuração do GKE On-Prem.
Visão geral
Durante a instalação, execute gkectl create-config
para gerar um
arquivo de configuração do GKE On-Prem. O arquivo de configuração
impulsiona a instalação: você fornece informações sobre o ambiente vSphere,
a aparência dos clusters, a rede e o balanceador de carga. É possível
gerar um arquivo de configuração antes ou depois de criar uma estação de trabalho
de administrador. Para que determinadas verificações sejam aprovadas, elas precisam ser executadas na estação de trabalho de
administrador.
Depois de modificar o arquivo para atender às necessidades do ambiente e dos clusters, use o arquivo para criar os clusters no ambiente local.
Antes de criar clusters, execute
gkectl check-config
para
validar o arquivo de configuração com várias verificações de simulação.
Modos de verificação de simulação e como pular validações
gkectl check-config
tem um modo padrão e um modo rápido:
- No modo padrão, o comando valida cada campo de forma abrangente. Além disso, o modo padrão cria máquinas virtuais (VMs) temporárias do vSphere como parte das validações, o que pode levar mais tempo.
- No modo rápido, o comando pula as verificações que criam VMs de teste e executa apenas as
verificações rápidas. Ative o modo rápido transmitindo a sinalização
--fast
.
É possível pular validações específicas transmitindo outras sinalizações, que são descritas
em gkectl check-config --help
.
Quando devo executar verificações de simulação?
É uma prática recomendada executar verificações de simulação antecipadamente e antes de tentar criar clusters. A execução antecipada de verificações de simulação ajuda a confirmar se você configurou o ambiente vSphere e a rede corretamente.
Se você estiver usando a versão 1.2.0-gke.6 do GKE On-Prem, execute
gkectl check-config
duas vezes:
Execute
gkectl check-config --fast
.Execute
gkectl prepare
.Execute
gkectl check-config
novamente, sem a sinalização--fast
.
A razão para executar duas vezes é que gkectl prepare
faz o upload do modelo de VM da imagem
do SO do nó do cluster para o ambiente vSphere. Esse modelo de VM precisa estar
em vigor antes de você executar o conjunto completo de validações.
Na versão 1.2.1 e mais recentes do GKE On-Prem, o comando check-config
faz o upload do modelo de VM para que você execute o conjunto completo de validações
antes de executar gkectl prepare
:
Execute
gkectl check-config
, sem a sinalização--fast
.Execute
gkectl prepare
.
As verificações de simulação validam os valores fornecidos para o arquivo. Não é preciso
preencher todos os campos do arquivo de configuração para executar verificações
de simulação no arquivo. Em vez disso, é possível validar o arquivo iterativamente ao preencher
os campos. Por exemplo, se você quiser apenas validar a configuração do vCenter,
preencha apenas os campos vcenter
e execute verificações
nesses campos.
Lembre-se de que a configuração do GKE On-Prem torna-se imutável depois que você cria os clusters. A execução de verificações de simulação ajuda você a descobrir e resolver problemas na configuração antes de criar os clusters.
Como preservar a VM de teste para depuração
A partir da versão 1.2.1 do GKE On-Prem, o comando gkectl check-config
tem uma sinalização --cleanup
.
Quando gkectl check-config
executa um conjunto completo de validações, ele cria uma
VM de teste e uma chave SSH associada. Se você quiser preservar a VM de teste e a chave SSH
para fins de depuração, defina --cleanup
como falso.
O valor padrão de --cleanup
é verdadeiro.
Lista de verificações de simulação
As verificações de simulação validam cada campo no arquivo de configuração. Veja as verificações atuais:
Categoria | Descrição | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Arquivo de configuração | Geralmente, valida se cada campo e especificação tem o formato e os valores esperados. Pulado com a
sinalização Pule a validação do
campo | ||||||||||||||||
Internet | Valida o acesso à Internet para domínios obrigatórios. Valida a configuração do proxy com base no local em que você está executando o gkectl. Ignorado com a sinalização |
||||||||||||||||
Google Cloud |
--skip-validation-gcp .
| ||||||||||||||||
Acesso ao acesso gcr.io/gke-on-prem-release |
Valida o acesso ao registro de imagens de contêiner
do GKE On-Prem hospedado no Container Registry.
Pulado pela sinalização
|
||||||||||||||||
Registro do Docker |
privateregistryconfig Se configurado, inclui o acesso ao registro do Docker.
Pulado com a sinalização |
||||||||||||||||
vCenter | Verifica se todos os campos vcenter estão presentes e
verifica o seguinte:
Ignorado com a sinalização |
||||||||||||||||
Balanceador de carga | Valida a configuração de balanceamento de carga:
--skip-validation-load-balancer .
|
||||||||||||||||
Rede | Valida se os intervalos CIDR, VIPs e IPs estáticos fornecidos (se configurados) estão disponíveis. Verifica se os endereços IP não se sobrepõem. Pulado com a sinalização |
||||||||||||||||
DNS | Valida se o servidor DNS fornecido está disponível. Pulado com a sinalização |
||||||||||||||||
NTP | Valida se o servidor de Network Time Protocol (NTP) fornecido está disponível. Pulado com a sinalização |
||||||||||||||||
VIPs | Faz o ping dos VIPs fornecidos. Essa verificação será bem-sucedida se o ping falhar, indicando que o VIP ainda não foi realizado. Pulado com a
sinalização |
||||||||||||||||
IPs de nós | Faz o ping dos endereços IP de nós fornecidos. Essa verificação será bem-sucedida se o ping falhar, indicando que o IP do nó esperado ainda não foi usado. Pulado com a
sinalização |
Resultados da verificação de simulação
As verificações de simulação retornam os seguintes resultados:
- SUCCESS
- O campo e o valor dele passaram na verificação.
- FAILURE
- O campo e/ou o valor dele não passaram na verificação. Se uma verificação retornar uma
mensagem
FAILURE
, corrija os problemas e valide o arquivo novamente. - SKIPPED
A verificação foi pulada, provavelmente, porque não é relevante para a configuração. Por exemplo, se você estiver usando um servidor DHCP, as verificações de DNS e IPs de nó, relevantes apenas para uma configuração de IP estático, serão puladas.
Se você passar uma sinalização que pule uma validação, a verificação pulada não retornará um resultado SKIPPED. Em vez disso, a validação não é executada e não aparece na resposta ao comando.
- UNKNOWN
A ação de pular retornou um código diferente de zero. É possível considerar os resultados UNKNOWN como verificações que falharam. UNKNOWN geralmente indica que a verificação falhou ao executar algum pacote do sistema, como o nslookup ou o gcloud.
Em breve
As seguintes verificações de simulação serão adicionadas em uma versão futura:
- Servidor NTP
Com executar verificações de simulação
Para executar as verificações de simulação, execute o seguinte comando:
gkectl check-config --config [CONFIG]
em que [CONFIG] é o caminho do arquivo de configuração do GKE On-Prem.
Como executar no modo rápido
Se preferir, execute verificações de simulação no "modo rápido", que pula as
validações que criam VMs de teste temporárias, como as balanceamentos de carga de VIP e
IP do nó. Para fazer isso, passe --fast
:
gkectl check-config --config [CONFIG] --fast
Como pular validações específicas
É possível passar sinalizações para pular de maneira granular as validações específicas, como DNS,
proxy e rede. Cada sinalização de pular é prefixada com --skip-[VALIDATION]
.
Para saber mais sobre as sinalizações de pular disponíveis, execute o comando a seguir. Como opção, consulte a referência do gkectl check-config:
gkectl check-config --help
Por exemplo, para pular as validações do balanceador de carga:
gkectl check-config --config my-config.yaml --skip-validation-load-balancer
Como cancelar verificações de simulação
Se você começou a executar verificações de simulação e quer cancelar, pressione CTRL + C duas vezes. Se uma verificação de simulação tiver criado uma VM de teste, o cancelamento também limpará a VM automaticamente.
Como limpar uma VM de teste
Se uma VM de teste sobrar após a conclusão das verificações de simulação, será possível excluir a VM do vCenter. Uma VM de teste tem um nome como este:
check-config-[dhcp|static]-[random number]
Para excluir a VM:
Clique com o botão direito do mouse na VM e clique em Ativação > Desativar
Depois que a VM for desativada, clique com o botão direito na VM novamente e clique em Excluir do disco.
Exemplo
Veja abaixo um exemplo de comportamento do comando. Neste exemplo, a configuração que está sendo validada usa o modo de balanceamento de carga integrado e IPs estáticos sem um registro externo do Docker:
gkectl check-config --config config.yaml - Validation Category: Config Check - [SUCCESS] Config - Validation Category: Internet Access - [SUCCESS] Internet access to required domains - Validation Category: GCP - [SUCCESS] GCP Service - [SUCCESS] GCP Service Account - Validation Category: Docker Registry - [SUCCESS] gcr.io/gke-on-prem-release access - Validation Category: vCenter - [SUCCESS] Credentials - [SUCCESS] Version - [SUCCESS] Datacenter - [SUCCESS] Datastore - [SUCCESS] Data Disk - [SUCCESS] Resource Pool - [SUCCESS] Network - Validation Category: F5 BIG-IP - [SUCCESS] Admin Cluster F5 (credentials, partition and user role) - [SUCCESS] User Cluster F5 (credentials, partition and user role) - Validation Category: Network Configuration - [SUCCESS] CIDR, VIP and static IP (availability and overlapping) - Validation Category: DNS - [SUCCESS] DNS (availability) - Validation Category: VIPs - [SUCCESS] ping (availability) - Validation Category: Node IPs - [SUCCESS] ping (availability) Now running slow validation checks (creates test VM); use flag --fast to disable. - Validation Category: F5 BIG-IP - [SUCCESS] Admin Cluster VIP and NodeIP - [SUCCESS] User Cluster VIP and NodeIP All validation results were SUCCESS.
Problema conhecido
Na versão 1.2.0-gke.6 do GKE On-Prem, se você estiver usando pools de recursos
aninhados ou padrão, o gkectl check-config
falhará ao tentar
fazer um conjunto completo de validações. No entanto, é possível fazer um conjunto menor de validações passando a sinalização --fast
.
gkectl check-config --config [CONFIG] --fast
Esse problema será corrigido na versão 1.2.1.