Versione 1.14

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Guida passo passo alla risoluzione dei problemi di Anthos Service Mesh

Questa sezione spiega come risolvere e risolvere i problemi quando utilizzi Anthos Service Mesh. Se hai bisogno di ulteriore assistenza, vedi Richiedere assistenza.

Passaggi per la risoluzione dei problemi

Segui questi passaggi generali per risolvere i problemi di Anthos Service Mesh:

  1. Utilizza gli strumenti di convalida della configurazione automatica.
  2. Controlla se hai un problema comune con una soluzione nota.
  3. Restringi l'ambito del problema.
  4. Esamina i log e le informazioni pertinenti.
  5. Raccogli i log di diagnostica e richiedi assistenza.

Utilizzare gli strumenti di convalida automatica

Anthos Service Mesh include strumenti automatici di diagnostica e convalida della configurazione che possono risolvere i problemi e aiutarti a evitarli in futuro. Le sezioni seguenti spiegano come utilizzare questi strumenti.

istioctl analyze

Lo strumento di diagnostica istioctl analyze può rilevare problemi comuni di configurazione. Installa istioctl seguendo queste istruzioni.

istioctl analyze legge la configurazione di un cluster e, se rileva un problema, fornisce messaggi informativi e suggerisce rimedi. Può essere eseguito su un cluster in tempo reale o su un set di file di configurazione locali. Inoltre, può essere eseguito su una combinazione dei due, consentendoti di trovare problemi prima di applicare le modifiche a un cluster. Per ulteriori informazioni, consulta Diagnosi della configurazione con istioctl analyze. Per ulteriori informazioni sugli errori rilevati da istioctl analyze, consulta la sezione Messaggi di analisi della configurazione.

Analizzare un cluster attivo

Analizza un cluster in tempo reale utilizzando il comando seguente.

istioctl analyze -A

Se istioctl analyze rileva un problema con la configurazione, mostrerà un messaggio con informazioni utili per risolverlo, se noto. Ad esempio, se hai commesso l'errore comune di non etichettare correttamente lo spazio dei nomi per abilitare l'inserimento sidecar di Istio, verrà generato il seguente messaggio:

Warn [IST0102] (Namespace default) The namespace is not enabled for Istio injection.
Run 'kubectl label namespace default istio-injection=enabled' to enable it,
or 'kubectl label namespace default istio-injection=disabled'
to explicitly mark it as not needing injection

Se il problema persiste, consulta la sezione successiva per verificare se è già noto.

Verifica la presenza di problemi e soluzioni comuni

Per risparmiare tempo, verifica se i sintomi corrispondono a un problema in queste sezioni comuni dei problemi e delle risoluzioni, raggruppate per area funzionale di Anthos Service Mesh:

Se questo non risolve il problema, consulta la sezione successiva.

Restringi l'ambito del problema

Anthos Service Mesh è costituito da diverse tecnologie che lavorano insieme, il che significa che determinati tipi di problemi sono associati ad aree o componenti funzionali specifici. Ognuno di questi componenti genera log utili. Prima di tentare di analizzare manualmente il volume di informazioni fornite, limita l'ambito della risoluzione dei problemi rispondendo alle seguenti domande:

  • Il problema si verifica all'interno del piano di controllo o di piano dati, ad esempio nei proxy istiod o Envoy?
  • In quale area funzionale stai riscontrando il problema, ad esempio networking, telemetria, sicurezza e così via?
  • Si è verificata una perdita di traffico elevata con mesh di servizi o in un deployment specifico?
  • Il problema appare o peggiora a causa della mancanza di scalabilità del traffico nel mesh di servizi?
  • Il problema causa latenza o altri problemi legati alle prestazioni?
  • Puoi riprodurre il problema on demand?
  • Il problema si è verificato dopo una recente modifica alla configurazione di Istio, GKE e così via?
  • È presente un aumento o un picco di traffico all'interno del mesh di servizi?
  • Questo cluster ha funzionalità visibili abilitate o deployment non tipici?
  • Hai riscontrato un alto utilizzo di CPU o memoria? Se sì, qual è l'utilizzo previsto su vasta scala?
  • Sono previste limitazioni di quota?

Visualizza stato del piano di controllo

I seguenti comandi possono aiutarti a comprendere lo stato del piano di controllo Anthos Anthos Mesh:

  • kubectl get pods -n istio-system
  • kubectl describe -n istio-system
  • Per tutti i pod in istio-system: kubectl logs -n istio-system -l istio --all-containers
  • istioctl version
  • istioctl proxy-status
  • kubectl get configmap istio -o yaml && kubectl get configmap istio-sidecar-injector -o yaml
  • kubectl top pods -n istio-system

Utilizza i comandi seguenti per comprendere la portata del deployment:

  • kubectl get nodes
  • kubectl get services --all-namespaces
  • kubectl get pods --all-namespaces

Esamina log e informazioni pertinenti

Dopo aver limitato l'ambito del problema, puoi concentrarti su determinati log e informazioni in modo più efficace. Per informazioni sui log generati da Anthos Service Mesh e su come interpretare le informazioni che li contengono, consulta la pagina Interpretare i log di Anthos Service Mesh.