Risoluzione dei problemi di prestazioni delle VM

Questo documento mostra come diagnosticare e ridurre i problemi di prestazioni di CPU, memoria e spazio di archiviazione nelle istanze di macchine virtuali (VM) Compute Engine.

Prima di iniziare

  • Installa Ops Agent per visualizzare le metriche complete sulle prestazioni delle VM, come l'utilizzo di memoria e spazio su disco

Visualizzare le metriche sul rendimento

Per visualizzare le metriche delle prestazioni delle VM, utilizza le metriche di osservabilità di Cloud Monitoring disponibili nella console Google Cloud.

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Puoi visualizzare le metriche per le singole VM o le cinque VM che utilizzano la maggior parte di una risorsa.

    Per visualizzare le metriche per le singole VM:

    1. Fai clic sul nome della VM di cui vuoi visualizzare le metriche delle prestazioni. Viene visualizzata la pagina Dettagli dell'istanza VM.

    2. Fai clic sulla scheda Osservabilità per aprire la pagina Panoramica dell'osservabilità.

    Per visualizzare le metriche per le cinque VM che utilizzano la maggior parte di una risorsa, fai clic sulla scheda Osservabilità nella pagina Istanze VM.

  3. Esplora le metriche relative alle prestazioni della VM. Visualizza le sezioni Panoramica, CPU, Memoria, Rete e Disco per visualizzare metriche dettagliate su ciascun argomento. Di seguito sono riportate le metriche chiave che indicano le prestazioni della VM:

    • Nella pagina Panoramica:

      • Utilizzo della CPU. La percentuale di CPU utilizzata dalla VM.

      • Utilizzo della memoria. La percentuale di memoria utilizzata dalla VM, escluse le cache del disco. Per le VM Linux, è esclusa anche la memoria del kernel.

      • Traffico di rete. Velocità media di byte inviati e ricevuti a intervalli di un minuto.

      • Nuove connessioni con VM/esterne/Google. Il numero stimato di flussi TCP/UDP distinti in un minuto, raggruppati per tipo di peer.

      • Velocità effettiva del disco. Velocità media di lettura e scrittura dei byte dai dischi.

      • IOPS del disco. Velocità media delle operazioni di I/O di lettura e scrittura sui dischi.

    • Nella pagina Riepilogo di rete:

      • Inviato a VM/esterne/Google. La frequenza della frequenza del traffico di rete inviata a servizi Google, VM e destinazioni esterne, in base a un campione di pacchetti. La metrica viene ridimensionata in modo che la somma corrisponda al totale del traffico di rete inviato.

      • Ricevuto da VM/esterni/Google. La frequenza del traffico di rete ricevuto da servizi Google, VM e origini esterne, in base a un campione di pacchetti. La metrica viene ridimensionata in modo che la somma corrisponda al totale del traffico di rete ricevuto.

      • Totali dei pacchetti di rete. Velocità totale dei pacchetti inviati e ricevuti a intervalli di un minuto.

      • Dimensione media pacchetto. La dimensione media dei pacchetti, in byte, inviati e ricevuti a intervalli di un minuto.

      • Pacchetti firewall in entrata rifiutati La frequenza dei pacchetti di rete in entrata inviati alla VM, ma non ricevuti dalla VM perché negati dalle regole firewall.

    • Nella pagina Prestazioni del disco:

      • Dimensioni medie I/O.La dimensione media delle operazioni di lettura e scrittura di I/O sui dischi. Gli I/O casuali di piccole dimensioni (4-16 KiB) sono generalmente limitati da IOPS e I/O sequenziali/di grandi dimensioni (256 KiB-1 MiB) in base alla velocità effettiva.

      • Lunghezza media coda.Il numero di operazioni di I/O su disco in coda e in esecuzione, chiamata anche profondità di coda, per i primi cinque dispositivi. Per raggiungere i limiti delle prestazioni dei dischi permanenti, utilizza una profondità di coda I/O elevata. I dischi permanenti sono uno spazio di archiviazione in rete e di solito hanno una latenza maggiore rispetto ai dischi fisici o alle unità SSD locali.

      • Latenza media I/O: la latenza media delle operazioni di I/O di lettura e scrittura aggregate tra le operazioni di tutti i dischi collegati alla VM, misurata dall'Ops Agent nella VM. Questo valore include la latenza di elaborazione del sistema operativo e del file system e dipende dalla lunghezza della coda e dalle dimensioni di I/O.

Informazioni sulle metriche sul rendimento

Le prestazioni della VM sono influenzate dall'hardware su cui viene eseguita la VM, dal carico di lavoro in esecuzione sulla VM e dal tipo di macchina della VM. Se l'hardware non supporta il carico di lavoro o il traffico di rete della VM, le prestazioni della VM potrebbero risentirne.

Prestazioni di CPU e memoria

Dettagli hardware

Le prestazioni di CPU e memoria sono influenzate dai seguenti vincoli hardware:

  • Ogni CPU virtuale (vCPU) viene implementata come un singolo thread hardware multi-thread su un processore CPU.
  • I processori CPU Intel Xeon supportano più thread di app su un singolo core di processore.
  • Le VM che utilizzano tipi di macchine C2 hanno una mappatura fissa tra core virtuali e fisici ed espongono l'architettura delle celle NUMA al sistema operativo guest.
  • La maggior parte delle VM ottiene la frequenza turbo all-core elencata sulle piattaforme CPU, anche se solo la frequenza di base viene pubblicizzata nell'ambiente guest
  • I tipi di macchina con core condivisi utilizzano il cambio di contesto per condividere un core fisico tra vCPU per il multitasking. Offrono inoltre funzionalità di bursting durante le quali l'utilizzo della CPU per una VM può superare il 100%. Per saperne di più, consulta Tipi di macchine con core condivisi.

Per comprendere le prestazioni di CPU e memoria di una VM, visualizza le metriche delle prestazioni per Utilizzo della CPU e Utilizzo della memoria. Puoi inoltre utilizzare le metriche di processo per visualizzare i processi attualmente in esecuzione, attribuire anomalie nel consumo delle risorse a un processo specifico o identificare i consumer di risorse più costosi della tua VM.

Un utilizzo sempre elevato di CPU o memoria indica la necessità di fare lo scale up di una VM. Se la VM utilizza costantemente più del 90% della CPU o della memoria, modifica il tipo di macchina della VM scegliendone uno con più vCPU o memoria.

Rendimento della rete

Dettagli hardware

Le prestazioni della rete sono influenzate dai seguenti vincoli hardware:

Per comprendere le prestazioni di rete di una VM, visualizza le metriche sulle prestazioni relative a Totale pacchetti di rete, Dimensione media pacchetti, Nuove connessioni con VM/esterne/Google, Inviati a VM/esterne/Google, Ricevuto da VM/esterni/Google e Pacchetti in entrata firewall rifiutati.

Verifica se i valori Totale pacchetti di rete, Dimensione media dei pacchetti e Nuove connessioni con VM/esterne/Google sono tipici per il tuo carico di lavoro. Ad esempio, un server web potrebbe presentare molte connessioni e pacchetti di piccole dimensioni, mentre un database potrebbe avere poche connessioni e pacchetti di grandi dimensioni.

Un traffico di rete in uscita costantemente elevato potrebbe indicare la necessità di cambiare il tipo di macchina della VM con un tipo di macchina con un limite di larghezza di banda in uscita più elevato.

Se noti un numero elevato di pacchetti in arrivo rifiutati dai firewall, visita la pagina Network Intelligence Firewall Insights nella console Google Cloud per scoprire di più sulle origini dei pacchetti negati.

Vai alla pagina Firewall Insights

Se ritieni che il tuo traffico sia stato rifiutato erroneamente dai firewall, prova a eseguire dei test di connettività.

Se la tua VM invia e riceve una grande quantità di traffico dalle VM in zone o regioni diverse, valuta la possibilità di modificare il carico di lavoro per conservare più dati all'interno di una zona o di una regione al fine di aumentare la latenza e ridurre i costi. Per ulteriori informazioni, consulta "Prezzi del trasferimento di dati in uscita tra VM all'interno di Google Cloud" nella pagina dei prezzi. Se la VM invia una grande quantità di traffico ad altre VM all'interno della stessa zona, prendi in considerazione un criterio di posizionamento compatto per ottenere una bassa latenza di rete.

Prestazioni di archiviazione

Dettagli hardware

Lo spazio di archiviazione è interessato dai seguenti vincoli hardware:

  • Le prestazioni di archiviazione totali dipendono dalla dimensione totale di tutti i dischi permanenti combinata con il numero di vCPU. Se a una VM sono collegati diversi tipi di dischi permanenti, il limite delle prestazioni del disco permanente SSD è condiviso da tutti i dischi presenti nella VM. Per saperne di più,consulta la pagina relativa alle prestazioni dell'archiviazione a blocchi.
  • Quando Persistent Disk e Hyperdisk competono con il traffico di trasferimento dati in uscita, per Persistent Disk e Hyperdisk viene utilizzato il 60% della larghezza di banda di rete massima in uscita, mentre il restante 40% può essere utilizzato per il trasferimento di dati di rete in uscita. Per maggiori informazioni, consulta Altri fattori che influiscono sulle prestazioni.
  • Le prestazioni relative a dimensioni di I/O e profondità della coda dipendono dai carichi di lavoro. Alcuni carichi di lavoro potrebbero non essere abbastanza grandi da utilizzare limiti di prestazioni completi per le dimensioni di I/O e la profondità delle code.
  • Il tipo di macchina di una VM influisce sulle prestazioni di archiviazione. Per maggiori informazioni, consulta Tipo di macchina e conteggio vCPU.

Per comprendere le prestazioni di archiviazione di una VM, visualizza le metriche delle prestazioni per Velocità effettiva, Operazioni (IOPS), Dimensione I/O, Latenza I/O e Lunghezza coda.

La velocità effettiva del disco e le IOPS indicano se il carico di lavoro della VM funziona come previsto. Se la velocità effettiva o IOPS è inferiore al valore massimo previsto elencato nel grafico del tipo di disco, potrebbero essere presenti problemi di prestazioni relativi a dimensioni di I/O, lunghezza della coda o latenza di I/O.

La dimensione di I/O dovrebbe essere compresa tra 4 e 16 KiB per i carichi di lavoro che richiedono IOPS elevate e bassa latenza e 256 KiB-1 MiB per carichi di lavoro che prevedono dimensioni di scrittura sequenziali o di grandi dimensioni. Le dimensioni di I/O al di fuori di questi intervalli indicano problemi di prestazioni del disco.

La lunghezza della coda, nota anche come profondità della coda, è un fattore determinante della velocità effettiva e del numero di IOPS. Quando le prestazioni di un disco sono buone, la lunghezza della coda dovrebbe essere all'incirca uguale alla lunghezza della coda consigliata per raggiungere un determinato livello di velocità effettiva o IOPS, elencata nel grafico Profondità della coda di I/O consigliata.

La latenza di I/O dipende dalla lunghezza della coda e dalle dimensioni dell'I/O. Se la lunghezza della coda o la dimensione di I/O di un disco sono elevate, anche la latenza sarà elevata.

Se una delle metriche delle prestazioni di archiviazione indica problemi di prestazioni del disco, esegui una o più delle seguenti operazioni: