Vyhledávání na webu

Úvod do GlusterFS (File System) a instalace na RHEL/CentOS a Fedora


Žijeme ve světě, kde data rostou nepředvídatelným způsobem a je naší potřebou tato data, ať už jsou strukturovaná nebo nestrukturovaná, efektivně ukládat. Distribuované výpočetní systémy nabízejí širokou škálu výhod oproti centralizovaným výpočetním systémům. Zde jsou data uložena distribuovaným způsobem s několika uzly jako servery.

V distribuovaném systému souborů již není potřeba metadatový server. V distribuovaných souborových systémech nabízí společný pohled na všechny soubory oddělené mezi různými servery. K souborům/adresářům na těchto úložných serverech se přistupuje běžnými způsoby.

Například oprávnění pro soubory/adresáře lze nastavit jako v obvyklém modelu systémových oprávnění, tj. vlastník, skupina a další. Přístup k systému souborů v zásadě závisí na tom, jak je konkrétní protokol navržen, aby na něm fungoval.

Co je GlusterFS?

GlusterFS je distribuovaný systém souborů definovaný pro použití v uživatelském prostoru, tj. Systém souborů v uživatelském prostoru (FUSE). Jedná se o softwarový systém souborů, který zohledňuje svou vlastní flexibilitu.

Podívejte se na následující obrázek, který schematicky znázorňuje pozici GlusterFS v hierarchickém modelu. Ve výchozím nastavení bude GlusterFS používat protokol TCP.

Výhody GlusterFS

  1. Inovace – eliminuje metadata a může výrazně zlepšit výkon, což nám pomůže sjednotit data a objekty.
  2. Elasticita – přizpůsobená růstu a snižování velikosti dat.
  3. Lineární škálování – Má dostupnost na petabajty a více.
  4. Jednoduchost – Snadno se spravuje a je nezávislý na jádře při běhu v uživatelském prostoru.

Čím je Gluster výjimečný mezi ostatními distribuovanými souborovými systémy?

  1. Salable – Absence serveru metadat zajišťuje rychlejší systém souborů.
  2. Dostupná – Nasazuje se na komoditní hardware.
  3. Flexibilní – Jak jsem již řekl dříve, GlusterFS je pouze softwarový souborový systém. Zde jsou data uložena na nativních souborových systémech jako ext4, xfs atd.
  4. Otevřený zdroj – V současné době je GlusterFS spravován společností Red Hat Inc, miliardovou open source společností, jako součást Red Hat Storage.

Koncepty úložiště v GlusterFS

  1. Brick – Brick je v podstatě jakýkoli adresář, který je určen ke sdílení v rámci důvěryhodného fondu úložiště.
  2. Trusted Storage Pool – je kolekce těchto sdílených souborů/adresářů, které jsou založeny na navrženém protokolu.
  3. Block Storage – Jsou zařízení, přes která se data přesouvají mezi systémy ve formě bloků.
  4. Cluster – V Red Hat Storage klastr i důvěryhodný úložný fond vyjadřují stejný význam spolupráce úložných serverů na základě definovaného protokolu.
  5. Distribuovaný souborový systém – souborový systém, ve kterém jsou data rozložena do různých uzlů, kde uživatelé mohou k souboru přistupovat, aniž by znali skutečné umístění souboru. Uživatel nezažívá pocit vzdáleného přístupu.
  6. FUSE – Jedná se o načítatelný modul jádra, který uživatelům umožňuje vytvářet souborové systémy nad jádrem bez použití jakéhokoli kódu jádra.
  7. glusterd – glusterd je démon pro správu GlusterFS, který je páteří souborového systému, který poběží po celou dobu, kdy jsou servery v aktivním stavu.
  8. POSIX – Portable Operating System Interface (POSIX) je rodina standardů definovaných IEEE jako řešení kompatibility mezi unixovými variantami ve formě aplikačního programovatelného rozhraní (API).
  9. RAID – Redundant Array of Independent Disks (RAID) je technologie, která poskytuje zvýšenou spolehlivost úložiště prostřednictvím redundance.
  10. Subvolume – Cihla po zpracování alespoň jedním překladatelem.
  11. Translator – Překladač je část kódu, která provádí základní akce iniciované uživatelem z bodu připojení. Spojuje jeden nebo více dílčích svazků.
  12. Svazek – Svazky jsou logickou sbírkou kostek. Všechny operace jsou založeny na různých typech svazků vytvořených uživatelem.
