Debug dei problemi relativi ai nodi

Questa pagina spiega come eseguire il debug dei problemi dei nodi su Google Distributed Cloud (solo software) per VMware utilizzando una suite di strumenti di debug preinstallati.

Panoramica

Ogni cluster Google Distributed Cloud che crei è composto da diversi nodi. Ogni nodo include una distribuzione di toolbox di CoreOS, uno script shell che decomprime ed esegue un container di debug, debug-toolbox. debug-toolbox è un'immagine container che include diversi strumenti di debug utili.

Se riscontri problemi con un nodo specifico, puoi tentare il debug connettendoti al nodo interessato, esegui lo script toolbox per decomprimere ed eseguire il contenitore debug-toolbox ed esegui gli strumenti inclusi nel contenitore.

Strumenti inclusi nel container debug-toolbox

Il container debug-toolbox esegue un'immagine di base Debian che include i seguenti pacchetti:

  • bash
  • curl
  • dnsutils
  • hping3
  • iperf3
  • lsof
  • netcat
  • mtr
  • procps
  • strace
  • tcpdump
  • traceroute
  • util-linux

Poiché questi strumenti sono inclusi nel contenitore, non richiedono una connessione a internet. Se vuoi installare strumenti di debug aggiuntivi, utilizza apt-get, che richiede una connessione a internet.

Uso: toolbox

  1. Accedi tramite SSH al nodo del cluster.

  2. Esegui il comando toolbox:

    sudo toolbox

    Questo comando avvia un container debug-toolbox.

  3. All'interno del container, esegui uno degli strumenti. Ad esempio, tcpdump.

  4. Al termine, esci dal container e chiudi la connessione SSH al nodo.

Node Problem Detector

Node Problem Detector, che è abilitato per tutti i nodi di un cluster, aiuta a rilevare rapidamente alcuni problemi comuni dei nodi. Node Problem Detector continua a verificare la presenza di possibili problemi e li segnala come eventi e condizioni sul nodo. Se un nodo non funziona correttamente, puoi verificare se Node Problem Detector ha rilevato il problema eseguendo kubectl describe sul nodo e cercando gli eventi e le condizioni corrispondenti.

I monitor di Node Problem Detector generano diverse condizioni sul nodo. Se la condizione segnalata è KubeletUnhealthy o ContainerRuntimeUnhealthy, un riavvio del servizio systemd corrispondente (kubelet o Docker) potrebbe contribuire a ripristinare l'integrità del nodo.

A partire dalla versione 1.5 di Google Distributed Cloud, la riparazione automatica del servizio systemd di kubelet e docker è abilitata in Node Problem Detector. Se Node Problem Detector rileva una condizione KubeletUnhealthy o ContainerRuntimeUnhealthy sul nodo, tenta di riavviare automaticamente il servizio kubelet o docker se la durata dall'ultimo riavvio è superiore a una determinata soglia.

Passaggi successivi

Se hai bisogno di ulteriore assistenza, contatta l'assistenza clienti Google Cloud.

Puoi anche consultare la sezione Richiedere assistenza per ulteriori informazioni sulle risorse di assistenza, tra cui: