Uvod u GlusterFS (datotečni sustav) i instalacija na RHEL/CentOS i Fedora
Živimo u svijetu u kojem podaci rastu na nepredvidiv način i naša je potreba da te podatke, bez obzira jesu li strukturirani ili nestrukturirani, pohranimo na učinkovit način. Distribuirani računalni sustavi nude širok spektar prednosti u odnosu na centralizirane računalne sustave. Ovdje se podaci pohranjuju na distribuirani način s nekoliko čvorova kao poslužiteljima.
Koncept poslužitelja metapodataka više nije potreban u distribuiranom datotečnom sustavu. U distribuiranim datotečnim sustavima nudi zajedničko stajalište svih datoteka odvojenih između različitih poslužitelja. Datotekama/direktorijima na ovim poslužiteljima za pohranu pristupa se na uobičajeni način.
Na primjer, dopuštenja za datoteke/direktorije mogu se postaviti kao u uobičajenom modelu sistemskih dozvola, tj. Vlasnik, grupa i drugi. Pristup datotečnom sustavu u osnovi ovisi o tome kako je određeni protokol dizajniran za rad na istom.
Što je GlusterFS?
GlusterFS je distribuirani datotečni sustav definiran za upotrebu u korisničkom prostoru, tj. Datotečni sustav u korisničkom prostoru (FUSE). To je softverski sustav datoteka koji se temelji na vlastitoj fleksibilnosti.
Pogledajte sljedeću sliku koja shematski predstavlja položaj GlusterFS-a u hijerarhijskom modelu. GlusterFS će prema zadanim postavkama koristiti TCP protokol.
- Inovacija - uklanja metapodatke i može dramatično poboljšati izvedbu koja će nam pomoći da objedinimo podatke i objekte.
- Elastičnost - prilagođena rastu i smanjenju veličine podataka.
- Linearno skaliranje - dostupno je za petabajte i šire.
- Jednostavnost - Lako je upravljati i neovisno o jezgri dok se izvodi u korisničkom prostoru.
- Mogućnost prodaje - Odsutnost poslužitelja metapodataka omogućuje brži sustav datoteka.
- Pristupačno - postavlja se na robni hardver.
- Fleksibilno - Kao što sam već rekao, GlusterFS je softverski sustav datoteka. Ovdje se podaci pohranjuju na izvornim datotečnim sustavima poput ext4, xfs itd.
- Otvoreni izvor - Trenutno GlusterFS održava Red Hat Inc, tvrtka s otvorenim kodom od milijardu dolara, kao dio Red Hat Storagea.
- Opeka - opeka je u osnovi bilo koji direktorij kojem je namijenjeno dijeljenje među pouzdanim spremištima za pohranu.
- Pouzdano spremište za pohranu - zbirka je ovih zajedničkih datoteka/direktorija koji se temelje na dizajniranom protokolu.
- Blok pohrana - uređaji su putem kojih se podaci prebacuju kroz sustave u obliku blokova.
- Klaster - u Red Hat Storage i klasteri i pouzdani spremišta za pohranu prenose isto značenje suradnje poslužitelja za pohranu na temelju definiranog protokola.
- Distribuirani datotečni sustav - datotečni sustav u kojem se podaci šire na različite čvorove gdje korisnici mogu pristupiti datoteci bez da znaju stvarno mjesto datoteke. Korisnik nema osjećaj daljinskog pristupa.
- FUSE - To je učitavajući modul jezgre koji korisnicima omogućuje stvaranje datotečnih sustava iznad jezgre bez uključivanja bilo kojeg koda jezgre.
- glusterd - glusterd je demon upravljanja GlusterFS-a koji je okosnica datotečnog sustava koji će se izvoditi cijelo vrijeme kad god su poslužitelji u aktivnom stanju.
- POSIX - prijenosno sučelje operativnog sustava (POSIX) obitelj je standarda definiranih IEEE-om kao rješenje kompatibilnosti između Unix-ovih inačica u obliku aplikacijskog programabilnog sučelja (API).
- RAID - Redundantni niz neovisnih diskova (RAID) tehnologija je koja omogućuje povećanu pouzdanost pohrane redundantnošću.
- Subvolumen - cigla nakon obrade najmanje jednog prevoditelja.
- Prevoditelj - Prevoditelj je onaj dio koda koji izvodi osnovne radnje koje je korisnik pokrenuo s točke montiranja. Povezuje jedan ili više podskupina.
- Volumen - svezak je logična zbirka cigli. Sve se operacije temelje na različitim vrstama volumena koje je stvorio korisnik.
Prikazi različitih vrsta volumena i kombinacija između ovih osnovnih tipova volumena također su dopušteni, kao što je prikazano u nastavku.
Prikaz distribuirano repliciranog volumena.
Instalacija GlusterFS u RHEL/CentOS i Fedora
U ovom ćemo članku prvi put instalirati i konfigurirati GlusterFS za visoku dostupnost pohrane. Za to uzimamo dva poslužitelja za stvaranje volumena i umnožavanje podataka između njih.
- Instalirajte CentOS 6.5 (ili bilo koji drugi OS) na dva čvora.
- Postavite imena hostova pod nazivom "server1" i "server2".
- Radna mrežna veza.
- Disk za pohranu na oba čvora s nazivom „/ data/brick“.
Prije instaliranja GlusterFS-a na oba poslužitelja, moramo omogućiti EPEL i GlusterFS spremišta kako bismo zadovoljili vanjske ovisnosti. Upotrijebite sljedeću vezu za instaliranje i omogućavanje spremišta epel pod oba sustava.
- Kako omogućiti spremište EPEL u RHEL/CentOS
Dalje, moramo omogućiti GlusterFs spremište na oba poslužitelja.
# wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo
Instalirajte softver na oba poslužitelja.
# yum install glusterfs-server
Pokrenite demon GlumterFS management.
# service glusterd start
Sada provjerite status demona.
# service glusterd status
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/...
Otvorite '/ etc/sysconfig/selinux' i promijenite SELinux u "permissive" ili "disabled" način rada na oba poslužitelja. Spremite i zatvorite datoteku.
# 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
Dalje, isperite iptables u oba čvora ili trebate omogućiti pristup drugom čvoru putem iptables.
# iptables -F
Pokrenite sljedeću naredbu na ‘Server1’.
gluster peer probe server2
Pokrenite sljedeću naredbu na ‘Server2’.
gluster peer probe server1
Napomena: Jednom kada je ovaj bazen povezan, samo pouzdani korisnici mogu testirati nove poslužitelje u ovaj bazen.
I na poslužitelju1 i na poslužitelju2.
# mkdir /data/brick/gv0
Stvorite volumen na bilo kojem pojedinačnom poslužitelju i pokrenite volumen. Evo, uzeo sam "Server1".
# gluster volume create gv0 replica 2 server1:/data/brick1/gv0 server2:/data/brick1/gv0 # gluster volume start gv0
Zatim potvrdite status glasnoće.
# gluster volume info
Napomena: Ako se volumen u slučaju ne pokrene, poruke o pogreškama evidentiraju se pod '/ var/log/glusterfs' na jednom ili oba poslužitelja.
Priključite volumen u direktorij pod ‘/ mnt’.
# mount -t glusterfs server1:/gv0 /mnt
Sada možete stvarati, uređivati datoteke na točki montiranja kao jedan prikaz datotečnog sustava.
Značajke GlusterFS-a
- Samoizliječenje - ako padne bilo koja cigla u repliciranom volumenu i korisnici izmijene datoteke unutar druge cigle, automatski samoizliječivi demon pokrenut će se čim se opeka sljedeći put podigne i transakcije izvrše koji su se dogodili tijekom zastoja sinhroniziraju se u skladu s tim.
- Rebalans - ako dodamo novu ciglu postojećem volumenu, u kojem je prethodno boravila velika količina podataka, možemo izvršiti operaciju rebalansa kako bismo podatke raspodijelili među sve cigle, uključujući i novo dodanu ciglu.
- Geo-replikacija - pruža sigurnosne kopije podataka za oporavak od katastrofe. Tu dolazi koncept glavnih i podređenih volumena. Tako da ako je master u kvaru, cijelim se podacima može pristupiti putem slave-a. Ova se značajka koristi za sinkronizaciju podataka između zemljopisno odvojenih poslužitelja. Inicijalizacija sesije geo-replikacije zahtijeva niz gluster naredbi.
Evo slijedećeg zaslona koji prikazuje modul Geo-replikacije.
Referentni linkovi
Početna stranica GlusterFS-a
To je za sada to !. Budite u toku s detaljnim opisom značajki kao što su samoizlječenje i ponovno uravnoteženje, geo-replikacija itd. U mojim nadolazećim člancima.