Nach einem Jahr Entwicklung Projektveröffentlichung , entwickelt von Red Hat und der Fedora-Community, um die Konfiguration und Verwaltung eines Pools aus einem oder mehreren lokalen Speichergeräten zu vereinheitlichen und zu vereinfachen. Stratis bietet Funktionen wie dynamische Speicherzuweisung, Snapshots, Integritätsprüfung und Erstellung von Layern für Caching. Der Code des Projekts ist in Rust geschrieben und stehen unter der MPL 2.0 Lizenz.
Das System ähnelt in seinen Möglichkeiten den erweiterten Verwaltungswerkzeugen von ZFS und Btrfs, wird jedoch als Schicht (Daemon ), die über das Device-Mapper-Subsystem des Linux-Kernels arbeitet (es werden die Module dm-thin, dm-cache, dm-thinpool, dm-raid und dm-integrity verwendet) und dem XFS-Dateisystem, implementiert. Im Gegensatz zu ZFS und Btrfs arbeiten die Komponenten von Stratis ausschließlich im Benutzerspeicher und erfordern keine spezifischen Kernelmodule. Das Projekt wird ursprünglich als für die Administration von Expertenqualifikationen im Speicherbereich.
Zur Verwaltung steht eine D-Bus API und .
Die Stratis-Arbeit wurde mit Blockgeräten auf LUKS-Basis (verschlüsselte Partitionen), mdraid, dm-multipath, iSCSI, logischen LVM-Volumes sowie verschiedenen HDDs, SSDs und NVMe-Speichern getestet. Mit einem einzigen Laufwerk im Pool ermöglicht Stratis die Verwendung logischer Partitionen mit Snapshot-Unterstützung, um Änderungen zurückzusetzen. Bei der Hinzufügung mehrerer Laufwerke zum Pool besteht die Möglichkeit, diese logisch zu einem zusammenhängenden Bereich zu verbinden. Solche Möglichkeiten wie
RAID, Datenkompression, Deduplizierung und die Organisation von Ausfallsicherheit werden derzeit noch nicht unterstützt, sind aber für die Zukunft geplant.
In die Anforderungen an die Rust-Compiler-Version wurden erhöht (mindestens 1.37, aber 1.38 wird empfohlen). Die signifikante Änderung der Versionsnummer ist auf die Umbenennung einiger D-Bus-Schnittstellen und eine Überarbeitung der Organisation der D-Bus-Arbeit zurückzuführen (ein Satz grundlegender primärer Eigenschaften wurde выделено, während andere Eigenschaften nun über die neue Methode FetchProperties abgefragt werden).
Quelle: opennet.ru
