Prestazioni dell'istanza

Questa pagina descrive i limiti di prestazioni per le istanze Filestore, nonché le impostazioni di prestazioni e le opzioni di test consigliate.

Ogni livello di servizio Filestore offre un livello di prestazioni diverso che può variare a causa di fattori quali l'uso della memorizzazione nella cache, il numero di VM client, il tipo di macchina delle VM client e il carico di lavoro testato.

La tabella seguente elenca il rendimento massimo che puoi ottenere impostando la capacità minima e massima per ogni livello di servizio.

Tutti i valori della tabella sono limiti stimati e non garantiti. Per informazioni sulle impostazioni e sui limiti delle prestazioni personalizzate, consulta Limiti delle prestazioni personalizzate.

Limiti di prestazioni alla capacità minima e massima per ogni livello di servizio
Livello di servizio Capacità IOPS di lettura IOPS di scrittura Velocità effettiva di lettura (MiBps) Velocità effettiva di scrittura (MiBps) Velocità effettiva di lettura di un singolo client (MiBps) Velocità effettiva di scrittura di un singolo client (MiBps) Prestazioni personalizzate supportate
BASIC_HDD Da 1 TiB a 10 TiB 600 1000 100 100 100 100 No
Da 10 TiB a 63,9 TiB 1000 5000 180 120 180 120
BASIC_SSD Da 2,5 TiB a 63,9 TiB 60.000 25.000 1200 350 1200 350
ZONAL 1 TiB 9200 2600 260 88 260 88
9,75 TiB 89.700 25.350 2535 858 450 260
10 TiB 92.000 26.000 2600 880 1600 800
100 TiB 920.000 260.000 26.000 8800 1600 800
REGIONALE 1 TiB 12.000 4000 120 100 120 100
9,75 TiB 117.000 39.000 1170 975 450 260
10 TiB 92.000 26.000 2600 880 1600 800
100 TiB 920.000 260.000 26.000 8800 1600 800
ENTERPRISE 1 TiB 12.000 4000 120 100 120 100 No
10 TiB 120.000 40.000 1200 1000 450 260

Scalabilità delle prestazioni

Il rendimento è proporzionale alla capacità entro i limiti di rendimento elencati nella tabella precedente. Ad esempio, se raddoppi la capacità dell'istanza aziendale da 1 TiB a 2 TiB, il limite di prestazioni dell'istanza raddoppia da 12.000/4.000 IOPS di lettura e scrittura a 24.000/8.000 IOPS di lettura e scrittura.

In scenari con un solo client o pochi client, devi aumentare il numero di connessioni TCP con l'opzione di montaggio nconnect per ottenere il massimo rendimento NFS.

Per livelli di servizio specifici, consigliamo di specificare il seguente numero di connessioni tra il client e il server:

Livello Capacità Numero di connessioni
A livello di regione o di zona 1-9,75 TiB nconnect=2
A livello di regione o di zona 10-100 TiB nconnect=7
Aziende - nconnect=2
SSD con scalabilità elevata - nconnect=7

In generale, maggiore è la capacità della condivisione file e minore è il numero di VM client connesse, maggiori sono le prestazioni ottenute specificando connessioni aggiuntive con nconnect.

Prestazioni personalizzate

Imposta le prestazioni personalizzate per configurarle in base alle esigenze del carico di lavoro, indipendentemente dalla capacità specificata. Puoi specificare un rapporto IOPS per TiB o impostare un numero fisso di IOPS. Per maggiori dettagli, vedi Rendimento personalizzato.

Tipo di macchina client consigliato

Consigliamo di utilizzare un tipo di macchina Compute Engine, ad esempio n2-standard-8, che fornisca una larghezza di banda in uscita di almeno 16 Gbps. Questa larghezza di banda in uscita consente al client di raggiungere una larghezza di banda di lettura di circa 16 Gbps per i workload cache-friendly. Per ulteriori informazioni, consulta Larghezza di banda di rete.

Opzioni di montaggio del client Linux

Per ottenere le migliori prestazioni sulle istanze VM client Linux, consigliamo di utilizzare le seguenti opzioni di montaggio NFS, in particolare il montaggio hard,async e le opzioni rsize e wsize. Per ulteriori informazioni sulle opzioni di montaggio NFS, consulta nfs.

