OpenZFS 2.1 tso tawm nrog kev txhawb nqa dRAID

Qhov kev tso tawm ntawm OpenZFS 2.1 qhov project tau tshaj tawm, txhim kho kev siv ZFS cov ntaub ntawv kaw lus rau Linux thiab FreeBSD. Txoj haujlwm tau dhau los ua lub npe hu ua "ZFS ntawm Linux" thiab yav dhau los txwv rau kev tsim cov qauv rau Linux kernel, tab sis tom qab hloov kev txhawb nqa, FreeBSD tau lees paub tias yog qhov tseem ceeb ntawm OpenZFS thiab raug tso tawm los ntawm kev hais txog Linux hauv lub npe.

OpenZFS tau raug sim nrog Linux kernels los ntawm 3.10 txog 5.13 thiab tag nrho FreeBSD ceg pib los ntawm 12.2-RELEASE. Cov cai tau muab faib raws li daim ntawv tso cai CDDL pub dawb. OpenZFS twb tau siv hauv FreeBSD thiab suav nrog Debian, Ubuntu, Gentoo, Sabayon Linux thiab ALT Linux faib. Cov pob nrog cov tshiab version yuav sai sai no tau npaj rau loj Linux faib, suav nrog Debian, Ubuntu, Fedora, RHEL / CentOS.

OpenZFS muab ib qho kev siv ntawm ZFS cov khoom muaj feem xyuam rau ob qho tib si cov ntaub ntawv kaw lus thiab tus thawj tswj ntim. Tshwj xeeb, cov khoom siv hauv qab no yog siv: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) thiab ZPL (ZFS POSIX Layer). Tsis tas li ntawd, qhov project muab lub peev xwm los siv ZFS ua tus backend rau Luster pawg ntaub ntawv. Txoj haujlwm ua haujlwm yog ua raws li tus thawj ZFS code, imported los ntawm OpenSolaris project thiab nthuav nrog kev txhim kho thiab kho los ntawm Illumos zej zog. Qhov project yog tsim los nrog kev koom tes ntawm cov neeg ua haujlwm ntawm Livermore National Laboratory raws li kev cog lus nrog US Department of Energy.

Cov cai tau muab faib raws li daim ntawv tso cai CDDL pub dawb, uas tsis sib haum nrog GPLv2, uas tsis tso cai rau kev sib koom ua ke ntawm OpenZFS rau hauv ceg tseem ceeb ntawm Linux ntsiav, txij li kev sib xyaw cov cai raws li GPLv2 thiab CDDL cov ntawv tso cai tsis tuaj yeem lees txais. Txhawm rau tiv thaiv qhov kev tso cai tsis sib haum xeeb no, nws tau txiav txim siab faib tag nrho cov khoom raws li CDDL daim ntawv tso cai raws li cov khoom sib cais, uas tau muab cais los ntawm cov ntsiav. Qhov kev ruaj ntseg ntawm OpenZFS codebase raug ntsuas raws li piv rau lwm yam FS rau Linux.

Cov kev hloov loj:

  • Ntxiv kev txhawb nqa rau dRAID (Distributed Spare RAID) thev naus laus zis, uas yog qhov sib txawv ntawm RAIDZ nrog kev sib koom ua ke thaiv kev ua haujlwm rau cov khoom kub. dRAID tau txais tag nrho cov txiaj ntsig ntawm RAIDZ, tab sis tso cai rau kom muaj kev nce ntxiv hauv kev ceev ntawm kev khaws cia resilvering thiab kho dua ntawm redundancy hauv cov array. Virtual cia dRAID yog tsim los ntawm ntau pawg RAIDZ sab hauv, txhua tus muaj cov khoom siv khaws cia cov ntaub ntawv thiab cov khoom siv rau khaws cia cov parity blocks. Cov pab pawg no tau muab faib thoob plaws txhua qhov tsav kom pom kev siv cov disk bandwidth muaj. Hloov chaw ntawm kev rov qab los ntawm kev sib cais kub, dRAID siv lub tswv yim ntawm kev faib tawm ntawm qhov kub rov qab thaiv thoob plaws txhua qhov tsav hauv cov array.
    OpenZFS 2.1 tso tawm nrog kev txhawb nqa dRAID
  • Ua raws li "kev sib raug zoo" cov cuab yeej ("zpool tsim -o compatibility = off| legacy|file[,file...] pool vdev"), tso cai rau tus thawj coj xaiv cov txheej txheem uas yuav tsum tau ua hauv pas dej ua ke, nyob rau hauv kev txiav txim. los tsim cov pas dej portable thiab tswj kev sib raug zoo ntawm cov pas dej sib txawv ntawm OpenZFS thiab cov platform sib txawv.
  • Nws muaj peev xwm txuag tau txheeb cais hais txog kev ua haujlwm ntawm lub pas dej ua ke hauv InfluxDB DBMS hom, uas yog qhov zoo rau khaws cia, txheeb xyuas thiab tswj cov ntaub ntawv nyob rau hauv daim ntawv ntawm lub sij hawm series (slices ntawm parameter qhov tseem ceeb ntawm lub sij hawm teev). Txhawm rau xa tawm mus rau InfluxDB hom, "zpool influxdb" hais kom ua.
  • Ntxiv kev txhawb nqa rau kub ntxiv nco thiab CPU.
  • Cov lus txib tshiab thiab cov kev xaiv:
    • "zpool tsim -u" - lov tes taw tsis siv neeg mounting.
    • "zpool keeb kwm -i"-xav txog keeb kwm ntawm kev ua haujlwm lub sijhawm ntawm kev ua tiav ntawm txhua qhov lus txib.
    • "zpool xwm txheej" - ntxiv cov lus ceeb toom txog cov disks uas tsis yog qhov zoo tshaj plaws block loj.
    • "zfs xa -skip-missing|-s" - ignores ploj snapshots thaum xa kwj rau replication.
    • "zfs rename -u" - renames cov ntaub ntawv kaw lus tsis muaj remounting.
    • Arcstat ntxiv kev txhawb nqa rau L2ARC cov txheeb cais thiab ntxiv qhov "-a" (tag nrho) thiab "-p" (parsable) xaiv.
  • Optimizations:
    • Txhim kho kev sib tham sib I / O kev ua tau zoo.
    • Prefetch tau nrawm rau cov haujlwm ua haujlwm ntsig txog kev nkag mus rau cov ntaub ntawv sib luag.
    • Txhim kho scalability los ntawm kev txo qis kev sib cav sib ceg.
    • Lub sij hawm ntshuam pas dej tau raug txo.
    • Txo fragmentation ntawm ZIL blocks.
    • Txhim kho kev ua haujlwm ntawm kev ua haujlwm recursive.
    • Txhim kho kev tswj hwm nco.
    • Kev thauj khoom ntawm cov ntsiav module tau nrawm dua.

Tau qhov twg los: opennet.ru

Ntxiv ib saib