Share via


Benchmark delle prestazioni dei volumi elevati di Azure NetApp Files per Linux

Questo articolo descrive le funzionalità di prestazioni testate di un singolo volume di Azure NetApp Files di grandi dimensioni in quanto riguarda i casi d'uso di Linux. I test hanno esplorato gli scenari per carichi di lavoro di lettura e scrittura con scalabilità orizzontale e scalabilità orizzontale, che coinvolgono una e molte macchine virtuali.The tests explored scenarios for both scale-out and scale-up read and write workloads, involving one and many virtual machines (VM). Conoscere la busta delle prestazioni di volumi di grandi dimensioni consente di facilitare il dimensionamento del volume.

Riepilogo dei test

  • La funzionalità Volumi di grandi dimensioni di Azure NetApp Files offre tre livelli di servizio, ognuno con limiti di velocità effettiva. I livelli di servizio possono essere ridimensionati verso l'alto o verso il basso in modo non danneggiato man mano che le esigenze di prestazioni cambiano.

    • Livello di servizio Ultra: 10.240 MiB/s
    • Livello di servizio Premium: 6.400 MiB/s
    • Livello di servizio Standard: 1.600 MiB/s

    In questi test è stato usato il livello di servizio Ultra.

  • I/O sequenziale: il 100% di scritture sequenziali è massimo a 8.500 MiB al secondo, mentre un singolo volume di grandi dimensioni è in grado di 10 GiB al secondo (10.240 MiB/secondo).

  • I/O casuale: lo stesso volume di grandi dimensioni offre oltre 700.000 operazioni al secondo.

  • I carichi di lavoro a elevato carico di metadati sono vantaggiosi per volumi di grandi dimensioni di Azure NetApp File a causa dell'aumento del parallelismo del volume di grandi dimensioni. I vantaggi delle prestazioni sono evidenti nei carichi di lavoro pesanti nella creazione, scollegamento e ridenominazione di file come tipici delle applicazioni VCS e nei carichi di lavoro EDA in cui sono presenti conteggi di file elevati. Per altre informazioni sulle prestazioni dei carichi di lavoro di metadati elevati, vedere Vantaggi dell'uso di Azure NetApp Files per l'automazione della progettazione elettronica.

  • FIO, un generatore di carichi di lavoro sintetico progettato come test di stress di archiviazione, è stato usato per guidare questi risultati di test. Esistono fondamentalmente due modelli di test delle prestazioni di archiviazione:

    • Calcolo con scalabilità orizzontale, che fa riferimento all'uso di più macchine virtuali per generare il carico massimo possibile in un singolo volume di Azure NetApp Files.
    • Calcolo con scalabilità orizzontale, che fa riferimento all'uso di una macchina virtuale di grandi dimensioni per testare i limiti superiori di un singolo client in un singolo volume di Azure NetApp Files.

Test con scalabilità orizzontale di Linux

I test hanno osservato soglie di prestazioni di un singolo volume di grandi dimensioni su larga scala e sono stati eseguiti con la configurazione seguente:

Componente Impostazione
Dimensioni della macchina virtuale Azure E32s_v5
Limite di larghezza di banda in uscita della macchina virtuale di Azure 2000MiB/s (2GiB/s)
Sistema operativo RHEL 8.4
Grandi dimensioni del volume 101 TiB Ultra (10.240 MiB/s velocità effettiva)
Opzioni di montaggio hard,rsize=65536,wsize=65536,vers=3
NOTA: l'uso di 262144 e 65536 ha avuto risultati di prestazioni simili.

Carichi di lavoro sequenziali da 256 KiB (MiB/s)

Il grafico rappresenta un carico di lavoro sequenziale di 256 KiB e un working set di 1 TiB. Mostra che un singolo volume di Azure NetApp Files può gestire tra circa 8.518 MiB/s scritture sequenziali pure e 9.970 Letture sequenziali pure miB/s.

Grafico a barre di un carico di lavoro sequenziale da 256 KiB in un volume di grandi dimensioni.

