it-swarm.com.de

ZFS gegen XFS

Wir erwägen den Aufbau eines ~ 16 TB Speicherservers. Im Moment betrachten wir sowohl ZFS als auch XFS als Dateisystem. Was sind die Vor- und Nachteile? Worauf müssen wir achten? Gibt es eine dritte, bessere Option?

64
Tamas Czinege

Ich habe festgestellt, dass XFS besser für extrem große Dateisysteme mit möglicherweise vielen großen Dateien geeignet ist. Ich habe seit über 2 Jahren ein funktionierendes XFS-Dateisystem mit 3,6 TB ohne Probleme. Funktioniert definitiv besser als ext3 usw. bei dieser Größe (insbesondere bei vielen großen Dateien und vielen E/A).

Mit ZFS erhalten Sie Gerätepooling, Striping und andere erweiterte Funktionen, die in das Dateisystem selbst integriert sind. Ich kann nicht mit Einzelheiten sprechen (ich werde andere kommentieren lassen), aber nach allem, was ich sagen kann, möchten Sie Solaris verwenden, um hier den größten Nutzen zu erzielen. Mir ist auch unklar, wie viel ZFS hilft, wenn Sie bereits Hardware-RAID verwenden (so wie ich).

45
Mark Renouf

ZFS bietet Ihnen Vorteile, die über Software-RAID hinausgehen. Die Befehlsstruktur ist sehr durchdacht und intuitiv. Es verfügt außerdem über Komprimierungs-, Snapshot-, Klon-, Sende-/Empfangs- und Cache-Geräte für das Dateisystem (diese schicken neuen SSD-Laufwerke), um die Indizierung von Metadaten zu beschleunigen.

Kompression:

#zfs set compression=on filesystem/home

Es unterstützt einfach zu erstellende Snapshots zum Kopieren beim Schreiben, die live gemountet werden können:

# zfs snapshot filesystem/home/[email protected]
# cd filesystem/home/user/.zfs/snapshot/tuesday

Klonen von Dateisystemen:

# zfs clone filesystem/home/[email protected] filesystem/home/user2

Dateisystem senden/empfangen:

# zfs send filesystem/home/[email protected] | ssh otherserver "zfs receive -v filesystem/home/user"

Inkrementelles Senden/Empfangen:

# zfs send -i filesystem/home/[email protected] | ssh otherserver "zfs receive -v filesystem/home/user"

Caching-Geräte:

# zpool add filesystem cache ssddev

Dies ist alles nur die Spitze des Eisbergs. Ich würde Ihnen wärmstens empfehlen, eine Installation von Open Solaris in die Hände zu bekommen und diese auszuprobieren.

http://www.opensolaris.org/os/TryOpenSolaris/

Bearbeiten : Dies ist sehr alt, Open Solaris wurde eingestellt, der beste Weg, ZFS zu verwenden, ist wahrscheinlich Linux oder FreeBSD .


Vollständige Offenlegung: Ich war früher ein Sun-Speicherarchitekt, habe aber seit über einem Jahr nicht mehr für sie gearbeitet. Ich bin nur begeistert von diesem Produkt.

75
Chris

die Verwendung von lvm-Snapshots und xfs auf Live-Dateisystemen ist ein Rezept für eine Katastrophe , insbesondere , wenn sehr große Dateisysteme verwendet werden.

Ich habe in den letzten 6 Jahren ausschließlich auf LVM2 und xfs auf meinen Servern ausgeführt (zu Hause, auch wenn zfs-Fuse einfach zu langsam ist) ...

Ich kann jedoch die verschiedenen Fehlermodi, die bei der Verwendung von Snapshots aufgetreten sind, nicht mehr zählen. Ich habe ganz aufgehört, sie zu benutzen - es ist einfach zu gefährlich.

Die einzige Ausnahme, die ich jetzt machen werde, ist mein persönliches Mailserver/Webserver-Backup, bei dem ich über Nacht Backups mit einem kurzlebigen Snapshot mache, der immer der Größe der Quell-fs und entspricht wird gleich danach gelöscht.

Wichtigste zu beachtende Aspekte:

  1. wenn Sie ein großes (ish) Dateisystem mit einem Snapshot haben, ist die Schreibleistung schrecklich beeinträchtigt
  2. wenn Sie ein großes (ish) Dateisystem mit einem Snapshot haben, wird die Startzeit um buchstäblich einige zehn Minuten verzögert, während die Festplatte während des Imports der Datenträgergruppe ständig wechselt. Es werden keine Nachrichten angezeigt. Dieser Effekt ist besonders schrecklich, wenn sich root auf lvm2 befindet (da das Warten auf das Root-Gerät eine Zeitüberschreitung verursacht und das System nicht startet).
  3. wenn Sie einen Schnappschuss haben, ist es sehr leicht, keinen Platz mehr zu haben. Sobald Ihnen der Speicherplatz ausgeht, ist der Snapshot beschädigt und kann nicht repariert werden.
  4. Snapshots können derzeit nicht zurückgesetzt/zusammengeführt werden (siehe http://kerneltrap.org/Linux/LVM_Snapshot_Merging ). Dies bedeutet, dass die einzige Möglichkeit, Daten aus einem Snapshot wiederherzustellen, darin besteht, sie tatsächlich zu kopieren (rsync?). GEFAHR GEFAHR: Sie möchten nicht dies tun, wenn die Snapshot-Kapazität nicht mindestens der Größe der Quelle fs entspricht. Wenn Sie dies nicht tun, werden Sie bald gegen die Mauer stoßen und sowohl die Quell-fs als auch den Schnappschuss beschädigen. (Ich war dort!)
18
sehe

Ein paar zusätzliche Dinge zum Nachdenken.

  • Wenn ein Laufwerk in einem Hardware-RAID-Array unabhängig vom darüber liegenden Dateisystem ausfällt, müssen alle Blöcke auf dem Gerät neu erstellt werden. Sogar diejenigen, die keine Daten enthielten. ZFS hingegen ist der Volume Manager, das Dateisystem, und verwaltet Datenredundanz und Striping. So können nur die Blöcke, die Daten enthielten, intelligent neu erstellt werden. Dies führt zu schnelleren Wiederherstellungszeiten, als wenn das Volume zu 100% voll ist.

  • ZFS verfügt über eine Hintergrundbereinigung, die sicherstellt, dass Ihre Daten auf der Festplatte konsistent bleiben, und alle gefundenen Probleme behebt, bevor sie zu Datenverlust führen.

  • ZFS-Dateisysteme befinden sich immer in einem konsistenten Zustand, sodass fsck nicht erforderlich ist.

  • ZFS bietet mit seinen Snapshots und Klonen im Vergleich zu den von LVM angebotenen Snapshots auch mehr Flexibilität und Funktionen.

Ausführen großer Speicherpools für die großformatige Videoproduktion auf einem Linux-, LVM- und XFS-Stack. Ich habe die Erfahrung gemacht, dass es einfach ist, Ihren Speicher mit Mikromanagement zu verwalten. Dies kann zu großen Mengen nicht genutzten zugewiesenen Speicherplatzes und Zeit/Problemen bei der Verwaltung Ihrer logischen Volumes führen. Dies ist möglicherweise keine große Sache, wenn Sie einen Vollzeit-Speicheradministrator haben, dessen Aufgabe es ist, den Speicher zu verwalten. Ich habe jedoch festgestellt, dass der Poolspeicheransatz von ZFS diese Verwaltungsprobleme beseitigt.

14
3dinfluence

ZFS ist absolut erstaunlich. Ich verwende es als meinen Home-Dateiserver für einen 5 x 1 TB HD-Dateiserver) und verwende es auch in der Produktion mit fast 32 TB von hard) Speicherplatz. Es ist schnell, einfach zu bedienen und bietet den besten Schutz vor Datenkorruption.

Wir verwenden OpenSolaris auf diesem Server insbesondere, weil wir Zugriff auf neuere Funktionen haben wollten und weil es das neue Paketverwaltungssystem und die Möglichkeit zum Upgrade bereitstellte.

8
X-Istence

Ich denke nicht, dass Sie sich auf Leistung konzentrieren sollten. Sind Ihre Daten mit XFS, ext4 usw. sicher? Lesen Sie diese Doktorarbeit und Forschungsarbeiten:

XFS ist nicht sicher gegen Datenbeschädigung: pages.cs.wisc.edu/~vshree/xfs.pdf

Und ext3, JFS, ReiserFS usw .: Zdnet.com/blog/storage/how-Microsoft-puts-your-data-at-risk/169?p=169&tag=mantle_skin%3bcontent "Ich bin auf die faszinierende Doktorarbeit gestoßen von Vijayan Prabhakaran, IRON File Systems, das analysiert, wie fünf Commodity-Journaling-Dateisysteme - NTFS, ext3, ReiserFS, JFS und XFS - Speicherprobleme behandeln.

Kurz gesagt stellte er fest, dass alle Dateisysteme vorhanden sind

. . . failure policies that are often inconsistent, sometimes buggy, and generally inadequate in their ability to recover from partial disk failures. "

ZFS schützt Ihre Daten jedoch erfolgreich. Hier ist ein Forschungsbericht dazu: zdnet.com/blog/storage/zfs-data-integrity-tested/811

7
Miklo

Welches Betriebssystem planen Sie auszuführen? Oder ist das ein weiterer Teil der Überlegung? Wenn Sie Solaris ausführen, ist XFS meines Wissens nicht einmal eine Option. Wie planen Sie die Verwendung von ZFS, wenn Sie Solaris nicht ausführen? Der Support ist auf anderen Plattformen begrenzt.

Wenn Sie über einen Linux-Server sprechen, würde ich mich persönlich an Ext3 halten, schon allein deshalb, weil es die meisten Tests erhält. zfs-Fuse ist noch sehr jung. Außerdem hatte ich einmal Probleme mit XFS, als ein Fehler nach einem Kernel-Update eine Datenbeschädigung verursachte. Die Vorteile von XFS gegenüber Ext3 überwogen definitiv nicht die Kosten für die Wiederherstellung des Computers, der sich in einem Remote-Rechenzentrum befand.

7
Kjetil Limkjær

Keine FS-orientierte Antwort Entschuldigung, aber beachten Sie, dass einige Festplattencontroller nicht mit> 2 TB LUNS/logischen Festplatten umgehen - dies kann die Art und Weise, wie Sie Ihren Speicher organisieren, erheblich einschränken. Ich wollte nur, dass Sie sich dessen bewusst sind, damit Sie Ihr System durchgängig überprüfen können, um sicherzustellen, dass es durchgehend mit 16 TB funktioniert.

5
Chopper3

Es hängt davon ab, welche Funktionen Sie möchten ... Die beiden vernünftigen Optionen sind xfs und zfs, wie Sie gesagt haben. Der xfs-Code ist ziemlich gut getestet. Ich habe ihn vor 8 Jahren zum ersten Mal unter IRIX verwendet

Es ist möglich, Snapshots von xfs zu erhalten (mit lvm und xfs_freeze).

Es ist möglich, ein separates Protokollgerät zu haben, z. B. eine SSD

mkfs.xfs -l logdev=/dev/sdb1,size=10000b /dev/sda1

Große xfs benötigen traditionell viel Speicher zum Überprüfen

Das Problem mit auftauchenden Nullen war eine "Sicherheits" -Funktion, die meiner Meinung nach vor einiger Zeit verschwunden ist.

1
James

Abgesehen von dem, was bereits erwähnt wurde, ist xfs auf MD-Basis-Raid unter Leistungsgesichtspunkten besser als zfs auf Streaming-Medien. Ich habe ein halbes Jahrzehnt lang genau die gleiche Hardware mit xfs und ungefähr die gleiche Zeit mit zfs auf meinem Medienserver verwendet. Auf dem Intel Atom 330 mit xfs habe ich nie Stuter, auf zfs in komplexen Szenen kann dieselbe Hardware nicht mithalten und beginnt, Frames zu löschen.

1
user718960

Nun Leute, lasst uns nicht die neueste Ergänzung zu zfs vergessen: Deduplizierung. Und lassen Sie uns spontan über iscsi, nfs oder jdm-Sharing sprechen. Wie bereits erwähnt, werden Exporte von zfs-Dateisystemen, Snapshots, Raidz (= raid5) -Block-Prüfsumme, dynamische Streifenbreite, Cache-Verwaltung und viele andere. Ich stimme für zfs.

0
PiL

Eine Alternative ist die Sun 7410 alias Toro, anstatt eine eigene zu bauen. Es enthält einige sehr nützliche Software, die im Lieferumfang der Lösung enthalten ist.

0
Jauder Ho