Pagrindinis » kaip » Įvadas į „Z“ failų sistemą (ZFS) „Linux“

    Įvadas į „Z“ failų sistemą (ZFS) „Linux“

    ZFS dažniausiai naudoja duomenų valdytojai, NAS mėgėjai ir kiti geeksai, kurie nori pasitikėti savo nereikalinga saugojimo sistema, o ne debesiu. Tai puiki failų sistema, naudojama valdyti kelis duomenų diskus ir konkuruojančius kai kuriuos didžiausius RAID nustatymus.

    Kenny Louie nuotrauka.

    Kas yra ZFS ir kodėl turėčiau jį naudoti?

    „Z“ failų sistema yra laisvas ir atviro kodo loginis apimties valdytojas, kurį „Sun Microsystems“ sukūrė naudoti „Solaris“ operacinėje sistemoje. Kai kurios jo patraukliausios funkcijos:

    Galutinis mastelio keitimas

    Na, tai ne techniškai begalinis, bet tai 128 bitų failų sistema, galinti valdyti zettabytes (vieną milijardą terabaitų) duomenų. Nesvarbu, kiek vietos standžiajame diske yra, ZFS bus tinkama ją valdyti.

    Maksimalus vientisumas

    Viskas, ką darote ZFS viduje, naudoja kontrolinę sumą, kad užtikrintų failo vientisumą. Jūs galite būti tikri, kad jūsų failai ir jų nereikalingos kopijos nesusidarys su tyliais duomenimis. Be to, nors ZFS yra užimtas tyliai tikrindamas jūsų duomenis, kad būtų užtikrintas vientisumas, jis atliks automatinį remontą bet kuriuo metu.

    Disko kaupimas

    ZFS kūrėjai nori, kad jūs manytumėte, jog jis yra panašus į būdą, kuriuo kompiuteris naudoja RAM. Kai jūsų kompiuteryje reikia daugiau atminties, įdėjote kitą laikiklį ir baigsite. Panašiai kaip ir ZFS, kai reikia daugiau vietos standžiajame diske, įdėjote kitą kietąjį diską ir baigsite. Nereikia praleisti laiko skaidymui, formatavimui, inicijavimui ar kitam savo diskų kūrimui - kai reikia didesnio saugojimo „baseino“, tiesiog pridėkite diskų.

    REIDAS

    „ZFS“ gali naudoti daug skirtingų RAID lygių, tuo pačiu užtikrindamas našumą, panašų į aparatūros RAID valdiklius. Tai leidžia taupyti pinigus, palengvinti sąranką ir turėti geresnius RAID lygius, kuriuos pagerino ZFS.

    ZFS diegimas

    Kadangi aptariame tik pagrindinius šio vadovo elementus, mes nenorime įdiegti ZFS kaip root failų sistemos. Šiame skyriuje daroma prielaida, kad naudojate ext4 ar kitą failų sistemą ir norėtumėte naudoti ZFS kai kuriems antriniams kietiesiems diskams. Čia pateikiamos ZFS diegimo kai kuriose populiariausiose Linux platinimo komandose komandos.

    „Solaris“ ir „FreeBSD“ jau turėtų būti įdiegtos ZFS ir paruoštos naudoti.

    Ubuntu:

    $ sudo add-apt-saugykla ppa: zfs-native / stabili
    $ sudo apt-get atnaujinimas
    $ sudo apt-get install ubuntu-zfs

    Debian:

    $ su -
    # wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_2%7Ewheezy_all.deb
    # dpkg -i zfsonlinux_2 ~ wheezy_all.deb
    # apt-get update
    # apt-get įdiegti debian-zfs

    RHEL / CentOS:

    $ sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release-1-3.el6.noarch.rpm
    $ sudo yum įdiegti zfs

    Jei turite kitokį platinimą, patikrinkite zfsonlinux.org ir spustelėkite savo platinimą „Paketai“ sąraše, kad gautumėte instrukcijas, kaip įdiegti ZFS.

    Tęsdami šį vadovą, ketiname naudoti „Ubuntu“, nes tai atrodo „# 1“ „Linux“ geeks. Jūs vis tiek turėtumėte turėti galimybę sekti, kad ir kokia būtų, nes ZFS komandos nesikeis skirtingose ​​dalyse.

    Diegimas trunka gana ilgai, bet kai jis baigtas, paleiskite $ sudo zfs sąrašas įsitikinkite, kad jis tinkamai įdiegtas. Turėtumėte gauti tokį rezultatą:

    Šiuo metu mes naudojame naują „Ubuntu“ serverio diegimą, kuriame yra tik vienas kietasis diskas.

    ZFS konfigūravimas

    Sakykime, į mūsų kompiuterį įdėti dar šeši diskai.

    $ sudo fdisk -l grep Klaida parodys mums šešis kietuosius diskus, kuriuos ką tik įdiegėme. Jie šiuo metu yra netinkami naudoti, nes juose nėra jokių skaidinių.

    Kaip jau minėjome, vienas iš gražiausių ZFS dalykų yra tai, kad mums nereikia nerimauti su pertvaromis (nors jūs galite, jei norite). Pradėkime imdami tris kietuosius diskus ir įdėdami juos į saugyklą, atlikdami šią komandą:

    $ sudo zpool sukurti -f geek1 / dev / sdb / dev / sdc / dev / sdd

    zpool sukuria yra komanda, naudojama sukurti naują saugyklą, -f nepaiso bet kokių įvykusių klaidų (pvz., jei diske (-uose) jau yra informacijos apie juos), geek1 yra saugyklos talpyklos pavadinimas ir / dev / sdb / dev / sdc / dev / sdd yra kietieji diskai, kuriuos įdėjome į baseiną.

    Sukūrę savo baseiną, turėtumėte matyti jį su „ df komandą arba sudo zfs sąrašas:

    Kaip matote, / geek1 jau yra sumontuotas ir paruoštas naudoti.

    Jei norite pamatyti, kuriuos tris diskus pasirinkote savo baseinui, galite paleisti sudo zpool statusas:

    Tai, ką darėme iki šiol, yra sukurti 9 TB dinaminį juostą (efektyviai, RAID 0). Jei nesate susipažinę su tuo, kas tai reiškia, įsivaizduokite, kad sukūrėme 3 KB failą / geek1. 1 KB automatiškai pereis prie sdb, 1 KB į sdc ir 1 KB į sdd. Tada, kai eisime perskaityti 3 KB failą, kiekvienas kietasis diskas mums pateiktų 1 KB, derindamas trijų diskų greitį. Tai leidžia rašyti ir skaityti duomenis greitai, bet taip pat reiškia, kad turime vieną nesėkmės tašką. Jei tik vienas standusis diskas nepavyksta, prarasime 3 KB failą.

    Darant prielaidą, kad jūsų duomenų apsauga yra svarbesnė už prieigą prie jos greitai, pažvelkime į kitas populiarias sąrankas. Pirma, ištrinsime sukurtą „zpool“, kad galėtume naudoti šiuos diskus nereikalingesnėje sąrankos sistemoje:

    $ sudo zpool sunaikina geek1

    Bam, mūsų „zpool“ dingo. Šį kartą naudokime tris diskus, kad sukurtume RAID-Z baseiną. RAID-Z iš esmės yra patobulinta RAID 5 versija, nes ji leidžia „rašyti skylę“, naudojant „copy-on-write“. RAID-Z reikalauja mažiausiai trijų standžiųjų diskų, o tai yra kompromisas tarp RAID 0 ir RAID 1. RAID-Z baseine vis dar bus blokuojamo lygio juostos sparta, bet taip pat turės paskirstytą paritetą. Jei viename diske jūsų kompiuteryje miršta, tiesiog pakeiskite tą diską ir ZFS automatiškai atstatys duomenis, pagrįstus pariteto informacija iš kitų diskų. Norint prarasti visą informaciją savo saugykloje, du diskai turėtų mirti. Norint dar labiau nereikalauti, galite naudoti RAID 6 (RAID-Z2 ZFS atveju) ir turėti dvigubą paritetą.

    Norėdami tai padaryti, mes galime naudoti tą patį zpool sukuria kaip anksčiau, bet nurodykite raidz po baseino pavadinimo:

    $ sudo zpool sukurti -f geek1 raidz / dev / sdb / dev / sdc / dev / sdd

    Kaip matai, df -h rodo, kad 9 tuberkuliozės baseinas dabar buvo sumažintas iki 6 tuberkuliozės, nes 3 tuberkuliozė naudojama paritetinės informacijos laikymui. Su zpool statusas mes matome, kad mūsų baseinas dažniausiai yra toks pat, kaip ir anksčiau, bet dabar naudoja RAID-Z.

    Jei norite parodyti, kaip lengva pridėti daugiau diskų į mūsų saugyklą, pridėkime kitus tris diskus (dar 9 TB) į mūsų geek1 saugyklą kaip kitą RAID-Z konfigūraciją:

    $ sudo zpool pridėti -f geek1 raidz / dev / sde / dev / sdf / dev / sdg

    Mes baigiame:

    Saga tęsiasi ...

    Mes vos nulaužėme ZFS paviršių ir jo galimybes, tačiau, naudodami tai, ką išmoko šiame straipsnyje, dabar turėtumėte sugebėti sukurti nereikalingus duomenų saugojimo telkinius. Grįžkite su mumis dėl ateities straipsnių apie ZFS, žr. Žmogaus puslapius ir ieškokite begalinių nišų vadovų ir „YouTube“ vaizdo įrašų, apimančių ZFS funkcijas.