Nesta página, explicamos como depurar problemas de nós usando um conjunto de ferramentas de depuração pré-instaladas.
Visão geral
Cada cluster do GKE On-Prem criado é composto por vários
nós. Cada nó do GKE On-Prem
inclui uma distribuição do
CoreOS toolbox
(em inglês), um script de
shell que descompacta e executa um contêiner de depuração, debug-toolbox
.
debug-toolbox
é uma imagem de contêiner que inclui várias ferramentas de depuração
úteis.
Se encontrar problemas em um nó específico, tente depurar se conectando
ao nó afetado, executando o script toolbox
para descompactar e executar o contêiner
debug-toolbox
e executando as ferramentas incluídas nele.
Ferramentas incluídas no contêiner debug-toolbox
O contêiner debug-toolbox
executa uma imagem base do Debian que inclui os
pacotes a seguir:
- bash
- curl
- dnsutils
- hping3
- iperf3
- lsof
- netcat
- mtr
- procps
- strace
- tcpdump
- traceroute
- util-linux
Como essas ferramentas estão incluídas no contêiner, elas não exigem uma conexão de
Internet. Se você quiser instalar outras ferramentas de depuração, use
apt-get
, que requer uma conexão de Internet.
Como usar o toolbox
Execute o comando
toolbox
:sudo toolbox
Esse comando inicia um contêiner
debug-toolbox
.Enquanto estiver dentro do contêiner, execute uma das ferramentas. Por exemplo,
tcpdump
.Quando terminar, saia do contêiner e feche a conexão SSH com o nó.
Detector de problemas de nós
A partir da versão 1.4 do GKE On-Prem, o Detector de problemas de
nós,
que está ativado para todos os nós em um cluster, ajuda na detecção rápida de
alguns problemas comuns de nós. O Detecção de problemas de nós continua verificando possíveis
problemas e relata os mesmos problemas que eventos e condições no nó. Se um nó
falhar, verifique se o Detector de problema de nó detectou o problema executando
kubectl describe
no nó e procurando os eventos e condições
correspondentes.
Os monitores do Detector de problemas de nós geram várias condições no nó. Se a
condição reportada for KubeletUnhealthy
ou ContainerRuntimeUnhealthy
, a
reinicialização do serviço systemd
correspondente (kubelet ou Docker) poderá
ajudar a tornar o nó íntegro novamente.
A partir da versão 1.5 do GKE On-Prem, o reparo automático de serviço
do kubelet e do docker está ativado no Detector de problema de nó. Se o
Detector de problema de nó encontrar uma
condição KubeletUnhealthy
ou ContainerRuntimeUnhealthy
no nó, ele tentará reiniciar
automaticamente o serviço kubelet ou docker (isso se a duração desde a última reinicialização for
maior que um determinado limite).