Benchmark - RAW vs. datastore

Az előkészületek - 1, 2, 3 - után jöhettek a benchmark-ok. Erre a célra a VDP beépített benchmark-ját használtam. A mérések minden esetben iSCSI-n keresztül történtek. A baseline (c7k-openfiler-noraw) minden esetben: A P420i 12 lemeze RAID6-ban, a 2GB RAID cache bekapcsolva, az ESXi-n belül a RAID6 tömbön létrehozva a datastore, azon létrehozva egy virtuális diszk, amit az Openfiler kiajánl iSCSI-n keresztül a többi ESXi-nek. Az iSCSI mapping beállítások: write-thru, blockio. Legjobb eredményei: Read: 332,8 MiB/sec, Write: 78,6 MiB/sec

VDP benchmark - HBA mode RAW vs. RAID6 datastore

c7k-openfiler-raw: a P420i vezérlő HBA mode-ban, diszkek RAW-ként felcsatolva a virtuális gépnek, az Openfiler valósítja meg a szoftveres RAID6-ot és azt ajánlja ki a többi ESXi-nek. Az iSCSI mapping beállítások: write-thru, blockio. Legjobb eredményei: Read: 220,3 MiB/sec, Write: 12,3 MiB/sec

VDP benchmark - RAID0 RAW vs RAID6 datastore

c7k-openfiler-raw: a P420i vezérlő RAID mode-ban, RAID cache bekapcsolva, diszkek egyenként RAID0-ban, majd RAW-ként felcsatolva a virtuális gépnek, az Openfiler valósítja meg a szoftveres RAID6-ot és azt ajánlja ki a többi ESXi-nek. Az iSCSI mapping beállítások: write-thru, blockio. Legjobb eredményei: Read: 241,5 MiB/sec, Write: 38,6 MiB/sec

VDP benchmark - RAID6 RAW vs. RAID6 datastore

c7k-openfiler-raw: a P420i vezérlő RAID mode-ban, RAID cache bekapcsolva, diszkek RAID6-ban, majd a RAID6 tömb RAW-ként felcsatolva a virtuális gépnek (az Openfiler nem végez RAID munkát) és azt ajánlja ki a többi ESXi-nek. Az iSCSI mapping beállítások: write-thru, blockio. Legjobb eredményei: Read: 381,9 MiB/sec, Write: 96,9 MiB/sec (a Write volt 99,5 MiB/sec is, de sosem érte el a 100 MiB/sec-et)

Ezzel kijelenthető, hogy a legjobb eredményt akkor lehet ezzel a konfiggal elérni, ha a RAID vezérlő maga végzi a RAID6 funkciót és a RAID tömb RAW módon van kiajánlva az iSCSI szolgáltatást nyújtó virtuális gépnek.

HP ProLiant BL460c Gen8 hw status

Jöhet a játék az iSCSI paraméterek beállításával!

iscsi_target_conf_write-thru_blockio

iscsi_write_back_blockio

iscsi_write_back_fileio

iscsi_write_thru_fileio

write_back_file_io

A tesztek azt mutatták, hogy a blockio adja a legjobb teljesítményt. A fileio write teljesítményben semmit sem hoz, viszont a read mintegy 100 MiB/sec-mal csökkent.

Végül, összehasonlításképpen nézzünk iSCSI nélkül, közvetlenül:

iSCSI nélkül

Legjobb eredményei: Read: 609,1 MiB/sec, Write: 565,7 MiB/sec

És összehasonlítva egy FC-s Fujitsu DX80-at (blade kereten kívül) szintén 12 merevlemezzel, szintén RAID6-ban.

Fujitsu DX80 FC VDP bench

Legjobb eredményei: Read: 204,7 MiB/sec, Write: 129,7 MiB/sec

Hozzászólások

Homokozónak megfogtam két ProLiant DL380 G7-et, P410i / 512MB FBWC vezérlővel. Ezek ugye rosszabb gépek, mint a Tieid, ráadásul a SATA-t csak 3 Gbps-en hajtják.

Teszteléshez az egyik vason csináltam két tömböt (nem egyidejűleg) feldobtam egy minimál Debian-t SCST iSCSI targettel, a másikon pedig egy ESXi 6.0 U2-t.

- 6 darab HP/Intel DC S3610 800 GB SSD - RAID5

A fizikai host-on mérve:
kb. 860 MB/sec read, 835 MB/sec write, meglehetősen atomstabilan
A diszket iSCSI-val kiadva, VMware alatt RDM-ként felcsatolva, egy Linuxos virtuális gépnek kiadva
kb. 790 MB/sec read, 805 MB/sec write.

- 6 darab HP/Seagate 300 GB 10 kRPM HDD - RAID5

A fizikai host-on mérve:
kb. 535 MB/sec read, 365 MB/sec write
A diszket iSCSI-val kiadva, VMware U2 alatt RDM-ként felcsatolva, egy Linuxos virtuális gépnek kiadva
kb. 445 MB/sec read, 335 MB/sec write.

A két gép között most hirtelen egy-egy Mellanox ConnectX-2 10 gigás kártya van egy Mikrotik SFP direct attach kábellel összekötve.

Ha megszüntetem a diszkeket, mint szűk keresztmetszet, és a /dev/zero-t hozom iSCSI-val, akkor kitömi a 10 gigás linket. (9,7 Gbit/sec)

Az iSCSI-val persze a latency megnő, az IOPS visszaesik. Ma már nincs kedvem azt is megmérni pontosan :)

Eléggé bekorlátozza a blade-ben levő két Virtual Connect, hogy milyen hálózatot tudok csinálni a kereten belül. 10 gigát tudok virtuálisan darabolni, a tesztek alatt 4G volt kiadva az iSCSI felé. Ráadásul a VC nem tud jumbo frame-et és egyéb olyan dolgokat, amikkel még játszani lehetne.

Valószínű, hogy single szerverekkel jobb eredményt tudnék én is elérni.

Mivel végezted a méréseket?

--
trey @ gépház

Nem csak a fizikai switchekrol van szo, hanem a teljes utvonalrol: VSS/VDS, vmk, vagy a VMen beluli vNIC.
Ha lehet sporolni a CPU-n, akkor miert ne?

Meg regebben mertem egy ESXi SW iSCSI sebesseget es CPU hasznalatat 4x10G linken keresztul. 1500-as MTU-val is sikerult elerni a link speedet, de -ha jol emlekszem- 20%-ra is felment a hoszt CPU hasznalata, mig 9000-es MTUval nehany szazalek korul alakult. Nem mindegy.

iSCSI-t tipikusan L2 halozaton hasznaljuk, de elofordulhat hogy route-olni kell, ami azert a switcheknel is CPU intenzivebb feladat.

Nekem lenne ilyen játszóterem :-P

Ha mar iSCSI, erdemes megnovelni az MTU-t 9000-re, egy kicsit segithet rajta.