GNU/Linux >> Znalost Linux >  >> Fedora

Vytvoření samostatného úložného serveru podobného NFS pomocí GlusterFS na Fedoře 12

Tento tutoriál ukazuje, jak nastavit samostatný úložný server na Fedoře 12. Místo NFS zde použiji GlusterFS. Klientský systém bude mít přístup k úložišti, jako by to byl místní souborový systém. GlusterFS je klastrovaný souborový systém schopný škálování na několik petabajtů. Sdružuje různé úložné bloky přes propojení Infiniband RDMA nebo TCP/IP do jednoho velkého paralelního síťového souborového systému. Úložné kostky mohou být vyrobeny z jakéhokoli běžného hardwaru, jako jsou servery x86_64 s SATA-II RAID a Infiniband HBA.

Neposkytuji žádnou záruku, že to pro vás bude fungovat!

1 předběžná poznámka

V tomto tutoriálu používám dva systémy, server a klienta:

  • server1.example.com:IP adresa 192.168.0.100 (server)
  • client1.example.com:IP adresa 192.168.0.101 (klient)

Oba systémy by měly být schopny přeložit název hostitele druhého systému. Pokud to nelze provést prostřednictvím DNS, měli byste upravit soubor /etc/hosts tak, aby na obou systémech obsahoval následující dva řádky:

vi /etc/hosts
[...]192.168.0.100 server1.example.com server1192.168.0.101 klient1.example.com klient1[...] 

(V následujícím nastavení je také možné použít IP adresy místo názvů hostitelů. Pokud dáváte přednost použití IP adres, nemusíte se starat o to, zda lze názvy hostitelů přeložit nebo ne.)

2 Nastavení serveru GlusterFS

server1.example.com:

Server GlusterFS je dostupný jako balíček pro Fedoru 12, takže jej můžeme nainstalovat následovně:

yum nainstalovat glusterfs-server

Příkaz

glusterfs --version

by nyní měla zobrazovat verzi GlusterFS, kterou jste právě nainstalovali (v tomto případě 2.0.9):

[[email protected] ~]# glusterfs --version
glusterfs 2.0.9 postaveno 3. ledna   2010 00:12:49
Revize úložiště: v2.0.9
Autorská práva (c) 2006- 2009 Gluster Inc. 
GlusterFS s ABSOLUTNĚ ŽÁDNÁ ZÁRUKA.
Můžete redistribuovat kopie GlusterFS za podmínek GNU General Public Lense.
[[email protected]ver1 ~]#

Dále vytvoříme několik adresářů:

mkdir /data/
mkdir /data/export
mkdir /data/export-ns

Nyní vytvoříme konfigurační soubor serveru GlusterFS /etc/glusterfs/glusterfsd.vol (nejprve vytvoříme zálohu původního souboru /etc/glusterfs/glusterfsd.vol), který definuje, který adresář se bude exportovat (/data/export) a jaký klient se může připojit (192.168.0.101 =klient1.example.com):

cp /etc/glusterfs/glusterfsd.vol /etc/glusterfs/glusterfsd.vol_orig
cat /dev/null> /etc/glusterfs/glusterfsd.vol
vi /etc/glusterfs/glusterfsd.vol

volume posix typ úložiště/adresář voleb posix /data/exportend-volumevolume typ zámků funkce/volba zámků povinné-zámky na dílčích svazcích výkon typu cihla posixend-volumevolume /io-threads option thread-count 8 subvolumes locksend-volumevolume server type protocol/server option transport-type tcp option auth.addr.brick.allow 192.168.0.101 # Zde můžete upravit a přidat seznam povolených klientů oddělených IP adresami (jmény) subvolumes brickend-volume

Upozorňujeme, že pro adresy IP je možné použít zástupné znaky (např. 192.168.*) a že můžete zadat více adres IP oddělených čárkou (např. 192.168.0.101, 192.168.0.102).

Poté vytvoříme odkazy pro spuštění systému pro server GlusterFS a spustíme jej:

chkconfig --levels 35 glusterfsd na
/etc/init.d/glusterfsd start

3 Nastavení klienta GlusterFS

client1.example.com:

Existuje rpm balíček klienta GlusterFS pro Fedoru 12, ale problém s ním je, že se zobrazí chyby jako df:`/mnt/glusterfs':Software způsobil přerušení připojení nebo df:`/mnt/glusterfs':Transportní koncový bod není připojen při pokusu o přístup ke sdílené složce GlusterFS. To je důvod, proč stavíme klienta GlusterFS ze zdrojů, abychom se vyhnuli těmto problémům.

Než sestavíme klienta GlusterFS, nainstalujeme jeho předpoklady:

yum groupinstall 'Development Tools'
yum groupinstall 'Development Libraries'
yum install libibverbs-devel fuse-devel

Poté si stáhneme zdrojové kódy GlusterFS 2.0.9 (upozorňujeme, že se jedná o stejnou verzi, která je nainstalována na serveru!) a sestavíme GlusterFS následovně:

cd /tmp
wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.9.tar.gz
tar xvfz glusterfs-2.0.9.tar .gz
cd glusterfs-2.0.9
./configure

Na konci příkazu ./configure byste měli vidět něco takového:

[...]
Přehled konfigurace GlusterFS
============================
Klient FUSE         :yes
Infiniband slovesa   : ano
epoll IO multiplex : yes
Berkeley-DB        : ano
libglusterfsclient : ano
argp-samostatný      : ne
[[email protected] glusterfs-2.0.9]#

make &&make install
ldconfig

Poté zkontrolujte verzi GlusterFS (měla by být 2.0.9):

glusterfs --version

[[email protected] glusterfs-2.0.9]# glusterfs --version
glusterfs 2.0.9 postaveno 19. února 2010 19:20:46
Revize úložiště: v2.0.9
Autorská práva ( c) 2006–2009 Gluster Inc. 
GlusterFS s ABSOLUTNĚ ŽÁDNÁ ZÁRUKA.
Můžete redistribuovat kopie GlusterFS za podmínek Pubense.lic GNU Lic General
[[email protected] glusterfs-2.0.9]#

Poté vytvoříme následující dva adresáře:

mkdir /mnt/glusterfs
mkdir /etc/glusterfs

Dále vytvoříme soubor /etc/glusterfs/glusterfs.vol:

vi /etc/glusterfs/glusterfs.vol
volume remote type protocol/client option transport-type tcp option remote-host server1.example.com # může být IP nebo název hostitele volba remote-subvolume brickend -volumevolume writebehind type performance/write-behind option window-size 4 MB subvolumes remoteend-volumevolume cache type performance/io-cache option cache-size 512 MB subvolumes writebehindend-volume

Ujistěte se, že používáte správný název hostitele serveru nebo IP adresu v řádku volby vzdáleného hostitele!

A je to! Nyní můžeme připojit souborový systém GlusterFS do /mnt/glusterfs jedním z následujících dvou příkazů:

glusterfs -f /etc/glusterfs/glusterfs.vol /mnt/glusterfs

nebo

mount -t glusterfs /etc/glusterfs/glusterfs.vol /mnt/glusterfs

Nyní byste měli vidět nový podíl ve výstupech...

mount

[[email protected] glusterfs-2.0.9]# mount
/dev/mapper/vg_server2-lv_root na / typ ext4 (rw)
proc na /proc typ proc (rw)
sysfs na /sys typu sysfs (rw)
devpts na /dev/pts typu devpts (rw,gid=5,mode=620)
tmpfs na /dev/shm typu tmpfs (rw)
/dev/sda1 na /boot typu ext4 (rw)
žádný na /proc/sys/fs/binfmt_misc typ binfmt_misc (rw)
sunrpc na /var/lib/nfs/rpc_pipefs typ rpc_pipefs (rw)
/etc/glusterfs/glusterfs.vol na /mnt/glusterfs typu fuse.glusterfs (rw,allow_other,default_permissions,max_read=131072)
[[email protected] glusterfs-2.0.9]#

... a...

df -h

[[email protected] glusterfs-2.0.9]# df -h
Systém souborů            Velikost  Použito Využití % Připevněno na
/dev/mapper/vg_server2-lv_2-lv 2 G 2 G 2 G 2 G 2 G 2 G 2 G 2 G 2                  
tmpfs 185m 0 185m 0%/dev/shm
/dev/sda1 194m 23m 161m/boot
/etc/glusterfs/glusterfs.vol
29g 2,7g 25g 10 % /mnt/glusterfs
[[email protected] glusterfs-2.0.9]#

Místo ručního připojování sdílené složky GlusterFS na klienta můžete upravit /etc/fstab tak, aby se sdílená složka připojila automaticky, když se klient zavede.

Otevřete /etc/fstab a připojte následující řádek:

vi /etc/fstab 
[...]/etc/glusterfs/glusterfs.vol /mnt/glusterfs výchozí nastavení glusterfs 0 0

Chcete-li otestovat, zda váš upravený /etc/fstab funguje, restartujte klienta:

restartovat 

Po restartu byste měli najít podíl ve výstupech...

df -h 

... a...

mount

  • GlusterFS:http://www.gluster.org/
  • Fedora:http://fedoraproject.org/

Fedora
  1. Vytvoření samostatného úložného serveru podobného NFS pomocí GlusterFS 3.2.x na Ubuntu 12.10

  2. Vytvoření samostatného úložného serveru podobného NFS s GlusterFS na Debianu Lenny

  3. Vytvoření samostatného úložného serveru podobného NFS pomocí GlusterFS 3.0.x na Debian Squeeze

  1. Vytvoření samostatného úložného serveru podobného NFS s GlusterFS na CentOS 5.4

  2. Vytvoření samostatného úložného serveru typu NFS pomocí GlusterFS 3.2.x na CentOS 6.3

  3. Nastavte si ownCloud 5 na Fedoře 18

  1. Vytvoření samostatného úložného serveru podobného NFS pomocí GlusterFS 3.2.x na Debian Wheezy

  2. Instalace Fedora Server 21 – Krok za krokem se snímkem obrazovky

  3. Instalace Fedora Server 22 – Krok za krokem se snímkem obrazovky