2016. március 31.

Kisvállalati fájl szerver házilag

10 perc olvasási idő

Kisvállalati fájl szerver házilag

A kisebb IT vállalatok a növekedés folytán, hamar eljutnak arra a szintre, hogy egynél több szerverre van szükségük. Különböző fejlesztői szerverekre, build szerverekre. Aztán a GitLab-nak se ártana egy szerver, legalább egy virtuális. Ezeken felül még valahol a cég egyéb adatait is tárolni kell.

Új, nagy szerverek beszerzésére nem mindig van lehetőség, viszont gyakran rendelkezésre áll néhány kisebb, régebbi szerver, melyek ugyan nem a legújabbak, de megfelelően működnek. Azon kívül, hogy bevásárolsz egy nagy szervert, ami tele van merevlemezekkel, néhány egyéb alternatíva is rendelkezésedre áll.

NAS

Lehetőséged van beszerezni különböző gyártók kész NAS megoldásait, melybe igényeid szerint tehetsz különböző darabszámú és tárterületű HDD-ket. A jobbak (és értelemszerűen drágábbak) RAID kötetet is tudnak összeállítani a rendelkezésre álló merevlemezekből. Ettől függetlenül limitáltak a képességeik, saját operációs rendszerrel futnak, egyszóval meg van kötve a kezed.

Nagy előnyük, hogy dobozos megoldások, egyszerű webes felületen lehet őket kezelni. A főbb fájl megosztó és média szerver funkciókat biztosítják, túl nagy törődést nem igényelnek. Az okosabb operációs rendszerek automatikus biztonsági mentés funkcióval is fel vannak szerelve.

Open Source

Másik lehetőség, amire igazából ki akartam térni a poszt kapcsán, hogy lehet Open Source alapokon is építkezni. Ez a változat nagyobb szabadságot, és adott esetben nagyobb teljesítményt is jelenthet a dobozos NAS megoldásokhoz képest. Hátránya, hogy nagyobb hozzáértést és parancssori gépelgetést igényelnek.

ZFS

Eredetileg a ZFS fájlrendszert a Sun Microsystems kezdte fejleszteni még 2001-ben. A Sun felvásárlását követően az Oracle nyílt forráskódúvá tette a rendszert 2005-ben. A fejlesztését 2010-ben fejezte be az Oracle. Ez az esemény hívta életre az OpenZFS projektet, mint forkot, mely a jelenlegi fejlesztéseket is koordinálja, és a különböző implementációkat fogja össze.

A ZFS egy fájlrendszer és egy logikai kötetkezelő egyben, számos hasznos funkcióval, mint tömörítés, deduplikáció, snapshot lehetőség, hatékony adatvédelem, öngyógyítás, RAID.

Egyetlen dologra kell csak figyelni használatakor. Ha van RAID kártya a szerverben, azt ki kell kapcsolni, mivel a fájlrendszer saját algoritmust használ az adatok tárolására és kezelésére, és a RAID kártya befolyásolja a hatékonyságát. A RAID működését is célszerű ZFS oldaláról megközelíteni. Saját megoldása, saját algoritmusa van erre a célra, ami hatékonyabb, mint pl. a RAID5.

A ZFS-t hatalmas tárkapacitásra tervezték, ízelítőül a számok:

  • 281 billió darab fájl lehet egy könyvtárban
  • 16 exabyte lehet egy fájl maximális mérete
  • 256 zettabyte lehet egy kötet maximális mérete
  • 18 trillió darab kötetet tud kezelni

A számokból is látszik, hogy a ZFS képességei bőven túlmutatnak egy kkv cég igényein, akár nagyvállalati környezetben is helyt áll(hat).

Számomra a leghasznosabb funkció, az a különböző szintű gyorsítótárazási megoldások. A ZFS segítségével könnyűszerrel építhetsz hibrid tárolókat. Vegyesen használhatod fájl tárolásra és gyorsítótárazásra a RAM-ot, az SSD-t, a hagyományos HDD-t. Mivel sok különböző logikai egység kezelésére képes, így különböző módokon lehet összeszervezni az azonos sebességű és elérésű háttértárolókat.

Hab a tortán, és ami miatt egy egész szervert kíván, hogy a gyakran használt adatokat elő tudja tölteni. Elsődlegesen az elérhető szabad RAM kapacitást használja erre a célra, de ha az betelt, a kevésbé használt adatokat automatikusan áthelyezi az erre a célra dedikált háttértárra. Erre a célra egy kicsi SSD megfelel, mely biztosítja a gyors elérést. Ennek az SSD-nek nem szükséges redundánsnak lennie, elhalálozás esetén egyedül teljesítménybeli hatása lehet.

Az írási folyamatok naplózását is célszerű külön háttértárra, két kicsi SSD-re kiszervezni. Ezeket viszont már ajánlott redundánsan rendszerezni, mivel ha az írási naplózás közben keletkezik a probléma, a ki nem írt adatok elvesznek.

Ezeket a meghajtókat (gyorsítótár, írási napló) a ZFS rendszer logikailag külön kezeli. Így szükség szerint lehet egyedileg hozzárendelni az egyes kötetekhez.

A különböző logikai kötetek az operációs rendszer oldaláról ugyanolyan könyvtárnak, partíciónak látszanak, mint bármelyik más fájlrendszer esetén. Így lehetőséged van arra, hogy továbbexportáld akár egy NFS szerver, vagy egy SAMBA szerver felé. Ezáltal akár Linuxos, akár Windowsos gépek is el tudják érni a megosztott kötetet.

Megoldások

FreeNAS

A FreeNAS egy FreeBSD alapú operációs rendszer, amely alapértelmezetten ZFS fájlrendszert használ, és a NAS egyszerű kezelhetőségét ötvözi az egyedi megoldások használatával.

ZFS on Linux

A ZFS Linux implementációja. A projekt a Linux kernelhez szükséges modulokat tartalmazza. Számos Linux disztribúció számára elérhető csomag formájában, elősegítve a könnyű telepítést.

Linux használata esetén megvan az a lehetőség, hogy könnyebben lehet a szerver számára egyéb, kis erőforrást igénylő funkciókat adni a fájlszerver mellett. Ilyen pl. egy másodlagos belső névszerver.

Az fps-nél mi is a ZFS on Linux implementációt használjuk egy CentOS 7 szerveren, SSD gyorsítótárazással. A fájlrendszer NFS szerverrel van megosztva a hálózaton a webszerverek és verziókövetők felé. Egy esetleges szerver csere, vagy bővítés nem jár azzal, hogy több GB adatot kelljen mozgatni, egyszerűen csak a megfelelő csatoló pontokat kell újra felcsatlakoztatni.

Tar Péter

IT Architect. Több mint 10 éve dolgozik üzemeltetési területen, főként Linux szerverek üzemeltetésével. Hobbi szinten kb 10 éve foglalkozik fejlesztéssel. Területei: Linux, webszerverek, biztonság.

Tar Péter

Hozzászólások