Questa sezione illustra i problemi comuni di Anthos Service Mesh e come risolverli. Se hai bisogno di ulteriore aiuto, vedi Ricevere assistenza.
I problemi relativi ai limiti delle risorse di Anthos Service Mesh possono essere causati da una delle seguenti cause:
LimitRange
oggetti creati nello spazio dei nomiistio-system
o in qualsiasi spazio dei nomi con l'inserimento automatico di sidecar abilitato.- Limiti definiti dall'utente troppo bassi.
- I nodi hanno esaurito la memoria o altre risorse.
Potenziali sintomi dei problemi con le risorse:
- Anthos Service Mesh non riceve ripetutamente la configurazione da Istiod indicata
dall'errore,
Envoy proxy NOT ready
. Vedere questo errore più volte all'avvio è normale, ma per il resto è un problema. - Problemi di Networking con alcuni pod o nodi che diventano non raggiungibili.
istioctl proxy-status
che mostraSTALE
stati nell'output.OOMKilled
messaggi nei log di un nodo.- Memoria utilizzata dai container:
kubectl top pod POD_NAME --containers
. - Memoria utilizzata dai pod all'interno di un nodo:
kubectl top node my-node
. - Memoria di Envoy esaurita:
kubectl get pods
mostra lo statoOOMKilled
nell'output.
I file collaterali Istio richiedono molto tempo per ricevere la configurazione
La propagazione lenta della configurazione può verificarsi a causa di risorse allocate a Istiod o di una dimensione del cluster eccessivamente grande.
Esistono diverse possibili soluzioni a questo problema:
Se i tuoi strumenti di monitoraggio (Prometheus, stackdriver e così via) mostrano un elevato utilizzo di una risorsa da parte di Istio, aumenta l'allocazione della risorsa, ad esempio aumenta il limite di CPU o memoria del deployment Istiod. Si tratta di una soluzione temporanea e ti consigliamo di esaminare metodi per ridurre il consumo di risorse.
Se riscontri questo problema in un cluster/deployment di grandi dimensioni, riduci la quantità di stato di configurazione inviato a ogni proxy configurando le risorse sidecar.
Se il problema persiste, prova a scalare orizzontalmente Istio.
Se tutti gli altri passaggi per la risoluzione dei problemi non risolvono il problema, segnala un bug con i dettagli del deployment e dei problemi osservati. Segui questi passaggi per includere un profilo CPU/memoria nella segnalazione di bug, se possibile, insieme a una descrizione dettagliata della dimensione del cluster, del numero di pod, del numero di servizi e così via.