ΠΠ°ΡΡ ΠΡΠ΅Π½Ρ (
ZFS Π²Π΅ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ΡΠΌΠΈΠ½Π° "Π·Π°Π²ΠΈΡΠΈΠΌ" Π²ΠΌΠ΅ΡΡΠΎ "ΠΏΠΎΠ΄ΡΠΈΠ½Π΅Π½". Π‘ΡΠ΅Π΄ Π²ΠΈΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈΠΌ ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΊΡΠΈΠΏΡΠ° zpool.d/slaves, ΠΊΠΎΠΉΡΠΎ ΡΠ΅Π³Π° ΡΠ΅ Π½Π°ΡΠΈΡΠ° βdm-depsβ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ βdmsetup depsβ. ΠΠΌΠ΅ΡΡΠΎ ΠΈΠ·ΡΠ°Π·Π° βΠΏΠΎΠ΄ΡΠΈΠ½Π΅Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°β Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ·ΡΠ°Π·ΡΡ βΠ·Π°Π²ΠΈΡΠΈΠΌΠΈ (ΠΎΡΠ½ΠΎΠ²Π½ΠΈ) ΡΡΡΡΠΎΠΉΡΡΠ²Π°β. Π Π·Π°Π³Π»Π°Π²Π½ΠΈΡ ΡΠ°ΠΉΠ» "freebsd/spl/sys/dkio.h", ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΡΡ dki_slave Π±Π΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°Ρ ΠΎΡ ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° dk_cinfo, Π±Π΅Π· Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π·Π°ΠΌΠ΅ΡΡΠΈΡΠ΅Π». ΠΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βzpool iostat -vc slavesβ ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° βzpool iostat -vc sizeβ.
ΠΡΡΠ·ΠΊΠΈΡΠ΅ ΠΊΡΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° "/sys/class/block/$dev/slaves" ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π°Ρ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡΡΠ° Π½Π° sysfs ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ ΠΎΡ ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ΠΎ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° OpenZFS. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΡΡΠ°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "dmsetup deps", Π½ΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° dmsetup ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΏΠΎΠ²ΠΈΡΠ΅Π½ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, Π΄ΠΎΠΊΠ°ΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° Π² /sys/ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠ΅ΡΠ΅ ΠΎΡ Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π».
ΠΠ°ΠΏΠΎΠΌΠ½ΡΠΌΠ΅, ΡΠ΅ ΠΏΡΠ΅Π΄ΠΈ ΡΠ΅Π΄ΠΌΠΈΡΠ° ΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠ΅ Π±ΡΠ» ΡΠΏΠΈΡΡΠΊ/ΡΠ΅ΡΠ΅Π½ ΡΠΏΠΈΡΡΠΊ ΠΈ Π³Π»Π°Π²Π΅Π½/ΠΏΠΎΠ΄ΡΠΈΠ½Π΅Π½
ΠΠΎΠΌΠΈΡΠ΅ΡΡΡ IETF (Internet Engineering Task Force), ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ ΠΈ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°,
"Π°ΠΊΡΠΈΠ²Π΅Π½/Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡ"
"ΠΎΡΠ½ΠΎΠ²Π΅Π½/ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°",
"ΠΏΠΈΡΠ°ΡΠ΅Π»/ΡΠ΅ΡΠ΅Ρ",
"ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΡ/ΡΠ°Π±ΠΎΡΠ½ΠΈΠΊ" ΠΈΠ»ΠΈ
βΡΠΎΠ΄ΠΈΡΠ΅Π»/ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊβ, Π° Π²ΠΌΠ΅ΡΡΠΎ βΡΠ΅ΡΠ΅Π½ ΡΠΏΠΈΡΡΠΊ/Π±ΡΠ» ΡΠΏΠΈΡΡΠΊβ - βΡΠΏΠΈΡΡΠΊ Ρ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΈ/ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈβ ΠΈΠ»ΠΈ βΠ±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅/ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅β.
Π’ΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ Π² GitHub Π±ΡΠΎΡΡ Π½Π° ΠΏΡΠΎΡΠΈΠ²Π½ΠΈΡΠΈΡΠ΅ Π»Π΅ΠΊΠΎ Π½Π°Π΄Π²ΠΈΡΠ°Π²Π° ΡΠ΅Π·ΠΈ Π² ΠΏΠΎΠ»Π·Π° Π½Π° ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅ΡΠΎ: 42 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ ΠΎΠ΄ΠΎΠ±ΡΠΈΡ Π° ΠΏΡΠΎΠΌΡΠ½Π°ΡΠ°, Π° 48 ΡΠ΅ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΡΡΠ°Π²ΠΈΡ Π°. ΠΠΎΠ΄Π΄ΡΡΠΆΠ½ΠΈΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΡΠΌΠ°ΡΠ° βΡΠΎΠ±β ΡΠΌΡΡΠ°Ρ, ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅ΡΠΌΠΈΠ½Π° Π΅ Π½Π΅ΠΏΡΠΈΠ΅ΠΌΠ»ΠΈΠ²ΠΎ, Π·Π°ΡΠΎΡΠΎ ΠΊΠ°ΡΠ° Π½ΡΠΊΠΎΠΈ Ρ ΠΎΡΠ° Π΄Π° ΡΠ΅ ΡΡΠ²ΡΡΠ²Π°Ρ Π² Π½Π΅ΡΠ°Π²Π½ΠΎΡΡΠΎΠΉΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΡΡΡΠ° ΡΠΏΠΎΠΌΠ΅Π½ΠΈ Π·Π° Π΄ΠΈΡΠΊΡΠΈΠΌΠΈΠ½Π°ΡΠΈΡ Π² ΠΌΠΈΠ½Π°Π»ΠΎΡΠΎ. Π ΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΡΠΎ ΡΠ°Π·ΠΈ Π΄ΡΠΌΠ° Π·Π°ΠΏΠΎΡΠ½Π° Π΄Π° ΡΠ΅ ΡΠΌΡΡΠ° Π·Π° ΠΎΠ±ΠΈΠ΄Π½Π° ΠΈ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ²Π° ΠΎΡΡΠΆΠ΄Π°Π½Π΅.
ΠΡΠΎΡΠΈΠ²Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅ΡΠΎ ΡΠΌΡΡΠ°Ρ, ΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°ΡΠ° ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ Π±ΡΡΠΊΠ°Ρ, ΡΠΎΠ²Π° ΡΠ° ΠΏΡΠΎΡΡΠΎ ΡΠ΅ΡΠΌΠΈΠ½ΠΈ, ΡΠΈΠ΅ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΅ Π²Π΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π΅Π½ΠΎ Π² ΠΊΠΎΠΌΠΏΡΡΡΡΠ½ΠΈΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π° Π½Π΅Π³Π°ΡΠΈΠ²Π½Π°ΡΠ° ΠΊΠΎΠ½ΠΎΡΠ°ΡΠΈΡ Π΅ Π½Π°Π»ΠΎΠΆΠ΅Π½Π° ΠΎΡ ΠΈΠ·ΠΊΡΡΡΠ²Π΅Π½ΠΈ ΠΈΠ΄Π΅ΠΈ Π·Π° ΠΏΠΎΠ»ΠΈΡΠΈΡΠ΅ΡΠΊΠ° ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΎΡΡ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠ΅ΡΠ°Ρ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΡΡ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΈ. ΠΡΠΌΠ°ΡΠ° βΡΠΎΠ±β Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠ°Π½Π½Π° ΠΈ Π½ΠΎΡΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°. ΠΠ΅Π· ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Π΄ΡΠΌΠΈΡΠ΅ Π½ΡΠΌΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π΅Π΄Π½Π° Π΄ΡΠΌΠ° Π΅ ΠΎΠ±ΠΈΠ΄Π½Π° ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΡΡ Π΅ ΠΎΠ±ΠΈΠ΄Π΅Π½. Π’Π΅ΡΠΌΠΈΠ½ΡΡ "ΡΠΎΠ±" ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² ΠΊΠΎΠΌΠΏΡΡΡΡΠ½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΎΡ ΠΎΠΊΠΎΠ»ΠΎ 50 Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈ Π² ΠΠ’ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΠ΅ Π²ΡΠ·ΠΏΡΠΈΠ΅ΠΌΠ° ΠΊΠ°ΡΠΎ "ΡΠΎΠ±", Π° Π½Π΅ ΠΊΠ°ΡΠΎ "ΡΠΎΠ±". ΠΠΊΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΡΡ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΊΡΠΈΠ²Π΅Π½, ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΠΈΠ³Π½Π΅ΡΠ΅ Π΄ΠΎ ΡΠΎΡΠΊΠ°ΡΠ°, Π² ΠΊΠΎΡΡΠΎ Π²ΡΡΠΊΠ° Π΄ΡΠΌΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·Π²Π°Π΄Π΅Π½Π° ΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° Π² ΠΈΠ·ΠΊΡΠΈΠ²Π΅Π½ ΡΠΌΠΈΡΡΠ» ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° ΠΊΠ°ΡΠΎ ΠΎΠ±ΠΈΠ΄Π½Π°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru