cryptosetup richtige Einstellungen

Spring23

Cadet 4th Year
Registriert
Juni 2010
Beiträge
74
Daten:
Raid6
Festplatten: 6
Chunk Size: 64

Ich sitze schon seit Stunden am Einrichten der Verschlüsselung beim Raid5. Nachdem ich erstmal ewig gebraucht habe, um die korrekten einstelleungen fürs Raid5 zu finden, scheitere ich nun erneut. Diesmal an der Verschlüsselung.

Speed ohne Verschlüsselung: >130MB/s
Speed mit Verschlüsselung: <60MB/s aber CPU Last bei weniger als 20%

Folgerung: Ich habe wieder irgendwelche Fehler bei den Einstellungen in der Verschlüsselung.

Ich nutze cryptosetup und vermute, mein Fehler liegt darin, dass ich nicht weiß, welchen Wert ich bei --align-payload verwenden muss.

Die Festplatten haben alle jeweils eine Partition, die ich zum Raid5 zusammengeschlossen habe. Meine Einstellungen fürs Dateisystem sollten sein: mkfs.ext4 -b 4096 -E stride=16,stripe-width=80 /dev/md0

Wie gesagt, wenn ich dei Verschlüsselung weglasse geht das Raid wunderbar, nur bremst die Verschlüsselung viel zu viel aus, trotz geringer CPU Last. Das kann eigntlich nur von falschen einstellungen bei der Verschlüsselung kommen.

Kann mir bitte jemand weiterhelfen? Ich weiß nicht, was bei --align-payload hin soll. Ich vermute, dass daher der Fehler kommt. Falls ich noch andere Fehler habe, bitte bescheidgeben.
 
welches tool verwendest du zum verschlüsseln? wie ist es aufgesetzt? welche cpu? welche distribution?
 
@IceMatrix:

cryptsetup,

cryptosetup, wird wohl ein typo oder falsch angenommener Name sein



vor allem welcher kernel ? welcher prozessor ? welcher verschlüsselungsalgo ? (neuste intel CPUs besitzen "hardware beschleunigung" für AES)
 
Sry, war ein typo. :rolleyes:

Hier die fehlenden Angaben:
Kernel: 2.6.37
Distribution: openSuse 11.3
CPU: AMD X4 640 (Quadcore) => leider keine Hardwarebeschleunigung
Verschlüsselungsalgorithmus: alles mögliche probiert, vor allem AES und Twosish 128 und 256bit
Verschlüsslungstool: Natürlich hat freak01 recht, ich nutze cryptsetup, allerdings gibt es bei Truecrypt genau das selbe Problem

Nach erneuten Stunden langen testens habe ich ein Raid5 mit einer Schreibgeschwindigkeit >190MB/s. Allerdings bricht die Geschwindigkeit immernoch enorm stark ein bei Verwenden einer Verschlüsselung, egal welcher und zwar auf etwa 70-80MB/s trotz neuer topwerte ohne Verschlüsselung. Die CPU ist nichtmal ansatzweise ausgelastet. Nichtmal ein einziger Kern kommt auf 100% Last vom Verschlüsselungsprozess.

Ich verstehe das einfach nicht. Das ergibt für mich keinen Sinn. Wieso fällt die Geschwindigkeit um mehr als die Hälfte, wenn die CPU noch locker mehr berechnen könnte? :confused_alt:
Ich bin wirklich total am verzweifeln.
 
nicht verzweifeln - freak01 fragen :D

dm crypt: scale to multiple CPUs

pass aber auf, dass du mindestens >2.6.37.2 nutzt

damit ist ein potentielles Problem mit ext4 und 2.6.37 behoben, das zu Datenverlust führen könnte


aktiviere außer dem noch: gethreadete / parallelisierte Verschlüsselung:

CONFIG_CRYPTO_PCRYPT=y
 
Geinial, genau das düfte meine Lösung sein.
Nur habe ich blöderweise noch nie einen Kernel selbst kompliliert und schon garnicht gepatcht und dann kompiliert. Kannst du mir Links geben wie ich das alles anstelle?

Ich fürchte ganz ohne Hilfe bin ich selbst mit google zum scheitern verurteilt. :rolleyes:
 
Ich muss gestehen, dass mir die Sache doch etwas zu kompliziert war. Zudem habe ich Informationen gefunden, nach dnen dieser Patch in der Kernelversion 2.6.38 integriert sein soll. Daher habe ich schnell mal die RC8 davon installiert und nochmal getestet.

Kurioserweise wird das verschlüsseln jetzt schön auf mehrere Prozesse aufgeteilt. Allerdings nützt dies nicht viel, da wenn man lle 4 Prozesse addiert man doennoch nicht über 100% kommt. Jedoch erreiche ich mit prime beispielsweise mit nur einem Prozess etwa 390% CPU Last. Daraus schließe ich, dass das Maximum bei meinem Qaudcore 400% beträgt und dass 100% einem Kern entspricht, was ja auch Sinn macht.

Hat noch jemand eine Ahnung, wo mein Problem noch liegen könnte? Enthält die Kernelversion 2.6.38RC8 doch noch nicht die Patches? Würde es helfen, wenn ich doch selbst Hand anlege? Wie genau kann ichg das machen? Ich habe sowas echt noch nie gemacht und mit der letzten Anleitung allein kann ich nicht viel anfangen. Selbst konnte ich auch nicht fündig werden. Zumindest konnte ich nichts finden, dass halbwegs einfach zu verstehen ist für einen Linux Noob.
 
Warum willst du allein mit der Ver/Entschlüsselung deine CPU voll auslasten? Brauchst du die nicht vielleicht noch für irgendwas anderes?
 
Die Verschlüsselung ist der Grund, wieso ich einen Quadcore drin habe. Andernfalls hätte ich "nur" einen wesentlich günstigeren Dualcore gekauft. Ich denke, selbst wenn die Verschlüsselung richtig funktionieren würde, bezweifle ich, dass sie m ir große Probleme macht, weil die CPU Last zu hoch ist.

So, nun zurück zum eigentlichen Grund meines Postings. Ich habe jetzt mein Raid5 wieder aufgelöst und zum testen ein Raid0 verwendet un d siehe da, volle CPU Auslastung.

Folglich liegt mein Problem an den Festplatten bzw. an falschen Einstellungen.

Kann mir bitte jemand helfen, wie ich das Raid5 mit Verschlüsselung korrekt einricten kann. Ich bin nach diversen How tos vorgegangen, allerdings ohne den gewünschten Erfolg.

Mein offensichtlich fehlerhaftes Vorgehen:

Raid5 erstellen:
Code:
mdadm --create /dev/md0 --chunk=64 --level=5 --raid-devices=6 /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
Verschlüsselung drauf:
Code:
cryptsetup luksFormat --cipher aes-cbc-essiv:sha256 -s 256 /dev/md0 /media/USBSTICK/key
öffnen:
Code:
cryptsetup luksOpen -d /media/USBSTICK/key /dev/md0 crypt0
Formatieren:
Code:
mkfs.ext4 -m0 -b 4096 -E stride=16,stripe-width=80 /dev/mapper/crypt0

Ergebnis: Ohne die Verschlüsselung, aber mit den selben Einstellungen >300MB/s
Mit Verschlüsselung und soeben genannter Konfiguration: <80MB/s
 
was meinst du wohl, warum ich dir den Patch gepostet habe ?

weil du mit 2.6.37 und diesem die höchstmögliche Leistung erreichen kannst, :daumen:

wenn du es dir so einfach machst und auf 2.6.38 umsteigst, kannst du genauso bei 2.6.37 ohne dem Patch bleiben :hammer_alt:

Gründe findest du im folgenden Thread: dm-crypt: Performance Regression 2.6.37 -> 2.6.38-rc8
 
Zuletzt bearbeitet:
Oh, das habe ich nicht gewusst. Ich dachte wenn der Patch integriert sei, müsste ich mich um nichts weiter mehr kümmern...
Was ich jedoch immernoch nicht verstehe, wieso ist ein Raid0 schneller, obwohl ich den "falschen" Kernel installiert habe. Mir wird wohl oder übel nichts übrig bleiben, als zu versuchen den alten Kernel irgendwie zu patchen, aber ich frage mich immernoch ob ich nicht falsche Einstellungen im Rais verwende, wenn ein Raid0 vieeel schneller ist als das Raid5, obwohl das Raid5 ohne Verschlüsselung Traumwerte erreicht.
 
Zurück
Oben