Carico di lavoro casuale a 8 KiB (operazioni di I/O al secondo)

Il grafico rappresenta un carico di lavoro casuale da 8 KiB e un working set di 1 TiB. Il grafico mostra che un volume di grandi dimensioni di Azure NetApp Files può gestire tra circa 474.000 scritture casuali pure e circa 709.000 letture casuali pure.

Grafico a barre di un carico di lavoro casuale in un volume di grandi dimensioni.

Test con scalabilità orizzontale di Linux

Mentre i test con scalabilità orizzontale sono progettati per trovare i limiti di un singolo volume di grandi dimensioni, i test con scalabilità orizzontale sono progettati per trovare i limiti superiori di una singola istanza rispetto a un volume elevato. Azure posiziona i limiti di uscita di rete sulle macchine virtuali; per l'archiviazione collegata alla rete, significa che la larghezza di banda di scrittura è limitata per ogni macchina virtuale. Questi test di scalabilità orizzontale dimostrano le funzionalità in base al limite di larghezza di banda disponibile di grandi dimensioni e con processori sufficienti per guidare tale carico di lavoro.

I test in questa sezione sono stati eseguiti con la configurazione seguente:

Componente Impostazione
Dimensioni della macchina virtuale Azure E104id_v5
Limite di larghezza di banda in uscita della macchina virtuale di Azure 12.500MiB/s (12.2GiB/s)
Sistema operativo RHEL 8.4
Grandi dimensioni del volume 101 TiB Ultra (10.240 MiB/s velocità effettiva)
Opzioni di montaggio hard,rsize=65536,wsize=65536,vers=3
NOTA: l'uso di 262144 e 65536 ha avuto risultati di prestazioni simili

I grafici in questa sezione mostrano i risultati per l'opzione di montaggio sul lato client di nconnect con NFSv3. Per altre informazioni, vedere Procedure consigliate per le opzioni di montaggio NFS linux per Azure NetApp File.

I grafici seguenti confrontano i vantaggi di nconnect con un volume montato su NFS senza nconnect. Nei test FIO ha generato il carico di lavoro da una singola istanza E104id-v5 nell'area di Azure Stati Uniti orientali usando un carico di lavoro sequenziale da 64 KiB; è stata usata una dimensione di I/0 256, ovvero la dimensione di I/O più grande consigliata da Azure NetApp Files ha generato numeri di prestazioni simili. Per altre informazioni, vedere rsize e wsize.

Velocità effettiva lettura Linux

I grafici seguenti mostrano 256-KiB letture sequenziali di circa 10.000MiB/s con nconnect, che è circa dieci volte la velocità effettiva ottenuta senza nconnect.

Si noti che la larghezza di banda di 10.000 MiB/s è offerta da un volume elevato nel livello di servizio Ultra.

Confronto tra grafici a barre della velocità effettiva di lettura con e senza nconnect.

Velocità effettiva di scrittura linux

I grafici seguenti mostrano scritture sequenziali. L'uso nconnect di offre vantaggi osservabili per le scritture sequenziali a 6.600 MiB/s, approssimativamente quattro volte quello dei montaggi senza nconnect.

Confronto tra grafici a barre della velocità effettiva di scrittura con e senza nconnect.

Operazioni di I/O al secondo di lettura linux

I grafici seguenti mostrano 8-KiB letture casuali di circa 426.000 operazioni di I/O al secondo di lettura con nconnect, circa sette volte ciò che viene osservato senza nconnect.

Grafici che confrontano operazioni di I/O al secondo di lettura con e senza operazioni di I/O al secondo.

Operazioni di I/O al secondo di scrittura linux

I grafici seguenti mostrano 8-KiB scritture casuali di circa 405.000 operazioni di I/O al secondo di scrittura con nconnect, circa 7,2 volte che ciò che viene osservato senza nconnect.

Grafici che confrontano operazioni di I/O al secondo di scrittura con e senza operazioni di I/O al secondo.

Passaggi successivi