[RAID] Linux MD: mogelijk een misconfiguratie?

Pagina: 1
Acties:

  • Q
  • Registratie: November 1999
  • Laatst online: 19:55

Q

Au Contraire Mon Capitan!

Topicstarter
Dag,

Momenteel heb ik als test een Raid 6 van 4x 1 TB (Spinpoint F1) aangemaakt, wat effectief 2 TB storage geeft. Later komen daar nog 2x 1 TB bij, wat totaal 4 TB storage geeft die de uitval van twee disks kan doorstaan.

De array is voornamelijk bedoeld voor storage van video. Maar een beetje performance mag wel.

De kale array is als volgt gemaakt:

code:
1
mdadm --create /dev/md5 --level=6 --raid-devices=4 --chunk=128 /dev/sd[abcd]1


Nadat de array was geresynced, heb ik een simpele test gedaan rechtstreeks op de array, zonder filesystem. Dit om een eerste indruk te krijgen wat het ruwe array aankan.

code:
1
2
3
4
dd if=/dev/zero of=/dev/md5 bs=1M
10596+0 records in
10596+0 records out
11110711296 bytes (11 GB) copied, 91.6603 seconds, 121 MB/s


Omdat er 2 disks voor parity worden gebruikt worden er effectief dus maar 2 disks gebruikt voor het 'echte' schrijfwerk. 60 MB/s disk is denk ik niet zo heel slecht, maar een Spinpoint kan volgens mij veel meer.

Een iostat -x -m 5 laat dit zien:

code:
1
2
3
4
5
6
7
8
9
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00   65.57    5.89    0.00   28.54

Device:         rrqm/s   wrqm/s   r/s   w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
hda               0.00     0.00  0.20  0.60     0.00     0.00     8.00     0.07   84.00  42.00   3.36
sda               2.80 11475.40  0.20 2509.80     0.01    54.71    44.65     2.87    1.14   0.27  68.24
sdb               4.40 11879.20  0.80 2106.40     0.03    54.61    53.11    54.57   46.77   0.47  99.92
sdc               4.00 11532.20  0.40 2453.60     0.02    54.71    45.67     2.47    1.01   0.28  67.68
sdd               4.40 11524.00  0.40 2464.00     0.02    54.71    45.48     2.95    1.20   0.27  67.76


Wat valt direct op? Disk sdb trekt 99.9% gebruik, terwijl de andere disks bij lange na nog niet aan hun max zitten. Misschien dat dit een indicatie is dat meer performance mogelijk moet zijn. Misschien dat door een fout van mijn kant 1 disk telkens om duistere redenen extra word belast.

Wat doe ik verkeerd?

Edit:

Lezen gaat met ongeveer 195 MB/s

code:
1
2
3
4
5
6
7
8
9
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00   71.06    4.99    0.00   23.95

Device:         rrqm/s   wrqm/s   r/s   w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
hda               0.00     0.00  0.00  0.00     0.00     0.00     0.00     0.00    0.00   0.00   0.00
sda           10330.80     0.00 1542.00  0.00    46.39     0.00    61.61     0.97    0.63   0.27  42.40
sdb           10351.20     0.00 1515.00  0.00    46.39     0.00    62.71     1.72    1.13   0.36  54.32
sdc           10321.00     0.00 1550.60  0.00    46.36     0.00    61.23     1.00    0.65   0.27  41.68
sdd           10339.80     0.00 1538.20  0.00    46.39     0.00    61.77     1.12    0.73   0.27  41.36


Ook hier valt op dat disk sdb het zwaarst wordt belast en dat de await en svctm waarden duidelijk hoger zijn dan van de andere disks.

[ Voor 20% gewijzigd door Q op 21-07-2008 21:20 ]


Verwijderd

Volgens mij snap je niet helemaal hoe RAID6 werkt.
121 MB/s is echt meer dan prima voor een software RAID6.
Voor elke schrijfactie moeten er 2 parities berekend worden, je kan dus niet zomaar stellen dat je schrijfsnelheid gelijk staat aan 2 schijven omdat je er toevallig 2 schijven in hebt hangen.

Ook al maak je een array met 20 schijven, je gaat echt niet boven die 121 MB/s uitkomen.
Je doet niks verkeerd, je gebruikt gewoon het verkeerde RAID level als je snelheid wil.
RAID6 met 4 schijven slaat sowieso nergens op, RAID10 is een veel logischer en snellere keuze.

Heb je overigens rekening gehouden met het FS op je array?
Dat moet wel de mogelijkheid hebben om geresized te worden.
Welk FS ga je gebruiken? Er zijn nogal wat performance verschillen tussen de verschillende FS'en...

Ik zou zelf voor 6 schijven geen RAID6 gebruiken, maak dan een RAID5 array met 5 schijven en gebruik er 1 als hotspare...
RAID5 is sneller dan RAID6, en RAID6 met zo weinig schijven is vrij inefficient...

Zie Wikipedia: Standard RAID levels voor meer info...

[ Voor 30% gewijzigd door Verwijderd op 21-07-2008 22:11 ]


  • Q
  • Registratie: November 1999
  • Laatst online: 19:55

Q

Au Contraire Mon Capitan!

Topicstarter
Verwijderd schreef op maandag 21 juli 2008 @ 22:01:
Volgens mij snap je niet helemaal hoe RAID6 werkt.
121 MB/s is echt meer dan prima voor een software RAID6.
Voor elke schrijfactie moeten er 2 parities berekend worden, je kan dus niet zomaar stellen dat je schrijfsnelheid gelijk staat aan 2 schijven omdat je er toevallig 2 schijven in hebt hangen.
Ik ben mij bewust dat Raid6 niet zal schalen omdat voor de (dubbele) parity ook telkens de stripe weer moet worden ingelezen, etc.

