Après sept mois de développement lancement du projet , développé par la société Red Hat et la communauté Fedora pour unifier et simplifier les outils de configuration et de gestion d'un pool de un ou plusieurs disques locaux. Stratis offre des fonctionnalités telles que l'allocation dynamique de l'espace de stockage, les instantanés, l'intégrité des données et la création de couches pour le caching. Le code du projet est écrit en Rust et sous licence MPL 2.0.
Le système reproduit en grande partie les fonctionnalités des outils avancés de gestion de partitions ZFS et Btrfs, mais est réalisé sous la forme d'une couche (daemon ), fonctionnant au-dessus de la sous-système device-mapper du noyau Linux (utilisant les modules dm-thin, dm-cache, dm-thinpool, dm-raid et dm-integrity) et du système de fichiers XFS. Contrairement à ZFS et Btrfs, les composants de Stratis fonctionnent uniquement dans l'espace utilisateur et ne nécessitent pas le chargement de modules spécifiques au noyau. Le projet est à l'origine présenté comme des qualifications d'expert en systèmes de stockage pour son administration.
Pour la gestion, une API D-Bus est fournie et .
Le fonctionnement de Stratis a été testé avec des dispositifs de bloc basés sur LUKS (partitions chiffrées), mdraid, dm-multipath, iSCSI, volumes logiques LVM, ainsi qu'avec divers HDD, SSD et dispositifs NVMe. En cas de présence d'un seul disque dans le pool, Stratis permet d'utiliser des partitions logiques supportant les instantanés pour revenir sur les modifications. En ajoutant plusieurs dispositifs dans le pool, il est possible de combiner logiquement ces dispositifs en une zone continue. Des fonctionnalités telles que
RAID, la compression de données, la déduplication et la mise en place de tolérance aux pannes ne sont pas encore prises en charge, mais sont prévues pour le futur.
Dans ajouté le support de la gestion du chiffrement des partitions en utilisant LUKS2. Ajouté l'interface D-Bus Report pour générer des rapports au format JSON. Le code d'identification et d'initialisation des dispositifs a été réécrit. Les exigences pour la version du compilateur Rust ont été augmentées (au moins 1.43).
Source : opennet.ru
