Risoluzione dei problemi di scalabilità di Istiod in Cloud Service Mesh

Questa sezione illustra i problemi comuni di Cloud Service Mesh e come risolverli. Se hai bisogno di ulteriore assistenza, consulta la sezione Ricevere assistenza.

Fattori di scalabilità

Istiod invia la configurazione a ciascun file collaterale utilizzando un flusso gRPC di lunga durata. Ha diverse caratteristiche che influiscono sulla scalabilità:

  • Le dimensioni della configurazione da generare:
    • Numero totale di servizi/pod e risorse Istio
    • Per le installazioni su larga scala, modifica le impostazioni di Sidecar per ridurre le dimensioni della configurazione.
  • Il tasso di cambiamento nell'ambiente:
    • Quando viene creato un nuovo servizio o viene modificata la configurazione Istio, la configurazione vengono inviati ai proxy.
    • L'aggiunta di nuovi endpoint è economica per le prestazioni, perché solo vengono inviati aggiornamenti.
  • Il numero di proxy per cui viene generata la configurazione:
    • Interessato dal numero di gateway e pod con un file collaterale.

Considerazioni sulla scalabilità

Istiod offre una buona scalabilità verticale (richieste di grandi dimensioni) e orizzontale (più di repliche). Assicurati che i limiti della CPU non siano troppo restrittivi. Se Istiod raggiunge il limite della CPU, potrebbe verificarsi il throttling, che influirà negativamente sulla distribuzione della configurazione. In caso di problemi di prestazioni, considera eseguire l'upgrade alla versione più recente di Cloud Service Mesh, poiché ogni versione ha ottimizzazioni del rendimento.

Carico sbilanciato

Modifiche significative delle dimensioni del cluster potrebbero causare un carico temporaneamente sbilanciato a causa delle connessioni di lunga durata. Questo problema viene attenuato da un tempo di connessione massimo di 30 minuti, che potrebbe comportare messaggi di errore in Envoy, ad esempio gRPC config stream closed: 13, che consente di riequilibrare il carico in modo naturale.

Per attenuare il problema, utilizza più repliche di Istiod (il valore predefinito è 2 repliche) e la prescalabilità se prevedi aumenti di dimensioni estremi del cluster.