ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠ° Stratis 2.2, ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Red Hat ΠΈ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ Fedora Π΄Π»Ρ ΡΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠ»ΠΎΠΌ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ
Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»Π΅ΠΉ. Stratis ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠ°ΠΊ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΠ° Π² Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, ΡΠ½Π°ΠΏΡΠΎΡΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ»ΠΎΡΠ² Π΄Π»Ρ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ MPL 2.0.
Π‘ΠΈΡΡΠ΅ΠΌΠ° Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ ΠΏΠΎ ΡΠ²ΠΎΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°ΠΌΠΈ ZFS ΠΈ Btrfs, Π½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² Π²ΠΈΠ΄Π΅ ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠΈ (Π΄Π΅ΠΌΠΎΠ½ stratisd), ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅ΠΉ ΠΏΠΎΠ²Π΅ΡΡ
ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ device-mapper ΡΠ΄ΡΠ° Linux (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ dm-thin, dm-cache, dm-thinpool, dm-raid ΠΈ dm-integrity) ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ XFS. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ZFS ΠΈ Btrfs, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Stratis ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ΄ΡΠ°. ΠΡΠΎΠ΅ΠΊΡ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠ΅ΠΏΠΎΠ΄Π½ΠΎΡΠΈΡΡΡ ΠΊΠ°ΠΊ Π½Π΅ ΡΡΠ΅Π±ΡΡΡΠΈΠΉ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ²Π°Π»ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΊΡΠΏΠ΅ΡΡΠ° ΠΏΠΎ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ.
ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ D-Bus API ΠΈ cli-ΡΡΠΈΠ»ΠΈΡΠ°.
Π Π°Π±ΠΎΡΠ° Stratis ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½Π° Ρ Π±Π»ΠΎΡΠ½ΡΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ Π½Π° Π±Π°Π·Π΅ LUKS (ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ), mdraid, dm-multipath, iSCSI, Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠΎΠΌΠ°ΠΌΠΈ LVM, Π° ΡΠ°ΠΊΠΆΠ΅ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΠΠΠ, SSD ΠΈ NVMe-Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»ΡΠΌΠΈ. ΠΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π² ΠΏΡΠ»Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° Stratis ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠ½Π°ΠΏΡΠΎΡΠΎΠ² Π΄Π»Ρ ΠΎΡΠΊΠ°ΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»Π΅ΠΉ Π² ΠΏΡΠ» ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»Π΅ΠΉ Π² Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ. Π’Π°ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠ°ΠΊ
RAID, ΡΠΆΠ°ΡΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
, Π΄Π΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ, Π½ΠΎ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Ρ Π½Π° Π±ΡΠ΄ΡΡΠ΅Π΅.
Π Π²ΡΠΏΡΡΠΊΠ΅ 2.2 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² D-Bus Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² (FetchProperties), ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (Manager) ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π±Π»ΠΎΡΠ½ΡΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ (Blockdev). ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎ Π½Π°ΡΡΡΠΏΠ»Π΅Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² (InterfacesAdded ΠΈ InterfacesRemoved) ΡΠ΅ΡΠ΅Π· D-Bus. Π ΡΡΠΈΠ»ΠΈΡΠ΅ stratis-cli ΡΠ»ΡΡΡΠ΅Π½Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π°Π²ΡΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π²ΠΎΠ΄Π° Π΄Π»Ρ bash.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru