Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Journaling Filesystem und LVM/Software-Raid (Write Barriers)
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum
View previous topic :: View next topic  
Author Message
slick
Bodhisattva
Bodhisattva


Joined: 20 Apr 2003
Posts: 3495

PostPosted: Mon Apr 06, 2009 6:19 am    Post subject: Journaling Filesystem und LVM/Software-Raid (Write Barriers) Reply with quote

Ich habe mich jetzt viel belesen über Software-Raid und Dateisysteme. Allerdings sind mir noch ein paar Dinge unklar.

1) Was sind Write Barriers? Man liest sehr viel darüber, aber irgendwie werde ich da nicht schlau daraus. Auch kommt oft die Aussage man sollte im Zusammenhang lvm/raid (o.ä.) den Write Cache der HD deaktivieren, und es macht Probleme mit XFS usw. Könnte bitte jemand mal in einfachen Worten für DAU erklären, für was gut, was zu beachten usw.

2) Laut Theorie sollte ein Raid 1 beim lesen doppelt so schnell sein wie eine einzelne Platte, ich messe jedoch mit hdparm -tT die gleiche Geschwindigkeit als wie nur von einer Platte (~90 MB/s). Wie kann das sein?

(Mal am Rande, mir kommen auch ~90MB/s (hdparm -tT) für eine neue SATA2 Platte was langsam vor. Sind das normale Werte? Mir fehlt da ein Vergleich)

EDIT: Titel angepaßt weil passender zur Diskussion


Last edited by slick on Wed Apr 08, 2009 8:46 am; edited 2 times in total
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6780

PostPosted: Tue Apr 07, 2009 7:20 am    Post subject: Reply with quote

Harddisks mit Cache schreiben die Daten in "zufälliger" Reihenfolge auf die Platte. Damit werden so Dinge wie "journaled filesystems" vollkommen sinnfrei, denn die Idee, die Daten zunächst in das Journal zu schreiben (damit ggf. beim Absturz nichts passiert) und erst dann das Journal auf die Platte zu übertragen, kann damit ja nicht funktionieren.

Eine write barrier ist ein spezielles Harddisk-Kommando, das besagt: Schreibe die Daten, die nach diesem Kommando kommen erst dann, wenn alle vorherigen Daten tatsächlich auf der Platte stehen. Der Kernel Device Mapper und vermutlich auch der Kernel Raid (Letzteres habe ich nie probiert) kann aber kein solcher "write barrier"-Kommando bekommen. Ob das technisch prinzipiell nicht möglich ist oder ein fehlendes Feature, weiß ich nicht. Auf jeden Fall geht es nicht, und damit sind Probleme mit allen "journaled filesystems" vorprogrammiert.
Back to top
View user's profile Send private message
slick
Bodhisattva
Bodhisattva


Joined: 20 Apr 2003
Posts: 3495

PostPosted: Tue Apr 07, 2009 7:41 am    Post subject: Reply with quote

Danke, d.h. es sollte reichen entweder das Dateisystem mit nobarrier zu mounten ODER den Write Cache der Platte zu deaktivieren?
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6780

PostPosted: Tue Apr 07, 2009 2:05 pm    Post subject: Reply with quote

slick wrote:
Danke, d.h. es sollte reichen entweder das Dateisystem mit nobarrier zu mounten

Wenn Du z.B. das ext3/ext4 Filesystem mit barrier=0 mountest (was bei ext3 perverserweise der Default ist), bedeutet das nur, dass es die "barrier"-Kommandos weglässt. (Zumindest bei ext3/4 musst Du die Option gar nicht explizit einstellen, weil das Filesystem automatisch merkt, dass die Kommandos nicht möglich sind). Mit eingeschaltetem Plattencache ist das aber ziemlich blödsinnig, weil Du dann alle Vorteile eines journaled filesystems verlierst. Wenn Du das machst (also mit Plattencache aber ohne barriers arbeiten), nimm lieber ext2: Da hast Du die Vorteile eines journaled filesystems von vornherein nicht und es müssen insbesondere keine unnötigen Daten auf die Platten geschrieben werden um diese Vorteile vermeintlich (aber tatsächlich eben nicht) zu haben.
Back to top
View user's profile Send private message
tazinblack
Veteran
Veteran


Joined: 23 Jan 2005
Posts: 1146
Location: Baden / Germany

PostPosted: Wed Apr 08, 2009 7:15 am    Post subject: Reply with quote

mv wrote:
slick wrote:
Danke, d.h. es sollte reichen entweder das Dateisystem mit nobarrier zu mounten

Wenn Du z.B. das ext3/ext4 Filesystem mit barrier=0 mountest (was bei ext3 perverserweise der Default ist), bedeutet das nur, dass es die "barrier"-Kommandos weglässt. (Zumindest bei ext3/4 musst Du die Option gar nicht explizit einstellen, weil das Filesystem automatisch merkt, dass die Kommandos nicht möglich sind). Mit eingeschaltetem Plattencache ist das aber ziemlich blödsinnig, weil Du dann alle Vorteile eines journaled filesystems verlierst. Wenn Du das machst (also mit Plattencache aber ohne barriers arbeiten), nimm lieber ext2: Da hast Du die Vorteile eines journaled filesystems von vornherein nicht und es müssen insbesondere keine unnötigen Daten auf die Platten geschrieben werden um diese Vorteile vermeintlich (aber tatsächlich eben nicht) zu haben.


Da stellen sich mir dann diese Fragen :

1. Macht es dann generell keinen Sinn ein journaling filesystem mit einem Softraid (mdadm) zu nutzen, oder muss man es dann nur "speziell" einstellen ( Ich mounte wichtige ext3 - FS mit data=journal)
2. Kann ich den Plattencache so einfach abstellen und wenn ja wie?
3. Wie ist dann mit Raidcontrollern, also Raid in Hardware?

Gibts da ein empfehlenswertes Howto?
_________________
Gruß / Regards
tazinblack
_______________________________________________________
what's the point in being grown up if you can't be childish sometimes
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6780

PostPosted: Wed Apr 08, 2009 8:31 am    Post subject: Reply with quote

tazinblack wrote:
1. Macht es dann generell keinen Sinn ein journaling filesystem mit einem Softraid (mdadm) zu nutzen, oder muss man es dann nur "speziell" einstellen ( Ich mounte wichtige ext3 - FS mit data=journal)

Mit Cache würde ich sagen: Nein. Zugegeben, es ist nicht da ganze Wahrheit: Mit einer gewissen Wahrscheinlichkeit wurden bei einem Crash die Daten halt doch in der richtigen Reihenfolge geschrieben. Aber der Sicherheitsgewinn ist marginal, und es kann sogar gefährlicher sein also ohne Journal. Jedenfalls wäre es mir nicht wahrscheinlich genug, um den Overhead eines Journals zu rechtfertigen.
Quote:
2. Kann ich den Plattencache so einfach abstellen und wenn ja wie?

/etc/conf.d/hdparm ("man hdparm"). Für Scsi-Platten gibt es angeblich auch so etwas (sdparm?).
Quote:
3. Wie ist dann mit Raidcontrollern, also Raid in Hardware?

Von Fake-Raids (die noch Softwareunterstützung brauchen und in undokumentiertem Format schreiben) würde ich jedenfalls abraten. Ob "richtige" Raid-Controller write-barriers beherrschen, weiß ich nicht. Beim Mounten mit "barrier=1" sagt mir ext4 zumindest im syslog bei dm-crypt-Partitionen, dass Barriers vom Device nicht unterstützt und daher abgeschaltet wurden. Wenn Du keine solche Meldung erhälst, könnte es theoretisch gehen. Garantie gibt es aber keine (ich habe sogar von Festplatten gehört, die zwar Barrier-Kommandos akzeptieren aber einfach nicht beachten...).
Back to top
View user's profile Send private message
slick
Bodhisattva
Bodhisattva


Joined: 20 Apr 2003
Posts: 3495

PostPosted: Wed Apr 08, 2009 8:42 am    Post subject: Reply with quote

tazinblack wrote:
2. Kann ich den Plattencache so einfach abstellen und wenn ja wie?

Code:
hdparm -W0 /dev/...


tazinblack wrote:
1. Macht es dann generell keinen Sinn ein journaling filesystem mit einem Softraid (mdadm) zu nutzen, oder muss man es dann nur "speziell" einstellen ( Ich mounte wichtige ext3 - FS mit data=journal)


Diese Frage finde ich jetzt allerdings auch sehr interessant. Es kann denke ich nicht sein das einerseits Dateisysteme entwickelt werden die mit ExaByte umgehen können und angepriesen werden, aber andererseits mit (Software-)Raid oder LVM nicht klarkommen. Da läuft doch was schief, oder? Ich bezweifel doch mal das im kommerziellen Umfeld mit großen Datenmengen (jenseits einzelner Platten) auf z.B. LVM verzichtet wird. Wie macht mans da?

Was wäre denn ein passendes Dateisystem für LVM/Softwareraid? Ext2? Wie steht es da mit der Performance im Vergleich zu den Journaling FS unter gleichen Bedingungen? Die sind doch im lesen auch deutlich schneller. Das alles aufgeben?

Als Dateisystem für / (auf LVM über Softwareraid) setze ich jetzt xfs ein. Probleme sollten afaik nur die seltenen Schreibzugriffe machen, aber xfs ist beim lesen durch die Caching Mechanismen gefühlt deutlich schneller. Ist das jetzt risikoreicher als eins ohne Journal?


Last edited by slick on Wed Apr 08, 2009 8:59 am; edited 1 time in total
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6780

PostPosted: Wed Apr 08, 2009 8:52 am    Post subject: Reply with quote

slick wrote:
Als Dateisystem für / (auf LVM über Softwareraid) setze ich jetzt xfs ein. Probleme sollten afaik nur die seltenen Schreibzugriffe machen, aber xfs ist beim lesen durch die Caching Mechanismen gefühlt deutlich schneller. Ist das jetzt risikoreicher als eins ohne Journal?

Risiko besteht ja ohnehin immer nur beim Schreiben, und auch da nur, wenn der Computer mitten in einem Schreibprozess an ungünstiger Stelle abraucht - das ist ja i.W. der ganze Unterschied zwischen Journal und "kein Journal". Mit xfs habe ich keine Erfahrung, habe aber gehört, dass das immense Caching beim Schreiben und ein merkwürdigerweise nicht synchrones Journal zuweilen für Probleme sorgt; allzu wichtige Daten würde ich ihm daher ohne weitere Backups nicht anvertrauen, aber das gilt ja ohnehin generell.
Back to top
View user's profile Send private message
tazinblack
Veteran
Veteran


Joined: 23 Jan 2005
Posts: 1146
Location: Baden / Germany

PostPosted: Thu Apr 09, 2009 10:53 am    Post subject: Reply with quote

slick wrote:

Diese Frage finde ich jetzt allerdings auch sehr interessant. Es kann denke ich nicht sein das einerseits Dateisysteme entwickelt werden die mit ExaByte umgehen können und angepriesen werden, aber andererseits mit (Software-)Raid oder LVM nicht klarkommen. Da läuft doch was schief, oder? Ich bezweifel doch mal das im kommerziellen Umfeld mit großen Datenmengen (jenseits einzelner Platten) auf z.B. LVM verzichtet wird. Wie macht mans da?


Also ich verwende mittlerweile im kommerziellen Umfeld für große und auch kleine Datenmengen ein Hardwareraid und als FS auf Linux EXT3 und data=journal. Mit Reiserfs bin ich schon mehrfach auf die Nase gefallen.
Auch JFS hat mich mal im Stich gelassen. (siehe https://forums.gentoo.org/viewtopic-t-751121.html

Schlechte Erfahrungen auf der Hardwareseite hab ich oft mit Systemen von Dell gemacht (PERC 4 Controller), aber auch schon ab und zu mit älteren Serveraids von IBM.
Am liebsten sind mir inzwischen externe Raidsysteme, die auch den Raidcontroller beinhalten wie sie z.B. advanced-unibyte.de verkauft. Diese werden bei mir i.d.R. per SCSI angeschlossen und können dann intern SCSI oder SATA Platten haben. Meistens hab ich die dann noch welche mit nem großen internen Cache und ner Cachepufferbatterie, damit wenn der Strom ausfällt die Daten auf dem Cache nicht verloren gehen.

Wobei das für den Privatgebrauch uninteressant ist.

Gemäß den obigen Link hab ich zum Thema XFS auch bisher öfter mal was negatives gehört.

Aber im Prinzip hast du recht, die FS können zwar inzwischen wohl exabytes verwalten, aber wie das in Zusammenarbeit mit LVM und DM (Softraid) aussieht konnte mir bisher auch noch keiner so richtig sagen.
Daher bin ich auch noch immer auf der Suche nach der sichersten Konstellation.
_________________
Gruß / Regards
tazinblack
_______________________________________________________
what's the point in being grown up if you can't be childish sometimes
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum