Software RAID 10 mit bester Perfomance
Hallo lieber Administrator'ler,
ich habe zuhause einen Tower PC stehen, den ich nicht mehr benötige. Er hat relativ viel Leistung (AMD-FX 8350, 8xCores, 8xThreads, mit 4,0 GHz), 16 GB RAM.
Nun habe ich mich dazu entschlossen, ihn als Virtualisierungshost mit Proxmox einzusetzen.
Ich habe hier noch 4 SATA Platten mit je 1 TB rumliegen.
Eine SSD ist auch drin, da läuft Proxmox schon drauf.
Da mir ein ordentlicher RAID Controller zu kostspielig ist, dachte ich mir kurzerhand, machste halt ein Software RAID.
Nun möchte ich das beste an Performance rausholen.
Ich habe derzeit etwa 700 GB an Nutzdaten, bunt gemischt, also kleinere Dateien (Excel, Word, Powerpoint Sheets), als auch größere Dateien (Filme, Videos, etc.).
Ich habe im Internet ein bisschen gegooglet, es damit auch hinbekommen, ein RAID 10 zu erstellen, aber mehr noch nicht rausbekommen.
Ich werfe hier einfach mal ein paar Begriffe in den Raum, welche ich aufgegriffen habe, jedoch nicht ganz verstehe:
Wenn ich das richtig verstanden habe:
Es gibt die Stripe Size nur bei RAID 5 und 6, die ist also für mich unrelevant (wahrscheinlich ist dann auch /sys/block/md0/md/stripe_cache_size unrelevant).
Chunk Size ist die logische Größe, in der DATEIEN auf dem RAID abgelegt werden (sprich bei Chunk Size 64kb belegt auch eine 5kb große Datei 64kb).
Block Size ist die logische Größe, in der DATEN auf der Festplatte abgelegt werden (das heißt bei Block Size 4kb werden für 11kb Daten 12kb Platz verbraucht).
Festplattecache ist ein Zwischenspeicher, um Schreib- und Lesevorgänge zu beschleunigen.
/proc/sys/dev/raid/speed_limit_min und max ist die Mindest bzw. Maximal Geschwindigkeit (in byte/s), mit der Dateien ins RAID geschrieben werden.
/sys/block/md0/device/queue_depth
blockdev --setra 65536 /dev/md0
und
mdadm --grow --bitmap=internal /dev/md0
mdadm --grow --bitmap=none/dev/md0
sind mir gänzlich Rätsel.
Ich habe auch die Perfomance getestet (anhand von Anleitungen) mit Hilfe von dd.
Aber hier kommen verdammt unterschiedliche Werte raus. Abhängig von Lesen und Schreiben, aber auch abhängig von den Optionen, z.B. bs=512, bs=1M, bs=1G und count=1, count=10, count=1000.
Abhängig davon kommen Werte zwischen ein paar MB/s und mehrern GB/s raus.
Wer kann helfen?
Danke
Ketanest
ich habe zuhause einen Tower PC stehen, den ich nicht mehr benötige. Er hat relativ viel Leistung (AMD-FX 8350, 8xCores, 8xThreads, mit 4,0 GHz), 16 GB RAM.
Nun habe ich mich dazu entschlossen, ihn als Virtualisierungshost mit Proxmox einzusetzen.
Ich habe hier noch 4 SATA Platten mit je 1 TB rumliegen.
Eine SSD ist auch drin, da läuft Proxmox schon drauf.
Da mir ein ordentlicher RAID Controller zu kostspielig ist, dachte ich mir kurzerhand, machste halt ein Software RAID.
Nun möchte ich das beste an Performance rausholen.
Ich habe derzeit etwa 700 GB an Nutzdaten, bunt gemischt, also kleinere Dateien (Excel, Word, Powerpoint Sheets), als auch größere Dateien (Filme, Videos, etc.).
Ich habe im Internet ein bisschen gegooglet, es damit auch hinbekommen, ein RAID 10 zu erstellen, aber mehr noch nicht rausbekommen.
Ich werfe hier einfach mal ein paar Begriffe in den Raum, welche ich aufgegriffen habe, jedoch nicht ganz verstehe:
Wenn ich das richtig verstanden habe:
Es gibt die Stripe Size nur bei RAID 5 und 6, die ist also für mich unrelevant (wahrscheinlich ist dann auch /sys/block/md0/md/stripe_cache_size unrelevant).
Chunk Size ist die logische Größe, in der DATEIEN auf dem RAID abgelegt werden (sprich bei Chunk Size 64kb belegt auch eine 5kb große Datei 64kb).
Block Size ist die logische Größe, in der DATEN auf der Festplatte abgelegt werden (das heißt bei Block Size 4kb werden für 11kb Daten 12kb Platz verbraucht).
Festplattecache ist ein Zwischenspeicher, um Schreib- und Lesevorgänge zu beschleunigen.
/proc/sys/dev/raid/speed_limit_min und max ist die Mindest bzw. Maximal Geschwindigkeit (in byte/s), mit der Dateien ins RAID geschrieben werden.
/sys/block/md0/device/queue_depth
blockdev --setra 65536 /dev/md0
und
mdadm --grow --bitmap=internal /dev/md0
mdadm --grow --bitmap=none/dev/md0
sind mir gänzlich Rätsel.
Ich habe auch die Perfomance getestet (anhand von Anleitungen) mit Hilfe von dd.
Aber hier kommen verdammt unterschiedliche Werte raus. Abhängig von Lesen und Schreiben, aber auch abhängig von den Optionen, z.B. bs=512, bs=1M, bs=1G und count=1, count=10, count=1000.
Abhängig davon kommen Werte zwischen ein paar MB/s und mehrern GB/s raus.
Wer kann helfen?
Danke
Ketanest
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 317458
Url: https://administrator.de/forum/software-raid-10-mit-bester-perfomance-317458.html
Ausgedruckt am: 04.04.2025 um 22:04 Uhr
7 Kommentare
Neuester Kommentar
Hi.
Die 1-TB-Platten sind vermutlich gähnend langsam. Ehrlich, die sind einfach unbrauchbar für das Unterfangen, es sei denn, Du bist ein sehr geduldiger Mensch. Kauf Dir zwei nette 4 TB-Platten und mach ein Raid 1 und gut ist. Oder drücke ein Auge zu und gib 250€ für eine 1-TB-SSD aus, die würde noch weitaus schneller sein und fällt vermutlich allein später aus als Dein HDD-Raid.
Die 1-TB-Platten sind vermutlich gähnend langsam. Ehrlich, die sind einfach unbrauchbar für das Unterfangen, es sei denn, Du bist ein sehr geduldiger Mensch. Kauf Dir zwei nette 4 TB-Platten und mach ein Raid 1 und gut ist. Oder drücke ein Auge zu und gib 250€ für eine 1-TB-SSD aus, die würde noch weitaus schneller sein und fällt vermutlich allein später aus als Dein HDD-Raid.
Du wirst mit keinem Raidlevel auf den Platten die Performance erreichen, wie mit modernen 4 TB in einer simplen Spiegelung, vermutlich nicht einmal bei RAID0 (welches Du eh nicht haben wollen wirst). Und mit einer SSD können die eh nicht mithalten aufgrund der Latenzen. Virtualisierung? SSD, ganz klar!
Mehrere GB/s erreichst Du nie und nimmer im Betrieb, mach mal einen Benchmark.
Mehrere GB/s erreichst Du nie und nimmer im Betrieb, mach mal einen Benchmark.
Hallo,
Die Zugriffszeit einer handelsüblichen Festplatte liegt zwischen 5 und 10 ms. Im Schnitt muss für jede (nichtfragmentierte) Datei ein Zugriff erfolgen. D.h. die Platte liest maximal ca. 200 Dateien pro Sekunde. Wenn die Dateien im Durchschnitt 512 Bytes haben wären das ca. 100kB/Sekunde Datendurchsatz.
Wenn die Dateien größer werden, wird der Datendurchsatz entsprechend größer, bis letzendlich die Übertragungsrate der Platte erreicht ist.
Mit freundlichen Grüßen
und warum sind die Ergebnisse von dd so verschieden.
Die Zugriffszeit einer handelsüblichen Festplatte liegt zwischen 5 und 10 ms. Im Schnitt muss für jede (nichtfragmentierte) Datei ein Zugriff erfolgen. D.h. die Platte liest maximal ca. 200 Dateien pro Sekunde. Wenn die Dateien im Durchschnitt 512 Bytes haben wären das ca. 100kB/Sekunde Datendurchsatz.
Wenn die Dateien größer werden, wird der Datendurchsatz entsprechend größer, bis letzendlich die Übertragungsrate der Platte erreicht ist.
Mit freundlichen Grüßen