Quale rendimento devo aspettarmi con MPIO?


12

Dell PowerEdge 2950 con due schede NIC da 1 Gbps che accedono a due porte da 1 Gbps su uno switch che passa a una NetApp con quattro schede NIC da 1 Gbps che presentano un'unica interfaccia virtuale. 24 unità, 7200k SATA, NetApp RAID-DP. Ho mappato ciascuna scheda NIC host su NetApp utilizzando MPIO nell'iniziatore iSCSI Microsoft. Testando con SQLIO il mio throughput di scrittura sembra ragionevole a circa 200 MB, ma le mie letture sono più vicine a 100 MB.

Le mie letture non dovrebbero essere più vicine ai 200 MB proprio come le mie scritture? Si tratta di un problema di configurazione o esiste un problema di archiviazione fondamentale che non capisco?

inserisci qui la descrizione dell'immagine

Aggiornamento: ecco gli IOPS per il carico di lavoro casuale. Le letture hanno un senso, tuttavia, non sono sicuro di cosa fare di 20000 per le scritture. La cache SAN è di 3,2 GB. I test SQLIO sono confrontati con un file da 25 GB.

inserisci qui la descrizione dell'immagine


3
Qual è la tua cache sul dispositivo NetApp? Hai un amministratore SAN che può estrarre alcune metriche per te? Abbiamo una NetApp e siamo stati in grado di identificare alcuni problemi con una combinazione di rapporti e registri di avviso. Alla fine, la nostra situazione era una cattiva scheda in fibra, ma il supporto di NetApp è stato molto utile per aiutarci a risolvere la causa.
swasheck,

2
Potrebbe valere la pena esaminare la configurazione dei tuoi aggregati e volumi per assicurarti che i tuoi dischi vengano utilizzati correttamente (sentiti libero di pubblicare la tua configurazione, anche se non sono sicuro di quanti di noi siamo esperti di NetApp). È normale che le scritture siano più veloci delle letture, perché le scritture possono essere memorizzate nella cache sul filer prima di essere trasferite sul disco, ma le letture devono colpire il disco a meno che non siano già nella cache.
Nathan Jolly,

2
@mrdenny Da dove nasce questa nozione "99% di IO in blocchi da 64k"? Bob Dorr indica diversamente , così come Wes Brown . Anche se dovessimo ignorare quei due articoli completi, sicuramente il buon senso impone che vedrai 8K IO su una piattaforma che utilizza una dimensione di pagina 8K.
Mark Storey-Smith,

2
@mrdenny Il mio deve essere rotto allora, dovrei chiamare il supporto? Sono seduto qui a guardare l'attività I / O del file di dati con il monitor di processo e mentre ci sono 64K di lettura previsti in abbondanza, ci sono molte altre letture multiple di 8K e ovviamente molte di 8k di scrittura. L'attività del registro è come previsto, multipli di 512 byte che vanno dalle singole scritture da 512 byte a 60k.
Mark Storey-Smith,

2
@ MarkStorey-Smith Nella mia esperienza le letture in 8k si verificano in genere correlate alla frammentazione. Inoltre potrebbe indicare la distruzione della memoria, la scarsa durata della pagina a causa delle scansioni che sfrattano le pagine (cioè la maggior parte dell'estensione è ancora in memoria). Un sistema ben sintonizzato dovrebbe mostrare letture a 64k. Scrive ovviamente dipende da ciò che è effettivamente sporco.
Remus Rusanu,

Risposte:


7

Le scritture su disco stanno effettivamente andando nella memoria (NVRAM) sul filer, per essere scaricate sul disco in seguito - su un filer inattivo, queste saranno incredibilmente veloci e gli iop di 20.000 sono abbastanza credibili (vedrai velocità simili dalla maggior parte degli SSD) .

Le letture, d'altra parte, devono provenire dal disco a meno che non si trovino già nella cache di lettura del filer (che, a differenza delle scritture, si trovano nella memoria volatile).

È difficile fissare i fornitori di archiviazione su iops per i dischi rotanti, ma per un'unità a 7200 giri / min, 80-120 iops è abbastanza credibile. Considerando che probabilmente hai perso un paio di dischi a causa del RAID-DP e / o dei ricambi di NetApp, 2.200 iops sono vicini a quello che potresti aspettarti da 22 dischi che eseguono circa 100 iop ciascuno.

Questo potrebbe non spiegare la tua velocità di lettura (i tuoi dischi potrebbero non eseguire i 2200 iop completi quando esegui una lettura sequenziale), ma potrebbe almeno aiutare a spiegare le tue prestazioni di scrittura.


Grazie Nathan. Dovrei aspettarmi il doppio del throughput con due schede NIC e MPIO?
Henry Lee,

1
Sei in grado di controllare l'utilizzo sul tuo filer mentre esegui i test di lettura sequenziale? Se raggiunge il 100%, è probabile che il collo di bottiglia per quelli presenti nel filer (a causa della configurazione o delle limitazioni di iops su ciascun disco) e le connessioni MPIO / MPIO extra non aggiungeranno nulla. La velocità di scrittura potrebbe aumentare ulteriormente.
Nathan Jolly,

5

Per i posteri, dopo molte prove ed errori, abbiamo capito come ottenere il rendimento atteso.

Come accennato in precedenza, NetApp aveva un'interfaccia virtuale supportata da quattro NIC fisiche. L'host ha due schede di rete e avevo configurato MPIO tramite l'iniziatore iSCSI MS in modo che ci fosse un percorso da ciascuna scheda di rete a un'interfaccia virtuale. I risultati sono stati il ​​throughput di cui sopra: le scritture avevano un senso vicino a 200 MB o alla velocità di due schede NIC, ma le letture erano la metà o la velocità di una scheda NIC.

A un esame più attento, il nostro ragazzo della SAN ha notato che il traffico scorreva solo attraverso una delle schede NIC fisiche per le letture. Non sono sicuro che ci sia stato un errore di configurazione da parte nostra, ma ci sono state due cose che abbiamo provato ed entrambe ci hanno permesso di raggiungere il nostro throughput. Uno era quello di passare da un'interfaccia virtuale supportata da quattro NIC a due interfacce virtuali, ciascuna supportata da due NIC. Quindi mappare una scheda NIC host su un'interfaccia virtuale. L'altra cosa che abbiamo provato è stata di utilizzare "aliasing" sul lato SAN per presentare più interfacce virtuali. (Non sono un tipo SAN, quindi spero di averlo detto correttamente.)

Il mio take-away è che avevamo solo bisogno che la SAN presentasse più di un'interfaccia in modo che l'Iniziatore vedesse veramente più percorsi. Ecco il nostro throughput ora:

inserisci qui la descrizione dell'immagine


perché adesso le scritture più piccole sono più lente?
Jack dice di provare topanswers.xyz il

Non sono sicuro, non siamo ancora riusciti a capirlo. Riporterò indietro se lo capisco.
Henry Lee,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.