ubuntuusers.de

Chunksize bei mdadm RAID5 onthefly ändern?

Status: Gelöst | Ubuntu-Version: Ubuntu 11.04 (Natty Narwhal)
Antworten |

songka

Anmeldungsdatum:
2. Oktober 2010

Beiträge: 11

Hi,

leider hat mir Ubuntu ein Raid5 mit einer Chunksize von 512KB angelegt. Das halte ich für zuviel, jede kleinere Datei würde unnötig Speicherplatz konsumieren. Kann man die Chunksize auf einem angelegten Raid5 ändern, oder muss man das alte erste löschen und dann ein ganz neues Raid5 mit anderen Parametern aufsetzen?

Gruß, Songka

songka

(Themenstarter)

Anmeldungsdatum:
2. Oktober 2010

Beiträge: 11

Hallo,

selbst ist der Benutzer und ich habe die Lösung gefunden. Wer ist ins selbe Problem läuft, hier die Lösung:

sudo mdadm --grow -c 64 /dev/md0

Aber es hat auch Auswirkungen, denn dieser Vorgang dauert sehr lang und nimmt Tage in Anspruch. Mit ca. 8MB/s ist der Reshape sehr langsam.

Es scheint auch, daß seit Version Ubuntu 11.04 sämtliche Software-Raid mit einer Chunkgröße von 512K angelegt werden. Schade, daß man während des Alternative Setup nicht diesen Parameter verändern kann. Wäre was für Ubuntu 11.10, am liebsten sogar für die Desktop Version, mitsamt Verschlüsselung.

Gruß

frostschutz

Avatar von frostschutz

Anmeldungsdatum:
18. November 2010

Beiträge: 7735

songka schrieb:

jede kleinere Datei würde unnötig Speicherplatz konsumieren

Wieviel Platz eine Datei konsumiert, entscheidet allein das Dateisystem, nicht das RAID. Du siehst also ein Problem wo keines ist.

songka

(Themenstarter)

Anmeldungsdatum:
2. Oktober 2010

Beiträge: 11

Das ist gut zu wissen. Dennoch ein Chunk von 512K ist augenscheinlich nicht optimal. Ich habe mittlerweile Benchmarks für Raid5 gefunden, wo sich zeigt, daß ein Chunk 32K bzw. 64K die beste Lösung ist. Aus Sicht der Performance sind 512K keine gute Wahl.

frostschutz

Avatar von frostschutz

Anmeldungsdatum:
18. November 2010

Beiträge: 7735

songka schrieb:

Aus Sicht der Performance sind 512K keine gute Wahl.

512k Chunk-Size ist der Default-Wert von mdadm seit 2009, das ist also nicht Ubuntu-spezifisch. Der Default-Wert wurde 2009 von 64k geändert mit der Begründung, daß 512k für moderne Festplatten passender sind. Was Benchmarks angeht, du findest zu jeder Chunksize einen Benchmark, der genau diese Größe empfiehlt. Wenn dir das wichtig ist musst du deinen eigenen Benchmark machen (auf deiner eigenen Hardware, deinem Wunsch-Dateisystem und mit deinem Nutzungsszenario), alles andere ist wertlos. Da du auf deinem Array schon Nutzdaten hast könnte das aber etwas schwierig werden, da so ein Reshape zum einen sehr lange dauert, zum anderen ist grow die riskanteste Operation beim SW-Raid überhaupt...

songka

(Themenstarter)

Anmeldungsdatum:
2. Oktober 2010

Beiträge: 11

Klar, Benchmarks sind häufig Auslegungssache und relativ. Ich habe das 'grow' mittlerweile auch gestoppt und einfach ein neues /dev/md0 per --create erzeugt. Hat nur ein zehntel der Zeit gekostet.

frostschutz

Avatar von frostschutz

Anmeldungsdatum:
18. November 2010

Beiträge: 7735

songka schrieb:

Klar, Benchmarks sind häufig Auslegungssache und relativ. Ich habe das 'grow' mittlerweile auch gestoppt und einfach ein neues /dev/md0 per --create erzeugt. Hat nur ein zehntel der Zeit gekostet.

Klar, wenn keine Daten drauf sind, kannst du einfach eins per create erzeugen. Falls Daten drauf waren, sind die dann halt futsch.

Antworten |