PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Linux raid5 tuning



Danko
07.04.2013, 01:28
Wer sich unter Linux über mangelnde RAID5 Performance wundert sollte mal den Parameter stripe_cache_size überprüfen.
Die entsprechende Kommandozeile dazu lautet:

cat /sys/block/mdxxx/md/stripe_cache_size

(Der Wert mdxxx ist natürlich durch die korrekte Bezeichnung des Arrays in eurem System (z.B. md0) zu ersetzen.)

Der Linux Standardwert lautet im Normalfall 256. Damit wird die RAID5 Writeperformance auf nicht einmal 50% des maximal möglichen Wertes begrenzt.
Die mangelnde Writeperformance macht sich sogar schon beim Build/Rebuild des RAID5 bemerkbar und kann auch im laufenden Betrieb mit der Kommandozeile:

echo 8192 > /sys/block/mdxxx/md/stripe_cache_size

angepasst werden. Der hier eingetragene Wert 8192 ist nur ein Richtwert und bietet im Einzelfall noch Raum zur Optimierung. Der Effekt der Änderung kann im laufenden Build/Rebuild sofort mit cat /proc/mdstat überprüft werden.

Ein Tuning des Read Ahead Wertes ist mit der Kommandozeile:

blockdev --setra *wert* /dev/mdxxx

möglich wobei der Linux Standardwert von 1536 schon fast optimale Performance liefert. Eine Anhebung des Wertes über 4096 erscheint daher nicht ratsam.

All diese Parameter werden bei jedem Systemneustart auf die Standardwerte zurückgesetzt. Um diese Änderungen permanent zu machen bzw. bei jeden Systemstart automatisch zu laden müssen die Kommandozeilen in der Datei /etc/rc.local

eingefügt werden.

Viel Spaß beim Tuning,

cu danko


Quelle dieser Infos (http://h3x.no/2011/07/09/tuning-ubuntu-mdadm-raid56)

mark05
08.04.2013, 12:06
hi

bei solchen tips sollte man auch hinzuschreiben das es die core cpu verstaert belastet . dh. die load geht deutlich hoch beim schreiben , gerade bei raid5.

das kann man im zweifel bei einem dedizierten nas akzepitieren , wenn jedoch noch zusazliche proccesse wie z.b. sql db oder webserver laufen
koennen diese deutlich verlangsamt reagieren.

holger

Danko
08.04.2013, 21:59
Das ist relativ zu sehen. Bei einer CPU die ohnehin (auch mit den Standardwerten von Linux) schon mehr als z.B. 80-90% Last beim Schreiben auf das RAID5 verbrät ist sowieso schon die Frage zu stellen ob hier das System nicht unterdimensioniert ist. Alles in Richtung AMD E350 und auch alle Intel ATOMs fallen in diese Kategorie. Selbst der kleinste Ivy/Sandy Bridge Dualcore hat aber schon genug Leistung um auch bei einem getuntem RAID5 nicht mehr als 50% CPU-Last für die Paritätsberechung aufbringen zu müssen. Das muss man bei der Dimensionierung ohnehin mit einplanen.