Nesta página, você aprende a criar um cluster de administrador.
Como gerar um arquivo de configuração
Para criar um cluster de administrador, você precisa de um arquivo de configuração de cluster de administrador. Se
você usou gkeadm
para criar a estação de trabalho do administrador, gkeadm
gerou um
modelo para o arquivo de configuração e preencheu alguns dos campos.
Se você não usou gkeadm
para criar a estação de trabalho de administrador, gere
um modelo executando este comando:
gkectl create-config admin --config [OUTPUT_PATH]
[OUTPUT_PATH] é um caminho de sua escolha para o modelo
gerado. Se você não incluir a sinalização --config
, gkectl
nomeia o arquivo
admin-cluster.yaml
e coloca-o no diretório atual.
Como preencher o arquivo de configuração
bundlePath
Se você usou gkeadm
para criar a estação de trabalho do administrador, esse campo já
está preenchido. Caso contrário,
forneça o caminho do arquivo do pacote.
vCenter
Se você usou gkeadm
para criar sua estação de trabalho de administrador, esta seção já
está preenchida. Caso contrário,
forneça valores para os campos em vCenter
.
network
Decida como você quer que os nós de cluster recebam os endereços IP deles. As opções são:
A partir de um servidor DHCP. Defina
network.ipMode.type
como"dhcp"
.A partir de uma lista de endereços IP estáticos fornecidos. Defina
network.ipMode.type
como"static"
e crie um arquivo de configuração de host que fornece os endereços IP estáticos.
Forneça valores para os campos restantes na seção
network
.
.
loadBalancer
Separe um VIP para o servidor da API do Kubernetes do cluster de administrador. Reserve
outro VIP para o servidor de complementos. Forneça seus VIPs como valores para
loadBalancer.controlPlaneVIP
e
loadBalancer.addonsVIP
.
Decida qual tipo de balanceamento de carga você quer usar. Veja as opções abaixo:
Segue o balanceamento de carga em pacote. Defina
loadBalancer.kind
como"Seesaw"
e preencha a seçãoloadBalancer.seesaw
.Balanceamento de carga integrado com a F5 BIG-IP. Defina
loadBalancer.kind
como"F5BigIP"
e preencha a seçãof5BigIP
.Balanceamento de carga manual. Defina
loadBalancer.kind
como"ManualLB"
e preencha a seçãomanualLB
.
proxy
Se a rede que terá os nós do cluster de administrador estiver atrás de um servidor
proxy, preencha a
seção
proxy
.
privateRegistry
Decida onde você quer manter as imagens de contêiner dos componentes do GKE On-Prem. Veja as opções abaixo:
gcr.io. Não preencha a seção
privateRegistry
.Seu próprio registro particular do Docker. Preencha a seção
privateRegistry
.
gcrKeyPath
Defina gcrKeyPath
como o caminho do arquivo de chave JSON para sua conta de serviço
da lista de permissão.
stackdriver
Preencha a
seção
stackdriver
.
cloudAuditLogging
Se você quiser que os registros de auditoria do Kubernetes sejam integrados aos 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 administrador,
execute gkectl check-config
para verificar se o arquivo é válido:
gkectl check-config --config [CONFIG_PATH]
em que [CONFIG_PATH] é o caminho do arquivo de configuração do cluster de administrador.
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 executar gkectl prepare
Execute gkectl prepare
para inicializar o ambiente do vSphere:
gkectl prepare --config [CONFIG_PATH] --skip-validation-all
Como criar o cluster de administrador
Crie o cluster de administrador:
gkectl create admin --config [CONFIG_PATH] --skip-validation-all
em que [CONFIG_PATH] é o caminho do arquivo de configuração do cluster de administrador.
O comando gkectl create admin
cria um arquivo kubeconfig chamado
kubeconfig
no diretório atual. Você precisará desse arquivo kubeconfig
mais tarde para interagir com o cluster de administrador.
Como verificar se o cluster de administrador está em execução
Verifique se o cluster de administrador está em execução:
kubectl get nodes --kubeconfig [ADMIN_CLUSTER_KUBECONFIG]
em que [ADMIN_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig.
A saída mostra os nós do cluster de administrador.
Solução de problemas
Como diagnosticar problemas de cluster usando gkectl
Use os comandos gkectl diagnose
para identificar problemas de cluster
e compartilhar informações do cluster com o Google. Consulte
Como diagnosticar problemas de cluster.
Como executar comandos gkectl
de maneira detalhada
-v5
Como registrar erros gkectl
em stderr
--alsologtostderr
Como localizar registros gkectl
na estação de trabalho do administrador
Mesmo que você não transmita as sinalizações de depuração, é possível visualizar
os registros gkectl
no seguinte diretório da estação de trabalho do administrador:
/home/ubuntu/.config/gke-on-prem/logs
Como localizar registros da API Cluster no cluster de administrador
Se uma VM não for iniciada após o início do plano de controle do administrador, tente depurar isso inspecionando os registros dos controladores da API Cluster no cluster de administrador:
Encontre o nome do pod de controladores da API Cluster no namespace
kube-system
, em que [ADMIN_CLUSTER_KUBECONFIG] é o caminho para o arquivo kubeconfig do cluster de administrador:kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] -n kube-system get pods | grep clusterapi-controllers
Abra os registros do pod, em que [POD_NAME] é o nome do pod. Opcionalmente, use
grep
ou uma ferramenta semelhante para pesquisar erros:kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] -n kube-system logs [POD_NAME] vsphere-controller-manager
Como depurar problemas de F5 BIG-IP com o kubeconfig do nó do plano de controle do cluster de administrador
Após uma instalação, o GKE On-Prem gera um arquivo kubeconfig no diretório inicial da estação de trabalho do administrador denominado internal-cluster-kubeconfig-debug
. Esse arquivo kubeconfig é idêntico ao kubeconfig do cluster de administrador, com a diferença de que ele aponta diretamente para o nó do plano de controle do cluster de administrador, em que o plano de controle de administrador é executado. É possível usar o arquivo internal-cluster-kubeconfig-debug
para depurar problemas de F5 BIG-IP.
Falha na validação de gkectl check-config
: não é possível encontrar partições de F5 BIG-IP
- Sintomas
A validação falha porque não são encontradas partições de F5 BIG-IP, embora elas existam.
- Causas possíveis
Um problema com a API F5 BIG-IP pode causar falha na validação.
- Resolução
Tente executar
gkectl check-config
novamente.
Falha em gkectl prepare --validate-attestations
: não foi possível validar o atestado de versão
- Sintomas
Executar
gkectl prepare
com a sinalização--validate-attestations
opcional retorna o seguinte erro:could not validate build attestation for gcr.io/gke-on-prem-release/.../...: VIOLATES_POLICY
- Causas possíveis
Um atestado pode não existir para as imagens afetadas.
- Resolução
Tente fazer o download e implantar o OVA da estação de trabalho de administrador novamente, conforme instruído em Como criar uma estação de trabalho de administrador. Se o problema persistir, entre em contato com o Google para receber ajuda.
Como depurar usando os registros do cluster de inicialização
Durante a instalação, o GKE On-Prem cria um cluster temporário de inicialização. Após uma instalação bem-sucedida, o GKE On-Prem exclui o cluster de inicialização, deixando você com o cluster de administrador e de usuário. Geralmente, não há motivo para interagir com esse cluster.
Se algo der errado durante uma instalação e você tiver transmitido
--cleanup-external-cluster=false
para gkectl create cluster
,
talvez seja útil realizar a depuração usando os registros do cluster de inicialização. Encontre
o pod e acesse os registros dele:
kubectl --kubeconfig /home/ubuntu/.kube/kind-config-gkectl get pods -n kube-system
kubectl --kubeconfig /home/ubuntu/.kube/kind-config-gkectl -n kube-system get logs [POD_NAME]
Para mais informações, consulte Solução de problemas.
A seguir
Como criar um cluster de usuários