Uvod u Z datotečni sustav (ZFS) za Linux
ZFS se obično koristi kod podataka, NAS ljubitelja i ostalih geekova koji preferiraju staviti svoje povjerenje u redundantni sustav za pohranu vlastitih, a ne u oblak. To je odličan datotečni sustav koji se koristi za upravljanje višestrukim diskovima podataka i konkurentima nekim od najvećih RAID postavki.
Fotografija: Kenny Louie.
Što je ZFS i zašto bih ga koristio?
Z datotečni sustav je besplatan i otvoren logički upravitelj volumena kojeg izrađuje Sun Microsystems za korištenje u operativnom sustavu Solaris. Neke od najatraktivnijih značajki uključuju:
Beskrajna skalabilnost
Pa, nije tehnički beskrajan, ali to je 128-bitni sustav datoteka koji može upravljati zettabajtima (milijardu terabajta) podataka. Bez obzira na to koliko prostora na tvrdom disku imate, ZFS će biti prikladan za upravljanje njime.
Maksimalni integritet
Sve što radite unutar ZFS-a koristi kontrolni zbroj kako bi se osigurao integritet datoteke. Možete biti sigurni da vaše datoteke i njihove suvišne kopije neće naići na tihu korupciju podataka. Isto tako, dok je ZFS zaokupljen tihim provjerom vaših podataka za integritet, to će učiniti automatske popravke u bilo kojem trenutku.
Udruživanje pogona
Kreatori ZFS-a žele da o njemu mislite da je sličan načinu na koji vaše računalo koristi RAM. Kada trebate više memorije u računalu, stavite drugi štap i gotovi ste. Slično kao i kod ZFS-a, kada trebate više prostora na tvrdom disku, stavite drugi tvrdi disk i gotovi ste. Nema potrebe za trošenjem vremena na particije, formatiranje, inicijaliziranje ili rad na bilo što drugo na svojim diskovima - kada trebate veće spremište za pohranu, samo dodajte diskove.
RAID
ZFS je sposoban za mnogo različitih RAID razina, a sve to pruža performanse koje su usporedive s onima u hardverskim RAID kontrolerima. To vam omogućuje da uštedite novac, olakšate postavljanje i imate pristup nadređenim RAID razinama koje je ZFS poboljšao.
Instaliranje ZFS-a
Budući da pokrivamo samo osnove u ovom vodiču, nećemo instalirati ZFS kao root datotečni sustav. Ovaj odjeljak pretpostavlja da koristite ext4 ili neki drugi datotečni sustav i želite koristiti ZFS za neke sekundarne tvrde diskove. Evo naredbi za instaliranje ZFS-a na neke od najpopularnijih Linux distribucija.
Solaris i FreeBSD bi već trebali imati instaliran ZFS i spreman za upotrebu.
Ubuntu:
$ sudo add-apt-repozitorij ppa: zfs-native / stable
$ sudo apt-get update
$ sudo apt-get instalacija 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 install debian-zfs
RHEL / CentOS:
$ sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release-1-3.el6.noarch.rpm
$ sudo yum install zfs
Ako imate neku drugu distribuciju, pogledajte zfsonlinux.org i kliknite na vašu distribuciju na popisu "Paketi" za upute kako instalirati ZFS.
Kako nastavljamo s ovim vodičem, koristit ćemo Ubuntu jer se čini da je to prvi izbor za Linux geekove. Trebali biste i dalje pratiti bez obzira na sve, jer se ZFS naredbe neće mijenjati u različitim distribucijama.
Instalacija traje dosta dugo, ali kada je gotova, pokrenite $ sudo zfs popis
kako biste provjerili je li ispravno instaliran. Trebali biste dobiti izlaz kao što je ovaj:
Trenutno koristimo novu instalaciju Ubuntu poslužitelja, sa samo jednim tvrdim diskom.
Konfiguriranje ZFS-a
Sada, recimo da stavimo još šest tvrdih diskova u naše računalo.
$ sudo fdisk -l | grep Greška
će nam pokazati šest tvrdih diskova koje smo upravo instalirali. Trenutno su neupotrebljive jer ne sadrže nikakvu tablicu particija.
Kao što smo već spomenuli, jedna od lijepih stvari oko ZFS-a je da ne moramo gnjaviti particije (iako to možete ako želite). Počnimo s trima tvrdim diskom i stavljajući ih u spremište memorije izvo enjem sljedeće naredbe:
$ sudo zpool stvoriti -f geek1 / dev / sdb / dev / sdc / dev / sdd
zpool create
je naredba koja se koristi za stvaranje novog spremišta memorije, -f
poništava sve pogreške koje se pojavljuju (na primjer, ako diskovi već imaju informacije o njima), geek1
je naziv spremišta za pohranu i / dev / sdb / dev / sdc / dev / sdd
su tvrdi diskovi koje stavimo u bazen.
Nakon što stvorite bazen, trebali biste ga moći vidjeti pomoću df
naredbu ili sudo zfs popis
:
Kao što možete vidjeti, / geek1 je već montiran i spreman je za korištenje.
Ako želite vidjeti koja ste tri diska odabrali za svoj bazen, možete pokrenuti status sudo zpool
:
Dosad smo napravili dinamički bazen od 9 TB (učinkovito, RAID 0). U slučaju da niste upoznati s tim što to znači, zamislite da smo kreirali 3 KB datoteku na / geek1. 1 KB automatski prelazi na sdb, 1 KB na sdc i 1 KB na sdd. Onda kada idemo čitati 3 KB datoteku, svaki tvrdi disk predstavit će nam 1 KB, kombinirajući brzinu tri pogona. To čini pisanje i čitanje podataka brzim, ali također znači da imamo jednu točku neuspjeha. Ako samo jedan tvrdi disk ne uspije, izgubit ćemo naše 3 KB datoteke.
Pod pretpostavkom da je zaštita vaših podataka važnija od brzog pristupa, pogledajmo druge popularne postavke. Najprije ćemo izbrisati zpool koji smo izradili kako bismo te diskove mogli koristiti u redundantnom postavljanju:
$ sudo zpool uništi geek1
Bam, naš zpool je nestao. Ovaj put upotrijebimo naša tri diska za stvaranje RAID-Z spremišta. RAID-Z je u osnovi poboljšana verzija RAID 5, jer izbjegava "rupu za pisanje" pomoću kopiranja na pisanje. RAID-Z zahtijeva najmanje tri tvrda diska, a to je vrsta kompromisa između RAID 0 i RAID 1. U RAID-Z spremištu i dalje ćete dobiti brzinu stripinga na razini bloka, ali će također imati distribuiranu paritet. Ako jedan disk u vašem bazenu umre, jednostavno zamijenite taj disk i ZFS će automatski ponovno izgraditi podatke na temelju podataka o paritetu s drugih diskova. Da biste izgubili sve informacije u spremištu memorije, dva diska će morati umrijeti. Da bi stvari bile još više suvišne, možete koristiti RAID 6 (RAID-Z2 u slučaju ZFS-a) i imati dvostruki paritet.
Da bismo to postigli, možemo koristiti isto zpool create
naredbu kao i prije, ali navedite raidz
nakon naziva grupe:
$ sudo zpool stvoriti -f geek1 raidz / dev / sdb / dev / sdc / dev / sdd
Kao što vidiš, df -h
pokazuje da je naša baza od 9 TB sada smanjena na 6 TB, budući da se za čuvanje podataka o paritetu koristi 3 TB. Sa zpool status
naredba, vidimo da je naš bazen uglavnom isti kao i prije, ali sada koristi RAID-Z.
Da bismo pokazali kako je jednostavno dodati više diskova u naš spremište za pohranu, dodajmo ostala tri diska (još 9 TB) našem geek1 spremištu kao drugu RAID-Z konfiguraciju:
$ sudo zpool dodaj -f geek1 raidz / dev / sde / dev / sdf / dev / sdg
Završili smo s:
Saga se nastavlja ...
Jedva da smo izgrebali površinu ZFS-a i njegovih mogućnosti, ali koristeći ono što ste naučili u ovom članku trebali biste sada moći stvoriti suvišne spremišta podataka. Provjerite s nama za buduće članke o ZFS-u, pogledajte man stranice i potražite beskrajne vodiče i Youtube videozapise koji pokrivaju ZFS funkcije.