Dat deze ruwe performance wel redelijk is, ben ik wel met je eens, maar er is toch nog iets andes aan de hand.

Ik snap niet waarom 1 disk veel zwaarder wordt belast dan de anderen. Raid 5 en 6 verdelen hun last over de disks, het is geen raid 4(?) .
Ook al maak je een array met 20 schijven, je gaat echt niet boven die 121 MB/s uitkomen.
Je doet niks verkeerd, je gebruikt gewoon het verkeerde RAID level als je snelheid wil.
RAID6 met 4 schijven slaat sowieso nergens op, RAID10 is een veel logischer en snellere keuze.
Raid 6 met 4 schijven slaat nergens op, maar de raid-level staat niet ter discussie. De set zal uiteindelijk naar 6 disks gaan en raid 10 heeft een groot nadeel: geen dubbele redundancy. 1 disk uitval en op dat moment loop je al het risico de array met nog 1 disk uitval te verliezen, als het net de verkeerde disk is.

Anyway, die hoge belasting van die ene disk zit me niet lekker.

-----

Inmiddels heb ik het vermoeden dat er daadwerkelijk iets mis is met disk sdb. Een simpele benchmark met dd laat dit zien:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
--/dev/sda----------------------------
Write performance disk /dev/sda: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 99.5285 seconds, 105 MB/s
Read performance disk /dev/sda: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 90.1567 seconds, 116 MB/s
--/dev/sdb----------------------------
Write performance disk /dev/sdb: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 129.239 seconds, 81.1 MB/s
Read performance disk /dev/sdb: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 89.2025 seconds, 118 MB/s
--/dev/sdc----------------------------
Write performance disk /dev/sdc: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 93.921 seconds, 112 MB/s
Read performance disk /dev/sdc: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 90.6239 seconds, 116 MB/s
--/dev/sdd----------------------------
Write performance disk /dev/sdd: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 93.9869 seconds, 112 MB/s
Read performance disk /dev/sdd: 
10000+0 records in
10000+0 records out
10485760000 bytes (10 GB) copied, 92.6053 seconds, 113 MB/s


Ik ben daar toch echt even 30 MB/s schrijf-performance kwijt.

Misschien eens een andere kabel proberen.

  • Q
  • Registratie: November 1999
  • Laatst online: 19:55

Q

Au Contraire Mon Capitan!

Topicstarter
Verwijderd schreef op maandag 21 juli 2008 @ 22:01:
Heb je overigens rekening gehouden met het FS op je array?
Dat moet wel de mogelijkheid hebben om geresized te worden.
Welk FS ga je gebruiken? Er zijn nogal wat performance verschillen tussen de verschillende FS'en...
Zowel ext3 als xfs kunnen geresized worden. Ik neig naar xfs omdat mijn ervaring is dat lineaire lees/schrijf performance op xfs veel hoger is.
Ik zou zelf voor 6 schijven geen RAID6 gebruiken, maak dan een RAID5 array met 5 schijven en gebruik er 1 als hotspare...
RAID5 is sneller dan RAID6, en RAID6 met zo weinig schijven is vrij inefficient...
Tja, wat meer performance en meer capaciteit vs. minder risico. Bij uitval van 1 disk ben je gedurende de rebuild van de array kwetsbaar. Het is niet geheel zeldzaam dat door de forse belasting die een rebuild met zich mee brengt een array alsnog klapt omdat een 2e disk het begeeft.

Heel simpel: het is teveel data om ook nog te backuppen (video collectie) dus het moet gewoon veilig staan. Nee, tegen rm -rf is het niet bestand, maar dat risico accepteer ik.

  • Lulukai
  • Registratie: Maart 2007
  • Laatst online: 06-12-2025

Lulukai

God's gift to women

Mag ik zo vrij zijn te vragen wat voor video collectie het is? Monteer je video's of zijn het eerder mkv's enzo?

.


  • Q
  • Registratie: November 1999
  • Laatst online: 19:55

Q

Au Contraire Mon Capitan!

Topicstarter
ruyckske schreef op maandag 21 juli 2008 @ 22:54:
Mag ik zo vrij zijn te vragen wat voor video collectie het is? Monteer je video's of zijn het eerder mkv's enzo?
Dat laatste.

  • gertvdijk
  • Registratie: November 2003
  • Laatst online: 19:41
Q schreef op maandag 21 juli 2008 @ 22:16:
Ik ben daar toch echt even 30 MB/s schrijf-performance kwijt.

Misschien eens een andere kabel proberen.
Ook even kijken wat de schijf zelf zegt over zijn gezondheid met smartctl (smartmontools).

Kia e-Niro 2021 64kWh DynamicPlusLine. 3x Victron MP-II op 15kWh US5000 3f thuisbatterij met 3x25A→3x40A PowerAssist, Victron EVCS, 3200Wp HoyMiles zp. my GitHub, my blog


  • Q
  • Registratie: November 1999
  • Laatst online: 19:55

Q

Au Contraire Mon Capitan!

Topicstarter
smartctl laat geen dingen zien die afwijken van de andere disks.

Ik swap nu twee disks van kanaal om te zien of het probleem zich ook verplaatst of niet. Ofwel disk, ofwel issue met controller.

Disks op kanaal 1 en 2 omgewisseld. Probleem blijft bij sdb... Controller?

Morgen maar eens testen met on-board controller. Dan heb ik uitsluitsel.

edit: was toch de disk -> rma

[ Voor 82% gewijzigd door Q op 22-07-2008 21:31 ]

Pagina: 1