Mobile-Menu

Tipp: Objektspeicher als POSIX-Volume und rohes Blockgerät ZeroFS macht S3-Buckets zum Linux-Dateisystem

Von Thomas Joos 2 min Lesedauer

Anbieter zum Thema

Objektspeicher ist günstig und praktisch unbegrenzt, spricht aber die S3-API statt POSIX. ZeroFS legt ein Log-strukturiertes Dateisystem über beliebige S3-Buckets und reicht sie als NFS-Freigabe, 9P-Mount oder rohes Blockgerät durch. So rücken Cloud-Buckets als primärer Speicher in Reichweite klassischer Anwendungen.

ZeroFS schlägt eine Brücke zwischen günstigem Objektspeicher und Anwendungen, die POSIX oder ein Blockgerät erwarten.(Bild:  KI-generiert)
ZeroFS schlägt eine Brücke zwischen günstigem Objektspeicher und Anwendungen, die POSIX oder ein Blockgerät erwarten.
(Bild: KI-generiert)

ZeroFS stammt von Pierre Barre und steht unter der GNU AGPL v3 mit zusätzlicher kommerzieller Lizenz. Das in Rust geschriebene Programm bündelt drei Server in einem einzigen Prozess: NFS auf Port 2049, 9P auf Port 5564 und NBD auf Port 10809. Über NFS erreichen nahezu alle Unix-artigen Systeme das Volume, 9P zielt auf Linux mit strengerer POSIX-Treue und eigenem Zwischenspeicher, NBD stellt den Bucket als rohes Blockgerät bereit. Auf diesem Blockgerät arbeiten ext4, ZFS-Pools, Datenbanken oder Images virtueller Maschinen.

Ein Prozess, drei Zugänge

ZeroFS speichert Daten Log-strukturiert, komprimiert sie vor dem Hochladen mit zstd oder lz4 und verschlüsselt jeden Extent mit XChaCha20-Poly1305 über einen 256 Bit langen Schlüssel. Den Datenschlüssel leitet das Programm über Argon2id aus einem Passwort ab und verpackt ihn geschützt; einen Klartextmodus gibt es nicht. Den Codec für die Kompression wechselt der Administrator jederzeit ohne Migration der bereits gespeicherten Daten.

Als Backend akzeptiert ZeroFS Amazon S3, Google Cloud Storage, Azure Blob, beliebige S3-kompatible Dienste und lokale Verzeichnisse über file-URLs. So kann ein Administrator dieselbe Konfiguration zuerst auf einer lokalen Platte prüfen und sie später auf einen entfernten Bucket schieben, ohne die Anwendung darüber anzupassen.

Latenz aus dem Weg räumen

Objektspeicher antwortet in Millisekunden statt Mikrosekunden. ZeroFS federt das mit zwei Zwischenspeichern ab, einem im Arbeitsspeicher und einem auf lokaler Platte, deren Größe der Administrator über Parameter wie „memory_size_gb“ und „disk_size_gb“ bestimmt. Für große Dateien nennt das Projekt einen Durchsatz nahe der rohen S3-Geschwindigkeit, für viele kleine Objekte einen Bereich um mehrere 10.000 Anfragen pro Sekunde und eine Skalierung bis in den Bereich hunderter Millionen Dateien.

TRIM-Befehle gibt das Blockgerät an den Bucket weiter, sodass gelöschte Blöcke wirklich freigegeben werden. Prüfpunkte und Read-Replicas erlauben lesende Zweitzugriffe auf denselben Bucket. Ein Administrator baut daraus einen geografisch verteilten Lesezugriff, ohne die Daten doppelt vorzuhalten.

Grenzen und Einsatz

Der Ansatz verschiebt die Verantwortung für Konsistenz auf die Cache-Schicht. Eine optionale Leader-Stand-by-Schaltung über denselben Bucket sorgt für automatische Übernahme, ohne eine zweite Datenkopie zu verlangen. Datenbanken mit harten Latenzanforderungen arbeiten dennoch nur dann rund, wenn der Cache im RAM großzügig bemessen ist, denn jeder Fehlzugriff endet bei der Antwortzeit des Objektspeichers und kostet mehr Zeit als ein lokaler Treffer.

Die Doppellizenz aus AGPL v3 und kommerzieller Variante zwingt Unternehmen zu einer Prüfung, ob der offene Zweig für ihren Einsatz genügt. Für Archive, Kaltdaten und Testumgebungen mit S3-Anbindung bringt ZeroFS schon heute einen konkreten Nutzen.

Fazit

ZeroFS schlägt eine Brücke zwischen günstigem Objektspeicher und Anwendungen, die POSIX oder ein Blockgerät erwarten. Verschlüsselung, Kompression und zwei Cache-Stufen sind eingebaut, die Anbindung deckt lokale Platten ebenso ab wie entfernte Buckets. Mit der Auswahl aus NFS, 9P und NBD passt das Programm auf Datei- wie Blockebene. Der Produktiveinsatz hängt am Cache-Design und an der Lizenzfrage.

(ID:50970078)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung