Bevezetés a Z fájlrendszerhez (ZFS) a Linux számára
A ZFS-t általában az adatgyűjtők, a NAS szerelmesei és más geek-k használják, akik inkább a saját, nem pedig a felhő redundáns tárolási rendszerébe vetették bizalmukat. Ez egy nagyszerű fájlrendszer, amellyel több adattárcsát és riválisokat kezelhet a legnagyobb RAID-beállítások közül.
Kenny Louie fotója.
Mi az a ZFS és miért kell használni?
A Z fájlrendszer egy ingyenes és nyílt forráskódú logikai kötetkezelő, amelyet a Sun Microsystems épített Solaris operációs rendszerben való használatra. A legvonzóbb funkciói közül néhány:
Végtelen skálázhatóság
Nos, ez nem technikailag végtelen, de ez egy 128 bites fájlrendszer, amely képes a zettabyte-ok (egy milliárd terabájt) kezelésére. Függetlenül attól, hogy mennyi merevlemez-hely van, a ZFS alkalmas lesz arra, hogy kezelje.
Maximális integritás
Minden, amit a ZFS-ben teszel, ellenőrző összeget használ a fájl integritásának biztosítása érdekében. Biztos lehet benne, hogy a fájlok és azok redundáns példányai nem lesznek csendes adatok korrupcióval. Továbbá, miközben a ZFS csendesen ellenőrzi az adatok integritását, az automatikus javításokat bármikor elvégezheti.
Meghajtókészülék
A ZFS készítői azt szeretnék, ha úgy gondolja, hogy hasonló a számítógép RAM-jának használatához. Ha több memóriára van szüksége a számítógépen, egy másik botot helyez el, és kész. Hasonlóan a ZFS-hez, amikor több merevlemez-területre van szükséged, egy másik merevlemez-meghajtót helyezsz el, és kész. Nincs szükség arra, hogy időtöltést, formázást, inicializálást vagy bármi mást tegyen a lemezeire - ha nagyobb tárterületre van szükség, csak adjon hozzá lemezeket.
RAJTAÜTÉS
A ZFS számos különböző RAID-szintre képes, miközben a hardveres RAID-vezérlőkhöz hasonló teljesítményt nyújt. Ez lehetővé teszi, hogy pénzt takarítson meg, megkönnyítse a beállításokat, és hozzáférhessen a magasabb szintű RAID-szintekhez, amelyeket a ZFS javított.
A ZFS telepítése
Mivel csak az útmutató alapjait fedjük le, a ZFS-t nem fogjuk root fájlrendszerként telepíteni. Ez a rész feltételezi, hogy ext4 vagy más fájlrendszert használ, és néhány másodlagos merevlemezre szeretné használni a ZFS-t. Íme a parancsok a ZFS telepítéséhez a legnépszerűbb Linux-disztribúciókhoz.
A Solaris-nak és a FreeBSD-nek már telepítve kell lennie, és készen áll a használatra.
Ubuntu:
$ sudo add-apt-repository ppa: zfs-native / stabil
$ sudo apt-get frissítés
$ 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 frissítés
# apt-get telepítse a debian-zfs-t
RHEL / CentOS:
$ sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release-1-3.el6.noarch.rpm
$ sudo yum telepít zfs-t
Ha van más terjesztése, nézd meg a zfsonlinux.org fájlt, és kattints a terjesztésre a „Csomagok” listán a ZFS telepítésével kapcsolatos utasításokért.
Ahogy folytatjuk ezt az útmutatót, az Ubuntu-t fogjuk használni, mert ez úgy tűnik, hogy a # 1-es választás a Linux geeks számára. Még mindig képesnek kell lennie követni, függetlenül attól, hogy mi történik, mivel a ZFS parancsok nem változnak különböző elosztásokon.
A telepítés egy ideig tart, de ha befejeződött, futtassa $ sudo zfs lista
hogy helyesen telepítve legyen. Ehhez hasonló kimenetet kell kapnia:
Az Ubuntu szerver friss telepítését jelenleg csak egy merevlemezzel használjuk.
A ZFS konfigurálása
Tegyük fel, hogy még hat merevlemezt helyezünk a számítógépünkbe.
$ sudo fdisk -l | grep Hiba
megmutatja nekünk a hat telepített merevlemezt. Jelenleg használhatatlanok, mivel nem tartalmaznak semmilyen partíciós táblát.
Ahogy korábban említettük, a ZFS egyik szép dologja az, hogy nem kell zavarni a partíciókkal (bár lehet, ha akarod). Kezdjük úgy, hogy három merevlemezt veszünk, és a következő parancs segítségével futtatjuk őket egy tárolótárba:
$ sudo zpool létrehoz -f geek1 / dev / sdb / dev / sdc / dev / sdd
zpool teremt
az új tárolókészlet létrehozására használt parancs, -f
felülbírálja az esetlegesen előforduló hibákat (például, ha a lemez (ek) nek már van információja róluk), geek1
a tárolókészlet neve, és / dev / sdb / dev / sdc / dev / sdd
a merevlemezek, amelyeket a medencébe helyezünk.
Miután létrehozta a medencét, látnia kell azt a df
parancsot vagy sudo zfs lista
:
Mint látható, a / geek1 már fel van szerelve és használatra kész.
Ha azt szeretné látni, hogy melyik három tárcsát választotta a medence számára, akkor futtathatja sudo zpool állapot
:
Eddig egy 9 TB-os dinamikus csíkkészletet (hatékonyan RAID 0) hozunk létre. Abban az esetben, ha nem ismeri, mit jelent ez, képzeljük el, hogy létrehoztunk egy 3 KB-os fájlt a / geek1-en. 1 KB automatikusan az sdb-re, 1 KB-ra sdc-re, 1 KB-ra pedig sdd-re. Ezután, amikor elolvasjuk a 3 KB-os fájlt, minden egyes merevlemez 1 KB-ot mutat be nekünk, kombinálva a három meghajtó sebességét. Ez az adatok írását és olvasását gyorsan teszi, de azt is jelenti, hogy egyetlen hibás pontunk van. Ha csak egy merevlemez meghibásodik, elveszítjük a 3 KB-os fájlunkat.
Feltételezve, hogy az adatok védelme fontosabb, mint a gyors elérés, nézzük meg a többi népszerű beállítást. Először töröljük a létrehozott zpoolt, így ezeket a lemezeket egy redundánsabb beállításban használhatjuk:
$ sudo zpool elpusztítja a geek1-et
Bam, a mi zpoolunk eltűnt. Ezúttal használjuk a három lemezünket egy RAID-Z pool létrehozásához. A RAID-Z alapvetően a RAID 5 továbbfejlesztett változata, mivel elkerüli a „írási lyukat” a copy-on-write használatával. A RAID-Z legalább három merevlemez-meghajtót igényel, és a RAID 0 és a RAID 1 közötti kompromisszum. Ha a lemez egyetlen lemeze meghal, egyszerűen cserélje ki a lemezt, és a ZFS automatikusan újraépíti az adatokat a többi lemez paritás információi alapján. Ahhoz, hogy elveszítse az összes információt a tárolómedencében, két lemeznek meg kell halnia. Annak érdekében, hogy a dolgok még feleslegesebbek legyenek, használhatja a RAID 6 (RAID-Z2 a ZFS esetében) és kettős paritású.
Ehhez ugyanezt használhatjuk zpool teremt
parancsot, mint korábban, de adja meg raidz
a medence neve után:
$ sudo zpool létrehozása -f geek1 raidz / dev / sdb / dev / sdc / dev / sdd
Amint látod, df -h
azt mutatja, hogy a 9 TB-os medencünket 6 TB-ra csökkentettük, mivel 3 TB-t használnak paritásinformációk tárolására. A ... val zpool állapot
látjuk, hogy a medence többnyire ugyanaz, mint korábban, de most RAID-Z-t használ.
Ha szeretné megmutatni, hogy mennyire könnyű hozzáadni több lemezt a tárterületünkhöz, add hozzá a másik három lemezt (további 9 TB) a geek1 tárolómedencéhez, mint egy másik RAID-Z konfigurációt:
$ sudo zpool add -f geek1 raidz / dev / sde / dev / sdf / dev / sdg
Végül:
A Saga folytatódik ...
Alig vágtuk le a ZFS felületét és képességeit, de az ebben a cikkben tanultakat felhasználva most már képesnek kell lennie az adatok redundáns tárolóhelyeinek létrehozására. Nézze vissza velünk a ZFS-ről szóló jövőbeli cikkeket, tekintse meg a man oldalakat, és keresse meg a végtelen niche-útmutatókat és a YFS-videókat, amelyek ZFS-funkciókat tartalmaznak.