Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Openindiana + ZFS performance problemen

Pagina: 1
Acties:

  • nilisvw
  • Registratie: Oktober 2009
  • Laatst online: 30-11 09:14
Beste,
Ik ben aan het testen met Openindiana + ZFS en Comstar zoals ook in het nieuwsitem van Femme te zien is. De performance is bij mij echter van dramatisch niveau.
Mijn hardware:

Supermicro X7DB8+
2x Xeon proc
32GB RAM
Adaptec AIC 7902 SCSI controller
4x Seagate 15K (Model ST3300655LC, Ultra320 SCSI, 300GB, 15,000rpm)
2x Corsair CSSD-V60GB2 (Intel ESB2 sata 3.0Gbps controller)

Configuratie:
Ik heb openindiana v151a (server) op 1 schijf SSD van Corsair geïnstalleerd met als aanvullende software Comstar Iscsi en Nappit.

Daarna heb ik een pool aangemaakt met raid 10.

zpool create tank mirror c0t0d0 c0t1d0 mirror c0t2d0 c0t3d0

NAME STATE READ WRITE CKSUM CAP Product
tank ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
c2t0d0 ONLINE 0 0 0 300.00 GB ST3300655LC
c2t1d0 ONLINE 0 0 0 300.00 GB ST3300655LC
mirror-1 ONLINE 0 0 0
c2t2d0 ONLINE 0 0 0 300.00 GB ST3300655LC
c2t3d0 ONLINE 0 0 0 300.00 GB ST3300655LC


Via een DD test in Napp-it krijg ik onderstaande resultaten. Niet echt de resultaten die je zou verwachten. De schrijftest valt me enorm tegen en de leestest lijkt mij niet echt te kloppen, of zou hij hier alles uit het geheugen halen?

write 10.24 GB via dd, please wait...
time dd if=/dev/zero of=/tank/dd.tst bs=1024000 count=10000

10000+0 records in
10000+0 records out

real 3:43.6
user 0.0
sys 21.1

10.24 GB in 223.6s = 45.80 MB/s Write



Als ik direct op een schijf test zonder een pool aan te maken is de snelheid wel normaal.
dd if=/dev/zero of=/dev/dsk/c2t0d0 bs=1024000 count=10000
~100MB/s (wat naar mijn mening zelfs nog iets sneller zou moeten kunnen.

Als ik een pool aanmaak met 1 schijf (basic) zonder mirror of raidz dan houdt ik van deze 100MB/s nog maar 70MB/s over.
Maak ik een spare pool met 2 schijven dan heb ik 80MB/s wat ook zeer slecht is…

Al met al lijkt het erop neer te komen dat wanneer ik een pool aanmaak met ZFS dat de performance enorm verslechterd.

Ook heb ik het aanmaken van volumes en iscsi targets met verschillende block sizes geprobeerd. Hierbij was de performance nog slechte dan direct testen op de pool.
Echter heb ik deze configuratie niet gepost, omdat het naar mijn idee al fout gaat op het moment van aanmaken van een pool.

De uitlijning heb ik ook al gecontroleerd en staat op “9” wat zou moeten kloppen aangezien onze schijven ook 512bytes sectors hebben.

Ik heb express nog niet met log of larc2 ssds gewerkt, omdat ik eerst de performance problemen op de schijven in orde wil hebben voordat ik optimalisatie wil toepassen.

Heeft iemand enig idee wat ik fout doe? Of zijn er nog zaken welke perse geconfigureerd moeten worden voordat je fatsoenlijke snelheden kan halen?

Alvast bedankt!

  • jadjong
  • Registratie: Juli 2001
  • Niet online
Bak eens een pool op die twee SSD's.

  • matty___
  • Registratie: Augustus 2005
  • Laatst online: 28-11 08:32
brakke adaptec driver van solaris?

  • nilisvw
  • Registratie: Oktober 2009
  • Laatst online: 30-11 09:14
Ik heb nog een extra SSD in de server geplaatst. SSD 1 werd namelijk voor het OS gebruikt.
Als ik dan gelijk de DD test doe naar de schijven zonder een pool aan te maken krijg ik dit resultaat:

san1:~# time dd if=/dev/zero of=/dev/dsk/c5d0 bs=1024000 count=10000
10000+0 records in
10000+0 records out

real 1m52.262s
user 0m0.013s
sys 0m18.336s
san1:~# time dd if=/dev/zero of=/dev/dsk/c4d1 bs=1024000 count=10000
10000+0 records in
10000+0 records out

real 1m36.825s
user 0m0.029s
sys 0m11.303s

Dus op schijf 1 ongeveer 90MB/s en schijf 2 ongeveer 98MB/s

Als ik dan een ZFS raid 0 pool aanmaak: zpool create tank5 c4d1 c5d0 krijg ik de volgende resultaten:


real 0m40.637s
user 0m0.019s
sys 0m13.952s
san1:~# time dd if=/dev/zero of=/tank5/zero.test bs=1024000 count=10000
10000+0 records in
10000+0 records out

real 0m40.621s
user 0m0.018s
sys 0m9.045s
san1:~# time dd if=/dev/zero of=/tank5/zero.test bs=1024000 count=10000
10000+0 records in
10000+0 records out

real 0m38.556s
user 0m0.020s
sys 0m9.336s

Dat is ongeveer 240MB/s wat ze officieel per stuk moeten behalen, maar goed iig een stuk sneller dan dat ik per 1 schijf test zonder pool (misschien dat dat aan de sector size van 512B ligt, dat zou ik nog even moeten uitzoeken).
Dat lijkt er dus al een stuk meer op, maar waarom zouden de SCSI schijven dan wel snel zijn (100MB/s per schijf) voordat ik een pool aanmaak en nadat ik een pool heb aangemaakt met raid 0 maar 45MB/s overblijven?


Je zou zeggen als de driver niet goed is dat hij dan toch ook al traag is als je gaat testen zonder een pool aan te maken op 1 schijf ?

  • matty___
  • Registratie: Augustus 2005
  • Laatst online: 28-11 08:32
probeer voor de zekerheid even freebsd uit. Heb je binnen 5min erop zitten. (zfsguru of freenas hoeft voor dit even niet)