Dateiserver mit FreeNas und ZFS

Home » Beratung zum Serverkauf » Dateiserver mit FreeNas und ZFS

FreeNAS

Bei FreeNAS handelt es sich um ein freies (open source) Betriebssystem, das auf FreeBSD basiert. Es wurde speziell für den Einsatz in NAS-Systemen entwickelt und unterstützt das ZFS-Dateisystem (s.u.). FreeNAS bietet neben den vielen ZFS-bedingten Vorteilen eine einfach zu verwaltende Web-Oberfläche sowie eine Vielzahl an Funktionen, die teilweise über Plug-Ins bereitgestellt werden.

Angeschlossene Speicherpools können über eine reguläre Windows-Freigabe (SMB/CIFS) aber auch Linux (NFS) oder Mac (AFP), wie auch per FTP und SCSI (u.a.) weitergereicht werden. Ferner werden Backups direkt aus Windows Backup, Apple Time Maschine, rsync und PC-BSD Life Preserver unterstützt. Zuletzt verfügt FreeNAS über eine breite Community, die neue Plug-Ins bereitstellt und die Weiterentwicklung fördert.

 

Servermeile FreeNAS Features:

Remote Replication, Log-Dateien, Verschlüsselung, Deduplizierung, RAID, Hot-Swap, Web User Interface, SSH, SNMP, IPMI (optional), UPS, Dynamic DNS, Mirrored Boot Device (optional), High Availability (optional), SSD Caching (optional)

 

ZFS

Bei ZFS (Zeta File System) handelt es sich um ein von Sun Microsystems (heute Oracle) entwickeltes Dateisystem, welches speziell dafür optimiert wurde, sehr große Speichermengen sicher zu verwalten. Eingesetzt wird ZFS in Umgebungen, in denen performant auf sehr viele Daten zugegriffen wird und zudem ein hoher Grad an Datensicherheit erforderlich ist. Wir empfehlen ZFS als alternatives Dateisystem für Servermeile-Dateiserver. An dieser Stelle wollen wir nun die technischen Vorteile von ZFS erklären, ohne gleich zu sehr ins Detail zu gehen:

 

Vereinfachte Administration

ZFS arbeitet mit einem Volumenmanager, der alle vom Administrator ausgewählten Platten zu einem Speicherpool verbindet. Somit kann der gesamte verfügbare Speicher an einer Stelle administriert werden. In der folgenden Grafik sehen Sie einen einfachen vergleich zwischen regulärem RAID und dem ZFS Speicherpool.

ZFS_1

 

Höchste Datensicherheit

Durch jeden noch so kleinen Fehler bei Festplatte, Controller, Kabel, Laser oder innerhalb der Firmware kann es zu „stillen“ Bitfehlern kommen, die Ihre Daten verfälschen. Desktop-Platten sind etwa alle 12 Terabyte (TB) von einem Bit-Fehler betroffen, bei Server-Platten ist es noch immerhin ein Bitfehler alle 120 TB. Schlechte Sektoren treten erfahrungsgemäß etwa alle 8 bis 20 TB auf.

Herkömmliche Dateisysteme arbeiten mit 8-Bit-Prüfsummen, um solche Fehler zu entdecken. Jedoch werden die Prüfsummen im gleichen Datenblock wie die zu schreibenden Daten gespeichert. Die Gefahr der stillen Datenkorruption („Silent Data Corruption“) besteht bei Prüfsummen-Versatz, Identitäts-Diskrepanzen und Paritäts-Inkonsistenzen.

Das CERN hat 2007 dazu einen Test mit 3000 Rack-Servern durchgeführt: Ein Script schreibt dazu jede Sekunde 1 MB an Daten und wartet danach eine Sekunde – so lange bis 1 GB geschrieben wurde. Danach liest und prüft das Script 1 MB an Daten und wartet danach eine Sekunde – wiederum bis 1 GB gelesen wurde. Nach drei Wochen wurden bei der Auswertung 152 Fälle von „Silent Data Corruption“ gefunden, die nicht durch die normale Server-Hardware entdeckt wurden.

Eine aktuelle Studie der Universitäten von Wisconsin und Toronto, in Kooperation mit NetApp prüfte dazu 1,53 Millionen Festplatten über 41 Monate. Silent Data Corruption trat dabei auf 0,86 % der untersuchten nearline SATA Laufwerke und 0,065 % bei Server-Festplatten auf. Ein guter Grund, auf Server-Hardware zu setzen, aber dazu mehr in einem anderen Artikel.

Der ZFS-Speicherpool unterstützt eine eigene RAID-ähnliche Absicherung der Daten mittels Paritäts-Bits namens Raid-Z. Zusätzlich zu Raid-Z1 und Raid-Z2, welche den Ausfall von einer und zwei Platten verkraften, wurde ein Raid-Z3 Modus implementiert, der auch beim gleichzeitigen Ausfall von drei Festplatten ohne Datenverlust weiter läuft.

Darüber hinaus verwaltet ZFS Daten mithilfe einer transaktionalen Semantik, genauer gesagt der Copy-on-Write-Semantik. Bei diesem Verfahren wird jegliche Folge von Schreibvorgängen entweder vollständig ausgeführt und geprüft oder ignoriert. Somit können selbst im ungünstigsten Fall – einem Stromausfall – und ohne vorhandene BBU/FBU nur die ganz zuletzt gespeichert Daten verloren gehen. Das Dateisystem selbst bleibt stets konsistent.

Kommt es bei der Nutzung von einem ZFS-RAID zu einem korrupten Sektor, so wird dieser nicht nur erkannt, sondern automatisch durch ZFS korrigiert.

 

Extreme Skalierbarkeit

Kein anderes Dateisystem ist so skalierbar wie ZFS. Im Vergleich zu regulären 32-Bit- oder 64-Bit-Dateisystemen beruht ZFS auf einer 128-Bit-Architektur (vergleichbar mit Ipv6). Somit ist es theoretisch möglich, 256 Billiarden Zettabyte an Daten zu speichern. Der Speicherspezialist EMC schätzte 2012 das gesamte auf der Erde vorhandene Datenvolumen auf 2,8 Zettabyte – bis 2040 sollen es laut Experten zirka 40 Zettabyte sein.

 

Weitere Features

ZFS erlaubt schnelle und platzsparende inkrementelle Snapshots, die sehr wenig Speicher belegen und in kurzer Zeit im laufenden Betrieb erstellt werden können. Um dies zu ermöglichen, wird jeder Datenblock mit einem Wert für die sogenannte „Birth Time“ ergänzt.  Weitere Features sind eine variable Blockgröße und „eingebaute“ Verschlüsselung. Zuletzt ist ZFS dank ausgefeilter Cache-Techniken relativ schnell und mit dem Einsatz von SSD-Laufwerken als Cache äußerst performant.

 

Zusammenfassung

– ZFS bietet fortschrittliche RAID-Funktionalität. Es können bis zu drei Festplatten gleichzeitig ausfallen. Bei einem Ausfall einer Festplatte gehen nur  die Raid-Z-Level-spezifischen Datenblöcke verloren, und auch nur diese werden neu im Raid-Z-Volumen erzeugt. Im Vergleich zu einem herkömmlichen RAID hat ein RAID-Z somit eine wesentlich kürzere Rebuild-Zeit.

– ZFS erkennt Bit-Fehler und behebt diese selbstständig.

– ZFS ist dank ausgefeilten Caching-Strategien sehr performant.

– Eine ZFS-Umgebung lässt sich äußerst wirtschaftlich realisieren und auch skalieren.

 

Was ist bei der Implementierung zu beachten

Für kleinere NAS-/SAN-Systeme empfehlen wir FreeNAS. Es handelt sich hierbei um ein freies NAS-System, das im Auslieferungszustand bereits sehr gut mit ZFS zusammen arbeitet. Entscheidend ist der Einsatz von zuverlässiger Server-Hardware, wie zum Beispiel ausreichend ECC-Speicher. Für eine optimale Leistung sollte man außerdem den vorhandenen Festplattenspeicher nur zu 75 Prozent auslasten, da sich ZFS bisher noch nicht automatisch defragmentieren lässt und die Performance sonst sinkt. Zuletzt wird empfohlen, für jedes Terabyte an Speichervolumen ein Gigabyte Arbeitsspeicher einzusetzen.

Weitere Informationen / Quellen

CERN (European Organization for Nuclear Research) Studie zur Datenintegrität

Google: Failure Trends in a Large Disk Drive Population

5 thoughts on - Dateiserver mit FreeNas und ZFS