Condividi tramite


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: 12.800 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.

  • Scritture sequenziali: il 100% delle scritture sequenziali ha raggiunto il valore massimo di circa 8.500 MiB al secondo in questi benchmark. La velocità effettiva massima di un singolo volume di grandi dimensioni è limitata a 12.800 MiB al secondo dal servizio, quindi è possibile aumentare la velocità effettiva potenziale.

  • Letture sequenziali: il 100% delle letture sequenziali ha raggiunto il valore massimo di circa 12.761 MiB/secondo in questi benchmark. La velocità effettiva di un singolo volume di grandi dimensioni è limitata a 12.800 MiB al secondo. Questo risultato è vicino alla velocità effettiva massima ottenibile al momento.

  • 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 2000 MiB/s (2 GiB/s)
Sistema operativo RHEL 8.4
Volume di grandi dimensioni 101 TiB Ultra (velocità effettiva 12.800 MiB/s)
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 da 256 KiB usando 12 macchine virtuali che leggono e scrivono in un singolo volume di grandi dimensioni usando un working set da 1 TiB. Il grafico mostra che un singolo volume di Azure NetApp Files può gestire tra circa 8.518 MiB/s scritture sequenziali pure e 12.761 MiB/s pure sequenziali.

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
Volume di grandi dimensioni 101 TiB Ultra (velocità effettiva 12.800 MiB/s)
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.000M iB/s con nconnect, che è circa dieci volte la velocità effettiva ottenuta senza nconnect.

Si noti che 10.000 MiB/s è approssimativamente la velocità di riga della scheda di interfaccia di rete da 100 Gbps collegata al E104id_v5.

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