Este documento fornece informações sobre as verificações prévias executadas quando cria ou atualiza um cluster no Google Distributed Cloud (apenas software) para VMware.
Reveja as regras de firewall
Na versão 1.29 e posteriores, as verificações prévias do lado do servidor estão ativadas por predefinição quando cria, atualiza e atualiza clusters. As verificações prévias do lado do servidor requerem regras de firewall adicionais. Em Regras de firewall para clusters de administrador, pesquise "Verificações prévias" e certifique-se de que todas as regras de firewall necessárias estão configuradas.
A executar gkectl check-config
Se planear criar clusters com o comando gkectl
, execute o comando gkectl create-config
para gerar um ficheiro de configuração. O ficheiro de configuração determina a sua instalação:
fornece informações sobre o seu ambiente vSphere, a sua rede e o equilibrador de
carga, e como quer que os seus clusters se apresentem. Pode gerar um ficheiro de configuração antes ou depois de criar uma estação de trabalho de administrador. Para que determinadas verificações sejam aprovadas, têm de ser executadas a partir da estação de trabalho do administrador.
Depois de modificar o ficheiro para satisfazer as necessidades do seu ambiente e dos seus clusters, usa o ficheiro para criar os clusters no seu ambiente no local.
Antes de criar clusters com o comando gkectl
, execute o comando gkectl check-config
para
validar o ficheiro de configuração com várias verificações prévias.
Se o comando devolver mensagens FAILURE
, corrija os problemas
e valide novamente o ficheiro. Se a validação de uma determinada funcionalidade devolver mensagens de AVISO, tem de corrigir os problemas subjacentes antes de poder usar essa funcionalidade.
Modos de verificação prévia e ignorar validações
gkectl check-config
tem um modo predefinido e um modo rápido:
No modo predefinido, o comando valida exaustivamente cada campo. Além disso, o modo predefinido cria máquinas virtuais (VMs) do vSphere temporárias como parte das respetivas validações, o que pode demorar mais tempo.
No modo rápido, o comando ignora as verificações que criam VMs de teste e executa apenas as verificações rápidas. Ativa o modo rápido transmitindo o sinalizador
--fast
.
Pode ignorar validações específicas transmitindo outras flags, que são descritas
em gkectl check-config --help
.
Tráfego entre a estação de trabalho de administração e as VMs de teste
No modo predefinido, a verificação prévia cria VMs de teste para o cluster. Cada VM de teste executa um servidor HTTP que escuta na porta 443 e nas portas de nós que especificou no ficheiro de configuração.
São atribuídos vários endereços IP às VMs de teste. Se o seu ficheiro de configuração indicar que os nós do cluster vão receber os respetivos endereços IP de um servidor DHCP, a verificação prévia usa um servidor DHCP para atribuir endereços IP às VMs de teste. Se o ficheiro de configuração indicar que os nós do cluster vão ter endereços IP estáticos atribuídos, a verificação prévia atribui endereços IP estáticos especificados nos ficheiros de blocos de IP às VMs de teste.
A verificação prévia, executada na estação de trabalho do administrador, envia pedidos HTTP para as VMs de teste através dos vários endereços IP atribuídos às VMs. Os pedidos são enviados para a porta 443 e para as portas de nós que especificou no ficheiro de configuração.
Quando devo executar as verificações de pré-publicação?
É uma prática recomendada executar verificações pré-publicação antecipadamente e antes de tentar criar clusters. A execução de verificações pré-voo antecipadas pode ajudar a confirmar que configurou corretamente o ambiente vSphere e a rede.
Se estiver a usar a versão 1.2.0-gke.6, execute gkectl check-config
duas vezes:
Corrida
gkectl check-config --fast
.Corrida
gkectl prepare
.Execute novamente o comando
gkectl check-config
sem a flag--fast
.
O motivo da execução duas vezes é que o gkectl prepare
carrega o modelo de VM para a imagem do SO do nó do cluster para o seu ambiente do vSphere. Esse modelo de VM tem de estar
no local antes de executar o conjunto completo de validações.
Na versão 1.2.1 e posterior, o comando check-config
carrega o modelo de VM, pelo que pode executar o conjunto completo de validações antes de executar gkectl
prepare
:
Executar
gkectl check-config
sem a flag--fast
.Corrida
gkectl prepare
.
As verificações pré-publicação validam os valores que forneceu ao ficheiro. Não
tem de preencher todos os campos no ficheiro de configuração para executar verificações prévias
no ficheiro. Em alternativa, pode validar o ficheiro iterativamente à medida que preenche
os respetivos campos. Por exemplo, se só quiser validar a configuração do vCenter, pode preencher apenas os campos vcenter
e executar verificações em relação a esses campos.
Tenha em atenção que a configuração torna-se imutável depois de criar os clusters. A execução de verificações preliminares ajuda a descobrir e resolver problemas na sua configuração antes de criar os clusters.
Preservar a VM de teste para depuração
A partir da versão 1.2.1, o comando gkectl check-config
tem uma flag --cleanup
.
Quando gkectl check-config
executa um conjunto completo de validações, cria uma VM de teste e uma chave SSH associada. Se quiser preservar a VM de teste e a chave SSH para fins de depuração, defina --cleanup
como falso.
O valor predefinido de --cleanup
é verdadeiro.
Lista de verificações prévias
As verificações prévias validam cada campo no ficheiro de configuração. Seguem-se as verificações atuais:
Categoria | Descrição | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ficheiro de configuração | Geralmente, valida se cada campo e especificação tem o formato e os valores esperados. Ignorado com a flag Ignore a validação do campo |
||||||||||||||||
Internet | Valida o acesso à Internet aos domínios necessários. Valida a configuração do proxy com base no local onde está a executar o gkectl. Ignorado com a etiqueta |
||||||||||||||||
Imagem do SO | Valida se existem imagens do SO. Ignorado com a etiqueta |
||||||||||||||||
Versão do SO Windows | Valida a versão do SO Windows. Valida se a versão do Windows é suportada quando cria estações de trabalho de administrador com a ferramenta de linha de comandos |
||||||||||||||||
Versão do cluster | Valida se a versão do cluster de administrador, a versão do cluster de utilizador e a versão do Ignorado com a etiqueta |
||||||||||||||||
Estado do cluster | Valida se o cluster de administrador ou de utilizador está em bom estado antes da atualização:
Ignorado com a etiqueta |
||||||||||||||||
Entrada | Verifica se o cluster de utilizadores tem um objeto Istio Gateway antes da atualização. | ||||||||||||||||
IP reservado | Valida se existem endereços IP suficientes para a criação e a atualização. Ignorado com a etiqueta |
||||||||||||||||
Google Cloud |
--skip-validation-gcp .
| ||||||||||||||||
Acesso ao gcr.io/gke-on-prem-release |
Valida o acesso ao registo de imagens de contentores alojado no
Artifact Registry.
Ignorado pela flag |
||||||||||||||||
Registo do Docker |
privateregistryconfig Se estiver configurado, valida o acesso ao registo do Docker.
Ignorado com a etiqueta |
||||||||||||||||
vCenter | Verifica se todos os campos vcenter estão presentes e também
verifica o seguinte:
Ignorado com a etiqueta |
||||||||||||||||
Armazenamento |
| ||||||||||||||||
Carga de trabalho da CSI |
Valida se o cluster consegue executar com êxito uma carga de trabalho que usa um PersistentVolume aprovisionado dinamicamente criado através do controlador CSI do vSphere. Esta verificação é executada durante a atualização e apenas se existirem volumes vSphere na árvore e nenhum volume vSphere CSI. Esta verificação:
|
||||||||||||||||
Anfitriões para grupos de antiafinidade | Valida se o número de anfitriões físicos do vCenter é, pelo menos, três se
Para desativar a funcionalidade Ignorado com a etiqueta |
||||||||||||||||
Balanceador de carga | Valida a configuração do balanceamento de carga:
--skip-validation-load-balancer .
|
||||||||||||||||
Redes | Valida se os intervalos CIDR, os IPs virtuais e os IPs estáticos fornecidos (se configurados) estão disponíveis. Verifica se os endereços IP não se sobrepõem. Ignorado com a etiqueta |
||||||||||||||||
DNS | Valida se o servidor DNS fornecido está disponível. Ignorado com a etiqueta |
||||||||||||||||
NTP | Valida se o servidor de Protocolo NTP (Network Time Protocol) fornecido está disponível. Ignorado com a etiqueta |
||||||||||||||||
VIPs | Envia pings aos VIPs fornecidos. Esta verificação é bem-sucedida se o ping falhar, o que indica que o VIP esperado ainda não foi usado. Ignorado com a flag |
||||||||||||||||
IPs dos nós | Envia pings para os endereços IP dos nós fornecidos. Esta verificação é bem-sucedida se o ping falhar, o que indica que o IP do nó esperado ainda não está a ser usado. Ignorado com a flag |
Resultados da verificação prévia
As verificações pré-voo podem devolver os seguintes resultados:
- ÊXITO
- O campo e o respetivo valor passaram na verificação.
- FALHA
- O campo e/ou o respetivo valor não passaram na verificação. Se uma verificação devolver uma mensagem
FAILURE
, corrija os problemas e valide o ficheiro novamente. - IGNORADO
A verificação foi ignorada, provavelmente porque não é relevante para a sua configuração. Por exemplo, se estiver a usar um servidor DHCP, as verificações de DNS e IPs de nós, relevantes apenas para uma configuração de IP estático, são ignoradas.
Se transmitir um sinalizador que ignore uma validação, a verificação ignorada não devolve um resultado SKIPPED. Em vez disso, a validação não é executada e não aparece no resultado do comando.
- DESCONHECIDO
O comando skip devolveu um código diferente de zero. Pode considerar os resultados UNKNOWN como verificações com falhas. Normalmente, UNKNOWN indica que a verificação não conseguiu executar algum pacote do sistema, como a execução de nslookup ou gcloud.
Disponível brevemente
As seguintes verificações prévias vão ser adicionadas numa versão futura:
- Servidor NTP
A executar verificações prévias
Execute verificações prévias com o seguinte comando:
gkectl check-config --config [CONFIG]
em que [CONFIG] é o caminho para o ficheiro de configuração
Execução no modo rápido
Se preferir, pode executar verificações de pré-publicação no "modo rápido", que ignora as validações que criam VMs de teste temporárias, como o VIP de balanceamento de carga e as validações de IP de nós. Para o fazer, transmita --fast
:
gkectl check-config --config [CONFIG] --fast
Ignorar validações específicas
Pode transmitir flags para ignorar detalhadamente validações específicas, como DNS, proxy e rede. Cada indicação de omissão tem o prefixo --skip-[VALIDATION]
.
Para saber mais sobre as flags de ignorar disponíveis, execute o seguinte comando:
gkectl check-config --help
Por exemplo, para ignorar as validações do balanceador de carga:
gkectl check-config --config my-config.yaml --skip-validation-load-balancer
Cancelar verificações prévias
Se iniciou a execução de verificações pré-voo e quer cancelá-las, prima CTRL + C duas vezes. Se uma verificação prévia ao voo tiver criado uma VM de teste, o cancelamento também deve limpar a VM automaticamente.
Limpar uma VM de teste
Se sobrar uma VM de teste após a conclusão das verificações prévias, pode eliminar a VM do vCenter. Uma VM de teste tem um nome como este:
check-config-[dhcp|static]-[random number]
Para eliminar a VM:
Clique com o botão direito do rato na VM e clique em Energia > Desligar
Depois de desligar a VM, clique novamente com o botão direito do rato na VM e clique em Eliminar do disco.
Exemplo
Segue-se um exemplo da saída do comando. Neste exemplo, a configuração que está a ser validada usa o modo de equilíbrio de carga integrado e IPs estáticos sem um registo Docker externo:
- 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 - [SUCCESS] VSphere CSI Driver - 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. ... Reusing VM template "gke-on-prem-osimage-xxx" that already exists in vSphere. Creating test VMs with admin cluster configuration... DONE Waiting to get IP addresses from test VMs... DONE Waiting for test VMs to become ready... DONE Reusing VM template "gke-on-prem-osimage-xxx" that already exists in vSphere. Creating test VMs with user cluster configuration... DONE Waiting to get IP addresses from test VMs... DONE Waiting for test VMs to become ready... DONE - Validation Category: F5 BIG-IP - [SUCCESS] Admin Cluster VIP and NodeIP - [SUCCESS] Admin Cluster F5 Access - [SUCCESS] User Cluster VIP and NodeIP - [SUCCESS] User Cluster F5 Access - Validation Category: Internet Access - [SUCCESS] Internet access to required domains - Validation Category: vCenter on test VMs - [SUCCESS] Test VM: VCenter Access and Permission - Validation Category: DNS on test VMs - [SUCCESS] Test VM: DNS Availability - Validation Category: TOD on test VMs - [SUCCESS] Test VM: TOD Availability - Validation Category: Docker Registry - [SUCCESS] gcr.io/gke-on-prem-release access Deleting test VMs with admin cluster configuration... DONE Deleting test VMs with user cluster configuration... DONE
Problemas conhecidos
Para a versão 1.3.0-gke.16:
Tem de executar verificações de validação rápida,
gkectl check-config --fast
, para as suas verificações prévias se ambas as seguintes condições se aplicarem:Configurou o Google Distributed Cloud para usar um proxy.
Instalou um dos seguintes pacotes:
- O
/var/lib/gke/bundles/gke-onprem-vsphere-1.3.0-gke.16.tgz
pacote da página Transferências. - O pacote
/var/lib/gke/bundles/gke-onprem-vsphere-1.3.0-gke.16.tgz
da estação de trabalho do administrador.
- O
Só pode executar o conjunto completo de validação se tiver instalado o pacote completo. Por exemplo:
/var/lib/gke/bundles/gke-onprem-vsphere-1.3.0-gke.16-full.tgz
Para a versão 1.2.0-gke.6:
Se estiver a usar pools de recursos aninhados ou o pool de recursos predefinido, o
gkectl check-config
falha quando tenta fazer um conjunto completo de validações. No entanto, pode fazer um conjunto mais pequeno de validações transmitindo a flag--fast
.gkectl check-config --config [CONFIG] --fast