Ext4 und RAID5 Performance Probleme |
Geschrieben von: Administrator |
Mittwoch, den 10. August 2016 um 13:05 Uhr |
Ext4 und RAID5 Performance Probleme
Es geht mal wieder um Software-Raid (5)
Ich fahre hier seit über 10 Jahren Software-Raid 1 und 5 und habe noch nie grössere Probleme gehabt.
Vor Kurzem habe ich mein Software Raid neu gebaut um bessere Performance zu bekommen aber das ist gar nicht so einfach.
Die KonfiguratioN: 6x 2TB WD-RE4 (24/7 Betrieb)
Zuerst einmal habe ich mein Raid neu gebaut: /dev/md2 aushängen und raid stoppen: (mdadm --stop /dev/md2) Dann das raid neu bauen. Hierbei ist zu beachten das man wegen der Performance die Blocksize und Chunksize berücksichtigt.
mdadm --create --level=5 --raid-devices=6 --chunk=512 /dev/md2 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdh1 /dev/sdi1 /dev/sdj1 Dann wird das Raid ernstellt.
Das kann bei einer Nettokapazität von 9.1 TB in meinem Fall mehrere Stunden dauern (ca. 430Min) zeigt die Software auf der Konsole an.
Nachdem das Raid erstellt war muss man ein Filesystem darauf anlegen.
Damit wird das Dateisystem erstellt. Die Werte habe ich über einen Raid5-Rechner im Internet berechnet.
Danach wird die UUID des Dateisystems ausgelesen und in der fstab geändert:
mit dem Befehl "blkid" liest man die UUID aus und ändert in der /etc/fstab den Eintrag für das neue Dateisystem, damit beim nöchsten Rechnerstart die Festplatte bzw Raid-Partition richtig eingeängt wird. Zusätzlich gibt es noch ein paar Mountoptionen für ext4: Eintrag in der /etc/fstab: /dev/md2 / ext4 noatime,nodiratime,data=writeback,barrier=0,errors=remount-ro 1 1 Durch die Para,eter noatime und nodiratime werden die Datenblöcke aus Performance-Gründen Zeitversetzt geschrieben und das Journal im "write-back" Modus auf die Platte geschrieben. Damit gewinnt man Performance da das System nicht immer alle Inodes und Verzeichniseinträge syncron mit dem Plattenzugriffen aktuell halten muß.
Zum Testen kann man das Verzeichnis auch per Hand mounten: mount -t ext4 -o noatime,nodiratime,data=writeback,barrier=0,errors=remount-ro /dev/md2 /raid2
Um den IO-Durchsatz zu testen habe ich mit dd eine Testdate erzeugt:
dd if=/dev/zero of=/raid2/testdat.dat bs=1024M Count=1
Damit wird einem dann angezeigt wie schnell die Daten auf die Platten geschrieben werden. 256MB
Dabei kamen sehr unterschiedliche Werte heraus. Es kommt auch immer darauf an für welchen Einsatz-Zweck das Raid benötigt wird.
Viel Spass beim Ausprobieren.
Euer Admin
|