Das Lustre-Dateisystem hat sich in Hochleistungsrechnern, Rechenzentren und besonders in Bereichen mit intensivem Datenbedarf, wie bei Künstlicher Intelligenz (KI) und High Performance Computing (HPC), als eine der Schlüsseltechnologien etabliert. Mit seiner Fähigkeit, Dateien effizient über mehrere Server zu verteilen und parallel zu verarbeiten, bietet Lustre enorme Leistungsvorteile. Doch trotz seiner Bedeutung ist Lustre bislang nicht nahtlos in den Linux-Kernel integriert – ein Vorhaben, das die Linux-Community seit über einem Jahrzehnt begleitet und zu einem zentralen Gesprächsthema auf Entwicklerkonferenzen geworden ist. Die jüngsten Entwicklungen auf dem LSFMM+BPF-Gipfel 2025 zeichnen ein Bild von ehrgeizigen Umstrukturierungen und neuen Ansätzen für die Aufnahme dieses wichtigen Dateisystems in den Mainline-Kernel. Die Geschichte von Lustre im Linux-Kernel ist von Höhen und Tiefen geprägt.
Bereits 2013 fand das Dateisystem seinen Weg in das sogenanntes Staging-Verzeichnis des Linux-Kernels, eine Art Zwischenablage für neue oder experimentelle Funktionen. Hier können neue Dateien und Systeme gemeinschaftlich getestet und verbessert werden. Doch fünf Jahre später, im Jahr 2018, erfolgte der Ausschluss aus dieser Entwicklungsphase – die Fortschritte waren unzureichend und vor allem das Entwicklungsmodell von Lustre passte nicht zum Kern der Kernel-Entwicklungspraktiken. Während Entwickler außerhalb des offiziellen Kernels weiterarbeiteten, verlor die im Kernel befindliche Version an Aktualität und Qualität. Dies führte zu einer merklichen Distanz zwischen dem Kern- und dem Out-of-Tree-Code.
Trotz dieser Herausforderungen hat die Lustre-Community die Hoffnung nie aufgegeben, die vollständige Integration in den Linux-Kernel zu erreichen. Seit dem Rauswurf aus dem Staging-Bereich wurden über 1000 Patches eingereicht, die darauf abzielen, den Code an die Anforderungen und Gepflogenheiten des Kernels anzupassen und die Architektur zu modernisieren. Ein großer Teil dieser Entwicklungen stammt von Kernentwicklern wie Neil Brown und James Simmons, die maßgeblich an der Weiterentwicklung und der Anpassung des Dateisystems arbeiten. Eine der Hauptschwierigkeiten besteht darin, das bisherige monolithische und komplexe Code-Repository zu entwirren. Derzeit ist der Quellcode mit zahllosen #ifdef-Anweisungen durchsetzt, die verschiedenste Kernel-Versionen unterstützen sollen.
Dieses Vorgehen erschwert die Wartung und die Weiterentwicklung erheblich. Um die Integration in den Mainline-Kernel zu erleichtern, streben die Entwickler deshalb eine Aufteilung des Codes in zwei klar getrennte Bereiche an. Ein zentraler Kern mit der eigentlichen Dateisystemlogik soll zur Verfügung stehen und in den Kernel integriert werden. Parallel dazu wird ein gesonderter Kompatibilitätszweig gepflegt, mit dem ältere Kernel-Versionen weiterhin unterstützt werden können. Diese Trennung soll die Wartbarkeit steigern und den Entwicklungsprozess an die Linux-Kernel-Standards angleichen.
Neben technischen Herausforderungen gibt es auch kulturelle und organisatorische Unterschiede, die überwunden werden müssen. Während die Kernel-Community seit Jahrzehnten traditionsgemäß Mailing-Listen zur Diskussion und zum Review von Code verwendet, agiert das Lustre-Projekt primär mittels Gerrit, einer webbasierten Code-Review-Plattform. Diese Diskrepanz erschwert nicht nur die Zusammenarbeit mit der breiten Kernel-Community, sondern wird auch als Hindernis bei der Integration in die etablierten Arbeitsabläufe angesehen. Die Lustre-Entwickler sind sich bewusst, dass eine Anpassung notwendig ist, doch gilt es, einen Kompromiss zu finden, der sowohl den Gewohnheiten neuer Entwickler Rechnung trägt als auch die Traditionen der Kernel-Welt respektiert. Eine weitere Debatte dreht sich um den Umfang der Integration: Soll nur der Lustre-Client in den Kernel aufgenommen werden oder auch der Server? Der Client ist im Vergleich zum Server-Code ein bedeutend kleinerer und besser handhabbarer Teil.
Viele Stimmen aus der Kernel-Community favorisieren zunächst nur die Aufnahme des Clients als „kleinen Schritt“, um schrittweise Erfahrung mit dem Code zu sammeln und mögliche Probleme rasch zu erkennen. Allerdings zeigen Stimmen aus der Lustre-Entwicklergemeinde, dass eine getrennte Integration von Client und Server aus technischen Gründen sehr aufwendig und wenig kompromissbereit sei. Der Server ist eng mit bestehenden Speicherlösungen wie ext4 verbunden und nutzt vielfach davon abhängige Komponenten. Die Trennung gestaltet sich deshalb äußerst komplex, insbesondere weil es kein klar definiertes API zwischen Client und Server gibt. Einige Entwickler sprechen sich daher klar für eine Implementierung beider Teile gleichzeitig aus, auch wenn dies ein höheres initiales Arbeitspensum bedeutet.
Die Frage nach der Zukunftsfähigkeit von Lustre im Kernel wird auch von anderen Faktoren beeinflusst. So spielt das Thema der Folios – seit einiger Zeit eingeführte Speicher-Verwaltungseinheiten in Linux – eine große Rolle. Diese sollen künftig die Basis für Dateisystemoperationen bilden und ältere, seitenorientierte Schnittstellen ersetzen. Die Lustre-Entwickler arbeiten bereits an der Umstellung ihrer Speicherverwaltung, um Folios und später auch sogenannte große Folios zu unterstützen. Diese Arbeiten sind essentiell, um langfristig kompatibel und performant im Kernel betrieben werden zu können.
Nicht zuletzt sind die Erwartungen der Nutzer an das Dateisystem ein wichtiger Faktor. Lustre wird hauptsächlich in Hochleistungsumgebungen eingesetzt, in denen es auf maximale Durchsatzraten und niedrige Latenzen ankommt. Ein Thema, das hierbei immer wieder diskutiert wird, ist die Verwendung von FUSE – eine Benutzerraum-Implementierung von Dateisystemen, die theoretisch die Anpassung an unterschiedliche Kernel-Versionen erleichtert. FUSE-basierte Ansätze bringen allerdings erhebliche Performance-Einbußen mit sich, was sie für datenzentrierte HPC-Systeme wenig attraktiv macht. Die Lustre-Community sieht deshalb eine Kernel-Integration als den besten Weg, um einerseits die maximale Leistung zu garantieren und andererseits die Entwickler-Community zu entlasten.
Parallel zum technischen Fortschritt wird auch die Frage diskutiert, wie das Community-Management und die Pflege des Dateisystems gestaltet werden können. Ein Hauptkritikpunkt war, dass Hoffnungsträger wie Lustre und andere Dateisysteme in der Vergangenheit aufgrund mangelnder Kernintegration oft Gefahr liefen, verwaist dazustehen, wenn die ursprünglichen Entwickler absprangen oder Ressourcen für Wartung fehlten. Es gilt also auch, eine nachhaltige Infrastruktur zu etablieren, die sowohl den eigenen Entwicklern als auch der Kernel-Community eine gute Basis für langfristige Pflege bietet. Die Erfahrungen früherer Dateisysteme wie ReiserFS oder NTFS zeigen, dass eine fehlende Integration und eine unklare Wartungsperspektive zu einer zunehmenden Belastung der Linux-Gemeinschaft führen können. Vor diesem Hintergrund wird angestrebt, dass Lustre sich nicht nur technisch, sondern auch organisatorisch stärker an die etablierten Workflows und Standards des Linux-Kernels anpasst.
Nur so lässt sich ein gemeinsames Verständnis für Verantwortlichkeiten und Entwicklungsprozesse schaffen. Auf Branchenseite sind die Nutzungsprofile von Lustre und das steigende Volumen an datenintensiven Anwendungen ein wesentlicher Treiber für die Upstreaming-Bemühungen. Der Bedarf an parallelen, skalierbaren und hochverfügbaren Dateisystemlösungen ist in den letzten Jahren sprunghaft angestiegen, nicht zuletzt durch die starke Expansion von KI, maschinellem Lernen und Big Data. Lustre hat sich hier als eines der wenigen verfügbaren Systeme etabliert, das den enormen Anforderungen gerecht wird. Eine bessere Nähe zum Kernel würde nicht nur die Stabilität und Performance verbessern, sondern auch die Akzeptanz und Verbreitung in neuen Anwendungsfeldern befördern.
Die aktuelle Situation ist Ausdruck eines umfangreichen Umdenkens und Neuausrichtens. Die Entwickler arbeiten intensiv daran, die Layer-Struktur des Codes zu durchleuchten, Kompatibilitätsprobleme zu minimieren und die Infrastruktur auf eine modulare, wartbare Basis zu stellen. Die Kommunikation mit der Kernel-Community soll dabei nicht fehlen, mit dem Ziel, auch den Review-Prozess transparenter und offener zu gestalten. Insgesamt steht die Lustre-Upstreaming-Initiative beispielhaft für eine der großen Herausforderungen im Linux-Ökosystem: die Balance zwischen innovativen Technologien, den Anforderungen an stabile Kernel-Integration und den sozialen sowie entwicklungsbezogenen Strukturen einer komplexen Open-Source-Community. Der Weg ist lang und oft steinig, doch die Fortschritte der letzten Jahre zeigen, dass das Ziel, Lustre als vollwertigen Bestandteil des Linux-Kernels zu etablieren, näher rückt.
Für Nutzer und Entwickler heißt es, am Ball zu bleiben, aktiv mitzuwirken und die Synergien von Hochleistungsdateisystemen und modernen Kernelmechanismen zukünftig voll auszuschöpfen.