ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΡΠ΅Π»ΠΈΠ· ΠΏΡΠΎΠ΅ΠΊΡΠ° OpenZFS 2.1, ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ZFS Π΄Π»Ρ Linux ΠΈ FreeBSD. ΠΡΠΎΠ΅ΠΊΡ ΠΏΠΎΠ»ΡΡΠΈΠ» ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΡΡΡ ΠΊΠ°ΠΊ Β«ZFS on LinuxΒ» ΠΈ ΡΠ°Π½Π΅Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π»ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Π΄Π»Ρ ΡΠ΄ΡΠ° Linux, Π½ΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ FreeBSD Π±ΡΠ» ΠΏΡΠΈΠ·Π½Π°Π½ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ OpenZFS ΠΈ Π±ΡΠ» ΠΈΠ·Π±Π°Π²Π»Π΅Π½ ΠΎΡ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ Linux Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ.
OpenZFS yayesedwa ndi ma kernels a Linux kuyambira 3.10 mpaka 5.13 ndi nthambi zonse za FreeBSD kuyambira 12.2-RELEASE. Khodiyo imagawidwa pansi pa layisensi ya CDDL yaulere. OpenZFS imagwiritsidwa ntchito kale mu FreeBSD ndipo ikuphatikizidwa mu magawo a Debian, Ubuntu, Gentoo, Sabayon Linux ndi ALT Linux. Maphukusi okhala ndi mtundu watsopanowu akonzekera posachedwa kugawa kwakukulu kwa Linux, kuphatikiza Debian, Ubuntu, Fedora, RHEL/CentOS.
OpenZFS imapereka kukhazikitsidwa kwa zigawo za ZFS zokhudzana ndi mafayilo amafayilo komanso woyang'anira voliyumu. Makamaka, zigawo zotsatirazi zikugwiritsidwa ntchito: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) ndi ZPL (ZFS POSIX Layer). Kuphatikiza apo, polojekitiyi imapereka mwayi wogwiritsa ntchito ZFS ngati kumbuyo kwa fayilo ya Luster cluster. Ntchito ya pulojekitiyi idakhazikitsidwa ndi code yoyambirira ya ZFS, yotumizidwa kuchokera ku projekiti ya OpenSolaris ndikukulitsidwa ndi kukonza ndi kukonza kuchokera kugulu la Illumos. Ntchitoyi ikupangidwa ndi ogwira ntchito ku Livermore National Laboratory pansi pa mgwirizano ndi Dipatimenti ya Zamagetsi ku US.
Khodiyo imagawidwa pansi pa chilolezo cha CDDL chaulere, chomwe sichigwirizana ndi GPLv2, chomwe sichilola kuphatikizidwa kwa OpenZFS munthambi yayikulu ya Linux kernel, popeza kusakaniza kachidindo pansi pa GPLv2 ndi CDDL layisensi sikuvomerezeka. Kuti tipewe kusagwirizana kwa chilolezochi, zidaganiza zogawira katundu yense pansi pa layisensi ya CDDL ngati gawo lotsitsa padera, lomwe limaperekedwa mosiyana ndi kernel. Kukhazikika kwa codebase ya OpenZFS kumayesedwa ngati kufanana ndi FS ina ya Linux.
Zosintha zazikulu:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ dRAID (Distributed Spare RAID), ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ RAIDZ Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π±Π»ΠΎΠΊΠΎΠ² Π΄Π»Ρ Π³ΠΎΡΡΡΠ΅Π³ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ (hot spare). dRAID ΡΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π» Π²ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° RAIDZ, Π½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» Π΄ΠΎΠ±ΠΈΡΡΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° (resilvering) ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΠΈ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. ΠΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ dRAID ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ
Π³ΡΡΠΏΠΏ RAIDZ, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π΄Π»Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π΄Π»Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΎΠ² ΡΡΡΠ½ΠΎΡΡΠΈ. Π£ΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π³ΡΡΠΏΠΏΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΏΠΎ Π²ΡΠ΅ΠΌ Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»ΡΠΌ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠΎΠ². ΠΠΌΠ΅ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° Π΄Π»Ρ Π³ΠΎΡΡΡΠ΅Π³ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π² dRAID ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΎΠ² Π΄Π»Ρ Π³ΠΎΡΡΡΠ΅Π³ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ Π΄ΠΈΡΠΊΠ°ΠΌ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Β«compatibilityΒ» (Β«zpool create -o compatibility=off|legacy|file[,fileβ¦] pool vdevΒ»), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ Π²ΡΠ±ΡΠ°ΡΡ Π½Π°Π±ΠΎΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΏΡΠ»Π΅, Ρ ΡΠ΅Π»ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΡ ΠΏΡΠ»ΠΎΠ² ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠ»ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ OpenZFS ΠΈ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΠΌΠΈ.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΎ ΡΠ°Π±ΠΎΡΠ΅ ΠΏΡΠ»Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ Π‘Π£ΠΠ InfluxDB, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ, Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠΎΡΠΌΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° (ΡΡΠ΅Π·Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΠ΅ΡΠ΅Π· Π·Π°Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ). ΠΠ»Ρ ΡΠΊΡΠΏΠΎΡΡΠ° Π² ΡΠΎΡΠΌΠ°Ρ InfluxDB ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Β«zpool influxdbΒ».
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π³ΠΎΡΡΡΠ΅Π³ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ CPU.
- ΠΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΠΎΠΏΡΠΈΠΈ:
- Β«zpool create -uΒ» β Π·Π°ΠΏΡΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- Β«zpool history -iΒ» β ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΈΡΡΠΎΡΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
- Β«zpool statusΒ» β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π²ΡΠ²ΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΎ Π΄ΠΈΡΠΊΠ°Ρ Ρ Π½Π΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π±Π»ΠΎΠΊΠ°.
- Β«zfs send βskip-missing|-sΒ» β ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΡΡΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ½Π°ΠΏΡΠΎΡΠΎΠ² Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΏΠΎΡΠΎΠΊΠ° Π΄Π»Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ.
- Β«zfs rename -uΒ» β ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π€Π‘ Π±Π΅Π· ΠΏΠ΅ΡΠ΅ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- Π arcstat Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ L2ARC ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΎΠΏΡΠΈΠΈ Β«-aΒ» (all) ΠΈ Β«-pΒ» (parsable).
- Zowonjezera:
- ΠΠΎΠ²ΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°.
- Π£ΡΠΊΠΎΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° prefetch Π΄Π»Ρ Π½Π°Π³ΡΡΠ·ΠΎΠΊ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌ Π΄ΠΎΡΡΡΠΏΠΎΠΌ ΠΊ Π΄Π°Π½Π½ΡΠΌ.
- Π£Π»ΡΡΡΠ΅Π½Π° ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ Π·Π° ΡΡΡΡ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ.
- Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΏΡΠ»Π°.
- Π‘ΠΎΠΊΡΠ°ΡΠ΅Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ZIL-Π±Π»ΠΎΠΊΠΎΠ².
- ΠΠΎΠ²ΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ.
- Π£Π»ΡΡΡΠ΅Π½ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΡΡ.
- Π£ΡΠΊΠΎΡΠ΅Π½Π° Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΄ΡΠ°.
Source: opennet.ru