Johdatus GlusterFS:ään (tiedostojärjestelmä) ja asennus RHEL/CentOS:ään ja Fedoraan


Elämme maailmassa, jossa data kasvaa arvaamattomalla tavalla ja meidän on säilytettävä tämä data, oli se sitten jäsenneltyä tai jäsentämätöntä, tehokkaasti. Hajautetut laskentajärjestelmät tarjoavat laajan joukon etuja keskitettyihin laskentajärjestelmiin verrattuna. Täällä tiedot tallennetaan hajautetusti useiden solmujen palvelimiksi.

Hajautetussa tiedostojärjestelmässä metatietopalvelimen käsitettä ei enää tarvita. Hajautetuissa tiedostojärjestelmissä se tarjoaa yhteisen näkökulman kaikista tiedostoista, jotka on erotettu eri palvelimien kesken. Näiden tallennuspalvelimien tiedostoja/hakemistoja käytetään normaalisti.

Esimerkiksi tiedostojen/hakemistojen käyttöoikeudet voidaan asettaa kuten tavallisessa järjestelmän käyttöoikeusmallissa, eli omistaja, ryhmä ja muut. Pääsy tiedostojärjestelmään riippuu pohjimmiltaan siitä, kuinka tietty protokolla on suunniteltu toimimaan samalla.

Mikä on GlusterFS?

GlusterFS on hajautettu tiedostojärjestelmä, joka on määritetty käytettäväksi käyttäjätilassa, eli tiedostojärjestelmä käyttäjätilassa (FUSE). Se on ohjelmistopohjainen tiedostojärjestelmä, joka ottaa huomioon oman joustavuusominaisuuden.

Katso seuraavaa kuvaa, joka esittää kaavamaisesti GlusterFS:n asemaa hierarkkisessa mallissa. Oletuksena GlusterFS käyttää TCP-protokollaa.

GlusterFS:n edut

  1. Innovaatio – Se eliminoi metatiedot ja voi parantaa huomattavasti suorituskykyä, mikä auttaa meitä yhdistämään tiedot ja objektit.
  2. Elastisuus – mukautettu kasvuun ja tietojen koon pienentämiseen.
  3. Skaalaa lineaarisesti – Se on saatavilla petatavuihin ja enemmän.
  4. Yksinkertaisuus – Sitä on helppo hallita ja se on riippumaton ytimestä, kun se toimii käyttäjätilassa.

Mikä tekee Glusterista erinomaisen muiden hajautettujen tiedostojärjestelmien joukossa?

  1. Myytävä – metatietopalvelimen puuttuminen tarjoaa nopeamman tiedostojärjestelmän.
  2. Edullinen – Se otetaan käyttöön peruslaitteistoissa.
  3. Joustava – Kuten aiemmin sanoin, GlusterFS on vain ohjelmistotiedostojärjestelmä. Täällä tiedot tallennetaan alkuperäisiin tiedostojärjestelmiin, kuten ext4, xfs jne.
  4. Avoin lähdekoodi – GlusterFS:ää ylläpitää tällä hetkellä Red Hat Inc, miljardin dollarin avoimen lähdekoodin yritys, osana Red Hat Storagea.

Tallennuskonseptit GlusterFS:ssä

  1. Tili – Brick on periaatteessa mikä tahansa hakemisto, joka on tarkoitettu jaettavaksi luotetun tallennusvarannon kesken.
  2. Trusted Storage Pool – on kokoelma näitä jaettuja tiedostoja/hakemistoja, jotka perustuvat suunniteltuun protokollaan.
  3. Block Storage – Ne ovat laitteita, joiden kautta tietoja siirretään järjestelmien välillä lohkojen muodossa.
  4. Klusteri – Red Hat Storagessa sekä klusteri että luotettu tallennusvarasto välittävät saman merkityksen tallennuspalvelinten yhteistyölle määritettyyn protokollaan.
  5. Hajautettu tiedostojärjestelmä – Tiedostojärjestelmä, jossa tiedot hajautetaan eri solmuihin, joissa käyttäjät voivat käyttää tiedostoa tietämättä tiedoston todellista sijaintia. Käyttäjä ei koe etäkäytön tunnetta.
  6. FUSE – Se on ladattava ydinmoduuli, jonka avulla käyttäjät voivat luoda tiedostojärjestelmiä ytimen yläpuolelle ilman ydinkoodia.
  7. glusterd – glusterd on GlusterFS-hallintadaemon, joka on tiedostojärjestelmän selkäranka, joka on käynnissä koko ajan aina, kun palvelimet ovat aktiivisessa tilassa.
  8. POSIX – Portable Operating System Interface (POSIX) on standardiperhe, jonka IEEE on määritellyt ratkaisuksi Unix-varianttien yhteensopivuuteen Application Programmable Interface (API) -muodossa.
  9. RAID – Redundant Array of Independent Disks (RAID) on tekniikka, joka lisää tallennusluotettavuutta redundanssin ansiosta.
  10. Alitaite – tiili sen jälkeen, kun sen on käsitellyt vähintään yksi kääntäjä.
  11. Kääntäjä – Kääntäjä on se koodinpätkä, joka suorittaa käyttäjän liitospisteestä käynnistämät perustoiminnot. Se yhdistää yhden tai useamman alitaltion.
  12. Volume – Volyymi on looginen kokoelma palikoita. Kaikki toiminnot perustuvat käyttäjän luomiin erityyppisiin taltioihin.
