A GlusterFS (fájlrendszer) bemutatása és telepítése RHEL/CentOS és Fedora rendszeren
Olyan világban élünk, ahol az adatok előre nem látható módon gyarapodnak, és szükségünk van arra, hogy ezeket az adatokat, legyenek azok strukturáltak vagy strukturálatlanok, hatékonyan tároljuk. Az elosztott számítástechnikai rendszerek az előnyök széles skáláját kínálják a központosított számítástechnikai rendszerekkel szemben. Itt az adatokat elosztott módon tárolják több csomóponttal, mint szerverrel.
A metaadatszerver fogalmára már nincs szükség egy elosztott fájlrendszerben. Az elosztott fájlrendszerekben közös nézőpontot kínál a különböző szerverek között szétválasztott összes fájlról. Az ezeken a tárolókiszolgálókon lévő fájlok/könyvtárak a szokásos módon érhetők el.
Például a fájlok/könyvtárak engedélyei beállíthatók a szokásos rendszerengedély-modell szerint, azaz a tulajdonos, a csoport és mások. A fájlrendszerhez való hozzáférés alapvetően attól függ, hogy az adott protokoll hogyan működik ugyanazon.
Mi az a GlusterFS?
A GlusterFS egy elosztott fájlrendszer, amelyet a felhasználói térben való használatra határoztak meg, azaz a Fájlrendszer a felhasználói térben (FUSE). Ez egy szoftver alapú fájlrendszer, amely megfelel a saját rugalmassági funkciójának.
Tekintse meg a következő ábrát, amely sematikusan mutatja be a GlusterFS helyzetét egy hierarchikus modellben. Alapértelmezés szerint a TCP protokollt a GlusterFS fogja használni.
A GlusterFS előnyei
- Innováció – Megszünteti a metaadatokat, és drasztikusan javíthatja a teljesítményt, ami segít az adatok és objektumok egységesítésében.
- Rugalmasság – Az adatok növekedéséhez és méretének csökkenéséhez igazítva.
- Lineáris méretezés – Petabájtig és még tovább is elérhető.
- Egyszerűség – Könnyen kezelhető és független a kerneltől, miközben felhasználói területen fut.
Mitől kiemelkedő a Gluster a többi elosztott fájlrendszer között?
- Eladható – A metaadatszerver hiánya gyorsabb fájlrendszert biztosít.
- Megfizethető – Alapvető hardvereken telepíthető.
- Rugalmas – Ahogy korábban mondtam, a GlusterFS csak szoftveres fájlrendszer. Itt az adatokat natív fájlrendszereken tárolják, például ext4, xfs stb.
- Nyílt forráskód – A GlusterFS-t jelenleg a Red Hat Inc, egy milliárd dolláros nyílt forráskódú vállalat tartja karban a Red Hat Storage részeként.
Tárolási koncepciók a GlusterFS-ben
- Tégla – A tégla alapvetően minden olyan könyvtár, amelyet meg kell osztani a megbízható tárolókészlet között.
- Trusted Storage Pool – ezeknek a megosztott fájlok/könyvtárak gyűjteménye, amelyek a tervezett protokollon alapulnak.
- Block Storage – Olyan eszközök, amelyeken keresztül az adatok blokkok formájában kerülnek áthelyezésre a rendszerek között.
- Cluster – A Red Hat Storage-ban a fürt és a megbízható tárolókészlet ugyanazt a jelentést adja a tárolókiszolgálók együttműködésének egy meghatározott protokollon alapulóan.
- Elosztott fájlrendszer – Olyan fájlrendszer, amelyben az adatok különböző csomópontok között vannak elosztva, ahol a felhasználók anélkül férhetnek hozzá a fájlhoz, hogy ismernék a fájl tényleges helyét. A felhasználó nem érzi a távoli hozzáférés érzését.
- FUSE – Ez egy betölthető kernelmodul, amely lehetővé teszi a felhasználók számára a kernel feletti fájlrendszerek létrehozását a kernelkódok bevonása nélkül.
- glusterd – a glusterd a GlusterFS felügyeleti démon, amely a fájlrendszer gerincét képezi, és a kiszolgálók aktív állapotában végig futni fog.
- POSIX – A hordozható operációs rendszer interfész (POSIX) az IEEE által meghatározott szabványcsalád, amely megoldást jelent a Unix-változatok közötti kompatibilitásra egy Application Programmable Interface (API) formájában.
- RAID – A független lemezek redundáns tömbje (RAID) egy olyan technológia, amely a redundancia révén megnöveli a tárolási megbízhatóságot.
- Alkötet – Egy tégla, miután legalább egy fordító feldolgozta.
- Fordító – A fordító az a kódrészlet, amely végrehajtja a felhasználó által a csatlakoztatási pontról kezdeményezett alapvető műveleteket. Egy vagy több alkötetet köt össze.
- Kötet – A kötet téglák logikus gyűjteménye. Az összes művelet a felhasználó által létrehozott különböző típusú köteteken alapul.
Különböző típusú kötetek
Különböző kötettípusok és ezen alapvető kötettípusok közötti kombinációk ábrázolása is megengedett, az alábbiak szerint.
Elosztott replikált kötet
Elosztott-replikált kötet ábrázolása.
A GlusterFS telepítése RHEL/CentOS és Fedora rendszerben
Ebben a cikkben először telepítjük és konfiguráljuk a GlusterFS-t a tárhely magas rendelkezésre állása érdekében. Ehhez két szervert veszünk igénybe, hogy köteteket hozzunk létre, és replikáljuk az adatokat közöttük.
lépés: 1. Legyen legalább két csomópont
- Telepítse a CentOS 6.5-öt (vagy bármely más operációs rendszert) két csomópontra.
- Állítsa be a „szerver1” és „szerver2” nevű gazdagépneveket.
- Működő hálózati kapcsolat.
- Tárolólemez mindkét csomóponton „/data/brick” néven.
2. lépés: Az EPEL és a GlusterFS Repository engedélyezése
Mielőtt mindkét szerverre telepítené a GlusterFS-t, engedélyeznünk kell az EPEL és a GlusterFS tárolókat, hogy kielégítsük a külső függőségeket. A következő hivatkozás segítségével telepítse és engedélyezze az epel tárolót mindkét rendszeren.
- Az EPEL Repository engedélyezése az RHEL/CentOS rendszerben
Ezután mindkét szerveren engedélyeznünk kell a GlusterFs adattárat.
wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo
3. lépés: A GlusterFS telepítése
Telepítse a szoftvert mindkét szerverre.
yum install glusterfs-server
Indítsa el a GlusterFS felügyeleti démont.
service glusterd start
Most ellenőrizze a démon állapotát.
service glusterd status
Minta kimenet
service glusterd start
service glusterd status
glusterd.service - LSB: glusterfs server
Loaded: loaded (/etc/rc.d/init.d/glusterd)
Active: active (running) since Mon, 13 Aug 2012 13:02:11 -0700; 2s ago
Process: 19254 ExecStart=/etc/rc.d/init.d/glusterd start (code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/glusterd.service
├ 19260 /usr/sbin/glusterd -p /run/glusterd.pid
├ 19304 /usr/sbin/glusterfsd --xlator-option georep-server.listen-port=24009 -s localhost...
└ 19309 /usr/sbin/glusterfs -f /var/lib/glusterd/nfs/nfs-server.vol -p /var/lib/glusterd/...
4. lépés: A SELinux és az iptables konfigurálása
Nyissa meg az „/etc/sysconfig/selinux” elemet, és állítsa a SELinuxot „megengedő” vagy „letiltott” módra mindkét szerveren. Mentse és zárja be a fájlt.
This file controls the state of SELinux on the system.
SELINUX= can take one of these three values:
enforcing - SELinux security policy is enforced.
permissive - SELinux prints warnings instead of enforcing.
disabled - No SELinux policy is loaded.
SELINUX=disabled
SELINUXTYPE= can take one of these two values:
targeted - Targeted processes are protected,
mls - Multi Level Security protection.
SELINUXTYPE=targeted
Ezután ürítse ki az iptables-t mindkét csomópontban, vagy engedélyeznie kell a hozzáférést a másik csomóponthoz az iptables-en keresztül.
iptables -F
5. lépés: Konfigurálja a Megbízható Poolt
Futtassa a következő parancsot a „Server1”-en.
gluster peer probe server2
Futtassa a következő parancsot a „Server2”-en.
gluster peer probe server1
Megjegyzés: A készlet csatlakoztatása után csak megbízható felhasználók vizsgálhatnak új szervereket ebbe a készletbe.
6. lépés: GlusterFS-kötet beállítása
A szerver1-en és a szerveren2 egyaránt.
mkdir /data/brick/gv0
Hozzon létre egy kötetet bármely kiszolgálón, és indítsa el a kötetet. Itt vettem a „Server1”-t.
gluster volume create gv0 replica 2 server1:/data/brick1/gv0 server2:/data/brick1/gv0
gluster volume start gv0
Ezután ellenőrizze a hangerő állapotát.
gluster volume info
Megjegyzés: Ha az in-case kötet nem indul el, a hibaüzenetek a '/var/log/glusterfs alatt naplózódnak egy vagy mind a szerverek.
7. lépés: Ellenőrizze a GlusterFS kötetet
Csatlakoztassa a kötetet a „/mnt” alatti könyvtárba.
mount -t glusterfs server1:/gv0 /mnt
Most már létrehozhat és szerkeszthet fájlokat a csatolási ponton a fájlrendszer egyetlen nézeteként.
A GlusterFS jellemzői
- Öngyógyító – Ha a replikált kötetben lévő kockák bármelyike leállt, és a felhasználók módosítják a fájlokat a másik téglában, az automatikus öngyógyító démon azonnal működésbe lép, amint a tégla felkerül a következőre. Az idő és az állásidő alatt történt tranzakciók szinkronizálása ennek megfelelően történik.
- Újraegyensúlyozás – Ha egy új téglát adunk egy meglévő kötethez, ahol korábban nagy mennyiségű adat volt, újraegyensúlyozási műveletet hajthatunk végre az adatok elosztására az összes tégla között, beleértve az újonnan hozzáadott téglát is.
- Földrajzi replikáció – biztonsági mentést biztosít az adatokról a katasztrófa utáni helyreállításhoz. Itt jön a master és slave kötetek fogalma. Így ha a master leállt, az adatok teljes egészében elérhetőek a slave-en keresztül. Ez a funkció az adatok szinkronizálására szolgál a földrajzilag elkülönített szerverek között. A georeplikációs munkamenet inicializálása egy sor gluster parancsot igényel.
Itt van a következő képernyőkép, amely a Geo-replikációs modult mutatja.
Referencia hivatkozások
GlusterFS honlap
Egyelőre ennyi!. Legyen naprakész a következő cikkeimben található funkciókkal kapcsolatos részletes leírásért, mint például az öngyógyítás és az egyensúly helyreállítása, a földrajzi replikáció stb.