Různé typy svazků

Zastoupení různých typů svazků a kombinací mezi těmito základními typy svazků je také povoleno, jak je uvedeno níže.

Distribuovaný replikovaný svazek

Reprezentace distribuovaného replikovaného svazku.

Instalace GlusterFS v RHEL/CentOS a Fedora

V tomto článku poprvé nainstalujeme a nakonfigurujeme GlusterFS pro vysokou dostupnost úložiště. K tomu využíváme dva servery, které vytvářejí svazky a replikují data mezi nimi.

Krok: 1 Mít alespoň dva uzly

  1. Nainstalujte CentOS 6.5 (nebo jakýkoli jiný OS) na dva uzly.
  2. Nastavte názvy hostitelů s názvem „server1“ a „server2“.
  3. Funkční připojení k síti.
  4. Úložný disk na obou uzlech s názvem „/data/brick“.

Krok 2: Povolte úložiště EPEL a GlusterFS

Před instalací GlusterFS na oba servery musíme povolit úložiště EPEL a GlusterFS, abychom uspokojili externí závislosti. Pomocí následujícího odkazu nainstalujte a povolte úložiště epel v obou systémech.

  1. Jak povolit úložiště EPEL v RHEL/CentOS

Dále musíme povolit úložiště GlusterFs na obou serverech.

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

Krok 3: Instalace GlusterFS

Nainstalujte software na oba servery.

yum install glusterfs-server

Spusťte démona správy GlusterFS.

service glusterd start

Nyní zkontrolujte stav démona.

service glusterd status
Ukázkový výstup
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/...

Krok 4: Nakonfigurujte SELinux a iptables

Otevřete „/etc/sysconfig/selinux“ a změňte SELinux na režim „permisivní“ nebo „disabled“ na obou serverech. Uložte a zavřete soubor.

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

Dále vyprázdněte iptables v obou uzlech nebo je třeba povolit přístup k druhému uzlu přes iptables.

iptables -F

Krok 5: Nakonfigurujte důvěryhodný fond

Spusťte následující příkaz na „Server1“.

gluster peer probe server2

Spusťte následující příkaz na „Server2“.

gluster peer probe server1

Poznámka: Po připojení tohoto fondu mohou pouze důvěryhodní uživatelé zkoumat nové servery do tohoto fondu.

Krok 6: Nastavte svazek GlusterFS

Na server1 i server2.

mkdir /data/brick/gv0

Vytvořte svazek Na libovolném serveru a spusťte svazek. Zde jsem vzal „Server1“.

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

Dále potvrďte stav svazku.

gluster volume info

Poznámka: Pokud se svazek v případě nespustí, budou chybové zprávy zaznamenány pod '/var/log/glusterfs' na jednom nebo oba servery.

Krok 7: Ověřte svazek GlusterFS

Připojte svazek do adresáře „/mnt“.

mount -t glusterfs server1:/gv0 /mnt

Nyní můžete vytvářet a upravovat soubory v bodě připojení jako jediné zobrazení systému souborů.

Vlastnosti GlusterFS

  1. Self-heal – Pokud je některá z kostek v replikovaném svazku nefunkční a uživatelé upraví soubory ve druhé kostce, spustí se automatický self-heal démon, jakmile bude kostka další. čas a transakce, ke kterým došlo během doby výpadku, se podle toho synchronizují.
  2. Rebalance – Pokud přidáme novou cihlu do existujícího svazku, kde se dříve nacházelo velké množství dat, můžeme provést operaci opětovného vyvážení, abychom data distribuovali mezi všechny cihly včetně nově přidané cihly.
  3. Geo-replikace – Poskytuje zálohy dat pro obnovu po havárii. Zde přichází koncept master a slave svazků. Takže pokud je master vypnutý, celá data mohou být přístupná přes slave. Tato funkce se používá k synchronizaci dat mezi geograficky oddělenými servery. Inicializace relace geografické replikace vyžaduje řadu příkazů Gluster.

Zde je následující snímek obrazovky, který ukazuje modul Geo-replication.

Referenční odkazy

Domovská stránka GlusterFS

To je prozatím vše!. Zůstaňte informováni o podrobném popisu funkcí jako Self-heal a Re-balance, Geo-replication atd. v mých nadcházejících článcích.