Erityyppiset volyymit

Myös erityyppisten volyymien ja näiden perusteostyyppien yhdistelmät ovat sallittuja alla esitetyllä tavalla.

Jaettu replikoitu määrä

Hajautetun ja replikoidun taltion esitys.

GlusterFS:n asennus RHEL/CentOS:ään ja Fedoraan

Tässä artikkelissa asennamme ja määritämme GlusterFS:n ensimmäistä kertaa korkean tallennustilan saatavuuden varmistamiseksi. Tätä varten käytämme kahta palvelinta luomaan taltioita ja replikoimaan tietoja niiden välillä.

Vaihe :1 Käytä vähintään kaksi solmua

  1. Asenna CentOS 6.5 (tai mikä tahansa muu käyttöjärjestelmä) kahteen solmuun.
  2. Aseta isäntänimet "palvelin1" ja "palvelin2".
  3. Toimiva verkkoyhteys.
  4. Tallennuslevy molemmissa solmuissa nimeltä /data/brick.

Vaihe 2: Ota EPEL ja GlusterFS Repository käyttöön

Ennen kuin asennamme GlusterFS:n molemmille palvelimille, meidän on otettava käyttöön EPEL- ja GlusterFS-tietovarastot, jotta voimme täyttää ulkoiset riippuvuudet. Käytä seuraavaa linkkiä asentaaksesi ja ottaaksesi epel-varaston käyttöön molemmissa järjestelmissä.

  1. Kuinka ottaa EPEL-varasto käyttöön RHEL/CentOS:ssä

Seuraavaksi meidän on otettava GlusterFs-varasto käyttöön molemmilla palvelimilla.

wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo

Vaihe 3: GlusterFS:n asentaminen

Asenna ohjelmisto molemmille palvelimille.

yum install glusterfs-server

Käynnistä GlusterFS-hallintadaemon.

service glusterd start

Tarkista nyt demonin tila.

service glusterd status
Näytelähtö
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/...

Vaihe 4: Määritä SELinux ja iptables

Avaa /etc/sysconfig/selinux ja vaihda SELinux joko sallivaan- tai poistettuun-tilaan molemmissa palvelimissa. Tallenna ja sulje tiedosto.

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

Seuraavaksi huuhtele iptables molemmissa solmuissa tai sinun on sallittava pääsy toiseen solmuun iptablesin kautta.

iptables -F

Vaihe 5: Määritä Trusted Pool

Suorita seuraava komento kohdassa Palvelin1.

gluster peer probe server2

Suorita seuraava komento kohdassa Palvelin2.

gluster peer probe server1

Huomaa: kun tämä pooli on yhdistetty, vain luotettavat käyttäjät voivat tutkia uusia palvelimia tähän joukkoon.

Vaihe 6: Määritä GlusterFS-taltio

Sekä palvelin1 että palvelin2.

mkdir /data/brick/gv0

Luo taltio millä tahansa yksittäisellä palvelimella ja käynnistä taltio. Tässä olen ottanut "Palvelin1".

gluster volume create gv0 replica 2 server1:/data/brick1/gv0 server2:/data/brick1/gv0
gluster volume start gv0

Vahvista seuraavaksi äänenvoimakkuuden tila.

gluster volume info

Huomaa: jos in-case volyymi ei käynnisty, virheilmoitukset kirjataan /var/log/glusterfs-kansioon molemmat palvelimet.

Vaihe 7: Tarkista GlusterFS Volume

Liitä taltio hakemistoon kohdassa /mnt.

mount -t glusterfs server1:/gv0 /mnt

Nyt voit luoda ja muokata liitospisteessä olevia tiedostoja yhtenä tiedostojärjestelmän näkymänä.

GlusterFS:n ominaisuudet

  1. Itsekorjaava – Jos jokin replikoidun taltion palikoista on alhaalla ja käyttäjät muokkaavat tiedostoja toisen lohkon sisällä, automaattinen itsekorjaava demoni alkaa toimia heti, kun lohko on seuraavan kerran ylhäällä. aika ja käyttökatkon aikana tapahtuneet tapahtumat synkronoidaan vastaavasti.
  2. Tasapainottaminen – Jos lisäämme uuden lohkon olemassa olevaan taltioon, jossa oli aiemmin suuri määrä dataa, voimme suorittaa tasapainotustoiminnon jakaaksemme tiedot kaikkien lohkojen kesken, mukaan lukien vasta lisätty lohko.
  3. Maantieteellinen replikointi – Se tarjoaa varmuuskopiot tiedoista katastrofipalautusta varten. Tässä tulee käsite isäntä- ja orjavolyymit. Joten jos isäntä on alhaalla, kaikki tiedot voidaan käyttää orjan kautta. Tätä ominaisuutta käytetään tietojen synkronointiin maantieteellisesti erillisten palvelimien välillä. Georeplikointiistunnon alustaminen vaatii sarjan gluster-komentoja.

Tässä on seuraava näyttökuva, joka näyttää Geo-replication -moduulin.

Viitelinkit

GlusterFS kotisivu

Siinä se nyt!. Pysy ajan tasalla tulevissa artikkeleissani olevien ominaisuuksien, kuten Self-Heal ja Re-balance, Geo-replication, yksityiskohtaisen kuvauksen saamiseksi.