Im August 2017 erklärte Red Hat seine vermutlich endgültige Abkehr vom Btrfs-Dateisystem. Bald darauf wurde klar, dass ein neu gestartetes Projekt zu Red Hats künftiger Speichertechnologie werden soll. Die Rede ist von Stratis, dass vor wenigen Tagen mit Fedora 28 erstmals vorgestellt wurde und für Fedora 29 eine erste stabile Version 1.0 anstrebt. Stratis soll eine ähnliche Funktionalität wie ZFS und Btrfs bieten, allerdings basierend auf einem hybriden Modell. Da ZFS aus lizenzrechtlicher Sicht für Red Hat nicht infrage kommt und Btrfs eigene Probleme im Zusammenspiel mit Docker zeigt, entschied sich Red Hat zu dieser partiellen Neuentwicklung, die vor rund einem Jahr in einem White-Paper (PDF) vom Hauptentwickler Andy Grover erstmals beschrieben wurde.
Nicht neu erfunden
Dabei will Red Hat aber kein neues Dateisystem schreiben, sondern aus bestehenden Komponenten eine Lösung bauen, die dem Anwender eine gut integrierte Lösung mit konsistenter Konfiguration bietet. Hauptentwickler Andy Grover beschreibt es in dem Papier als eine Kommandozeilenlösung mit einer umfassenden API, die auf bestehenden Techniken aufbaut und in Rust und Python umgesetzt wird. Stratis soll dabei nicht nur den Geschäftskunden von Red Hat die Konfiguration und Pflege riesiger Disk-Arrays erleichtern, sondern auch dem Desktop-Anwender mit nur einer SSD.
Vereinfachend
Stratis zielt darauf ab, drei Dinge einfacher zu machen: die anfängliche Konfiguration des Speichers, spätere Änderungen und die Verwendung erweiterter Speicherfunktionen wie Snapshots, Thin Provisioning und sogar Tiering. Es bedient sich dabei des Konzepts des Storage-Pools, bei dem eine oder mehrere Disks zunächst unspezifiziert zusammengefasst werden, um später mehr Flexibilität zu bieten als dies feste Partitionen tun. Im Gegensatz zu LVM wird, ähnlich wie bei einem Virtual-Machine-File-System (VMF) das Dateisystem mit dem Pool verschmolzen, was bei Btrfs als Subvolume bekannt ist. Bei Stratis heißt es einfach Filesystem, dessen einzige Größenbeschränkung die Größe des Pools darstellt.
Was unterscheidet Stratis von ZFS, Btrfs und LVM?
Anstatt ganz von vorne zu beginnen versuchen die Entwickler bei Stratis von den Fehlern der Vorgänger zu lernen und bestehende Komponenten zu nutzen. Das Device-Mapper-Framework (DM), dessen sich auch LVM bedient um blockorientierten Geräten Funktionen wie RAID und Thin Provisioning zur Verfügung zu stellen arbeitet hierfür zusammen mit dem XFS-Dateisystem. Von ZFS wurde der kommandozeilenbasierte Ansatz übernommen sowie die Art und Weise, wie Festplatten zu einem Pool hinzugefügt oder ersetzt werden.
Bei Btrfs wurden Anleihen beim Konzept der Dateisystem-Snapshots und der Redundanz gemacht. Am weitesten reicht die Verwandtschaft jedoch bei LVM, da beide auf DM als grundlegende Komponente setzen. Stratis soll aber einfacher zu handhaben sein, ohne allzu viel von der breiten Funktionalität von LVM vermissen zu lassen. Somit wird Stratis eine weitere Möglichkeit bieten, einen Storage-Pool zu konfigurieren und zu verwalten.
Zeitplan offen
Mit Version 1.0 soll Stratis Snapshots beherrschen, für Stratis 2.0 ist die Integration von RAID und Write-Through-Caching geplant. Mit Version 3.0 soll die Funktionsparität mit ZFS erreicht sein. Abgesehen von Stratis 1.0, das mit Fedora 29 im Oktober erwartet wird, ist noch kein weiterer Zeitplan bekannt.
Schreibe einen Kommentar