Opzione predefinita Descrizione
hard Il client NFS riprova le richieste NFS a tempo indeterminato.
timeo=600 Il client NFS attende 600 decisecondi (60 secondi) prima di riprovare una richiesta NFS.
retrans=3 Il client NFS tenta le richieste NFS tre volte prima di intraprendere ulteriori azioni di recupero.
rsize=524288 Il client NFS può ricevere un massimo di 524.288 byte dal server NFS per richiesta READ.
Nota: per le istanze di livello base, imposta il valore rsize su 1048576.
wsize=1048576 Il client NFS può inviare al server NFS un massimo di 1.048.576 byte (1 MiB) per richiesta WRITE.
resvport Il client NFS utilizza una porta di origine privilegiata quando comunica con il server NFS per questo punto di montaggio.
async Il client NFS ritarda l'invio delle scritture dell'applicazione al server NFS finché non vengono soddisfatte determinate condizioni.
Attenzione: l'utilizzo dell'opzione sync riduce notevolmente le prestazioni.

Ottimizza la velocità effettiva di lettura NFS con il parametro read_ahead_kb

Il parametro NFS read_ahead_kb specifica la quantità di dati, in kilobyte, che il kernel di Linux deve prelevare durante un'operazione di lettura sequenziale. Di conseguenza, le richieste di lettura successive possono essere eseguite direttamente dalla memoria per ridurre la latenza e migliorare le prestazioni complessive.

Per le versioni del kernel Linux 5.4 e successive, il client NFS Linux utilizza un valore predefinito di read_ahead_kb pari a 128 KB. Ti consigliamo di aumentare questo valore a 20 MB per migliorare il throughput di lettura sequenziale.

Dopo aver montato correttamente la condivisione file sulla VM client Linux, puoi utilizzare il seguente script per regolare manualmente il valore parametro read_ahead_kb:

mount_point=MOUNT_POINT_DIRECTORY
device_number=$(stat -c '%d' $mount_point)
((major = ($device_number & 0xFFF00) >> 8))
((minor = ($device_number & 0xFF) | (($device_number >> 12) & 0xFFF00)))
sudo bash -c "echo 20480 > /sys/class/bdi/$major:$minor/read_ahead_kb"

Dove:

MOUNT_POINT_DIRECTORY è il percorso della directory in cui è montata la condivisione file.

Rendimento di VM client singole e multiple

I livelli di servizio scalabili di Filestore sono ottimizzati per le prestazioni per più VM client, non per una singola VM client.

Per le istanze zonali, regionali ed enterprise, sono necessarie almeno quattro VM client per sfruttare le prestazioni complete. In questo modo, tutte le VM nel cluster Filestore sottostante vengono utilizzate al massimo.

Per maggiori informazioni, il cluster Filestore scalabile più piccolo ha quattro VM. Ogni VM client comunica con una sola VM del cluster Filestore, indipendentemente dal numero di connessioni NFS per client specificate utilizzando l'opzione di montaggio nconnect. Se utilizzi una singola VM client, le operazioni di lettura e scrittura vengono eseguite solo da una singola VM del cluster Filestore.

Migliorare le prestazioni delle Google Cloud risorse

Le operazioni su più Google Cloud risorse, come la copia dei dati da Cloud Storage a un'istanza Filestore utilizzando l'interfaccia alla gcloud CLI, possono essere lente. Per contribuire ad attenuare i problemi di rendimento, prova quanto segue:

  • Assicurati che il bucket Cloud Storage, la VM client e l'istanza Filestore si trovino tutti nella stessa regione.

    Le regioni doppie offrono un'opzione con il massimo rendimento per i dati archiviati in Cloud Storage. Se utilizzi questa opzione, assicurati che le altre risorse si trovino in una delle singole regioni contenute nella doppia regione. Ad esempio, se i dati di Cloud Storage si trovano in us-central1,us-west1, assicurati che la VM client e l'istanza Filestore si trovino in us-central1.

  • Come punto di riferimento, verifica le prestazioni di una VM con un Persistent Disk (DP) collegato e confrontale con quelle di un'istanza Filestore.

    • Se la VM collegata a DP ha prestazioni simili o inferiori rispetto all'istanza Filestore, potrebbe indicare un collo di bottiglia delle prestazioni non correlato a Filestore. Per migliorare le prestazioni di riferimento delle risorse non Filestore, puoi modificare le proprietà gcloud CLI associate ai caricamenti compositi paralleli. Per ulteriori informazioni, consulta In che modo gli strumenti e le API utilizzano i caricamenti compositi paralleli.
    • Se le prestazioni dell'istanza Filestore sono notevolmente inferiori a quelle della VM collegata al DP, prova a distribuire l'operazione su più VM.

    • In questo modo, puoi migliorare le prestazioni delle operazioni di lettura da Cloud Storage.

    • Per le istanze zonali, regionali ed enterprise, sono necessarie almeno quattro VM client per sfruttare le prestazioni complete. In questo modo, tutte le VM nel cluster Filestore sottostante vengono utilizzate al massimo. Per ulteriori informazioni, consulta Rendimento delle VM client singole e multiple.

Passaggi successivi