Login
Newsletter
Werbung

Mo, 7. Juni 2010, 13:18

Software::Systemverwaltung

Native ZFS-Unterstützung für Linux vorgestellt

Während Linux bereits mittels FUSE auf Suns ZFS-Dateisystem zugreifen kann, haben nun Mitarbeiter des Lawrence Livermore National Laboratory in Zusammenarbeit mit Sun/Oracle eine native Portierung des Dateisystems vorgestellt. Die Lizenzproblematik bleibt allerdings weiterhin bestehen.

Als das »ultimative Dateisystem« wurde das ZFS-Dateisystem aus dem Hause Sun angepriesen. Zettabyte File System (ZFS) brach in der Tat mit vielen Paradigmen der Unix-Welt und bietet ein komplett neues Konzept der Bedienung. Im Gegensatz zu konventionellen Storage-Lösungen arbeitet das Dateisystem nicht auf der Ebene des Volume-Managements, sondern auf einer neuen, abstrakten Umgebung namens »Storage Pools«, die vergleichbar mit LVM ist. Im Gegensatz zu LVM nistet sich ZFS jedoch nicht unterhalb der Dateisystemebene ein, sondern oberhalb, so dass das System die komplette Kontrolle über die Verteilung der Daten auf der Hardware behält. Dadurch eröffnen sich für ZFS interessante Möglichkeiten. Um einen Speicherpool zu erstellen und zu erweitern oder ein Dateisystem hinzuzufügen oder zu entfernen, genügt bei ZFS ein einziger Befehl. Bei herkömmlichen Dateisystemen und Volume-Managern muss hierzu unter Umständen eine ganze Abfolge von Einzelschritten durchlaufen werden.

Vor allem sollte ZFS die Sicherheit des Systems erhöhen. So verhindert das System Datenverfälschungen, indem es sicherstellt, dass die Daten zu jedem Zeitpunkt in sich konsistent sind. Alle Vorgänge laufen als Transaktionen ab. Zum einen bleibt dadurch die Konsistenz gewahrt, und zum anderen entfallen damit so gut wie alle Einschränkungen bei der Abfolge der E/A-Operationen. So lässt sich am Ende immer feststellen, ob die vorgenommenen Änderungen als Ganzes erfolgreich verlaufen sind. Darüber hinaus gilt für alle Operationen das Prinzip »Copy-on-Write«. Vorhandene Daten werden nie direkt überschrieben. Stattdessen schreibt ZFS die Daten zunächst in einen neuen Block; anschließend werden die Datenzeiger geändert und der Schreibvorgang abgeschlossen.

Kaum verwunderlich deshalb, dass auch unter Linux das Interesse an ZFS groß war. Die Ernüchterung kam allerdings mit der vorgestellten Lizenz. Denn ZFS steht unter der CDDL, die mit der GPL, unter der Linux freigegeben wird, nicht in Einklang zu bringen ist. Um das Dilemma trotz allem zu lösen, startete »ZFS Filesystem für FUSE/Linux« - ein Projekt, das von Google im Rahmen des »Summer of Code« gefördert wurde und einen alternativen Weg aufzeigen sollte. »ZFS-FUSE« verwendet das »Filesystem in Userspace« (FUSE), das im Linux-Kernel seit Version 2.6.16 integriert ist und für ältere Kernel als Zusatzmodul erhältlich ist. Es ermöglicht, das Dateisystem als normale Anwendung laufen zu lassen. Dies ist zwar lizenzrechtlich unbedenklich, bringt allerdings diverse Nachteile mit sich – unter anderem einen verminderten Datendurchsatz.

Eine weitere Lösung wollte deshalb KQ Infotech aufzeigen. Bereits Ende des vergangenen Jahres kündigte das Unternehmen die Arbeiten an einem nativen Port der Quellen für Linux an. Aus den Bemühungen ist allerdings bis jetzt noch nichts geworden. Fertige Lösungen oder gar Quellen sucht man immer noch vergeblich.

Nun meldeten sich Mitarbeiter des Lawrence Livermore National Laboratory zu Wort und kündigten eine prinzipiell funktionierende Lösung an. Um ihre Server mit Lustre und ZFS zu betreiben, hat die Institution in Zusammenarbeit mit Sun/Oracle die Originalquellen auf Linux portiert. Die Lösung unterstützt allerdings noch nicht den Posix-Layer, weshalb ein direkter Einsatz unter Linux sich nur auf den Zugriff auf die Datenbanken beschränkt. Wie Brian Behlendorf allerdings auf der Liste des zfs-fuse-Projektes schreibt, befindet sich die Lösung immer noch in Entwicklung. Die Intention der Freigabe war eher, dass andere Entwickler sich an der Arbeit beteiligen und Anwender den momentanen Status testen können.

Die Problematik der Lizenz bleibt indes bestehen. Die Lösung basiert, ähnlich den Ports für BSD-Systeme, auf den Originalquellen von Sun und steht folglich ebenfalls unter der CDDL. Dementsprechend ist auch mit einer direkten Aufnahme in den Kernel nicht zu rechnen. Da Sun/Oracle bislang immer noch kein Interesse an einer Änderung der Lizenz zeigen, wird der native Port nur als eine Lösung »außerhalb« des Kernels erhältlich sein.

Die Quellen des neuen Projektes können im github von Brian Behlendorf gefunden werden. Weitere Informationen finden Interessenten in der FAQ und einer Anleitung zum Compilieren des Moduls.

Werbung
Kommentare (Insgesamt: 22 || Alle anzeigen )
Re[2]: Dateisysteme (Atalanttore, Di, 8. Juni 2010)
Re[4]: Modul (Icke, Di, 8. Juni 2010)
Re[2]: Modul (realist, Mo, 7. Juni 2010)
Re[5]: Dateisysteme (glasen, Mo, 7. Juni 2010)
Re[3]: Modul (Sehr richtig, Mo, 7. Juni 2010)
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung