GNU/Linux >> Znalost Linux >  >> Cent OS

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

Tento tutoriál ukazuje, jak nastavit samostatný úložný server na CentOs 6.3. 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)
  • server2.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 v obou systémech vypadal následovně:

vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.0.100   server1.example.com     server1
192.168.0.101   server2.example.com     server2

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

(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 Povolit další úložiště

server1/server2:

Nejprve importujeme klíče GPG pro softwarové balíčky:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Poté povolíme úložiště EPEL6 na našich dvou systémech CentOS:

rpm --import https://fedoraproject.org/static/0608B895.txt

cd /tmp
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6- 7.noarch.rpm

yum install yum-priorities

Upravte /etc/yum.repos.d/epel.repo...

vi /etc/yum.repos.d/epel.repo

... a přidejte řádek priority=10 do sekce [epel]:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
[...]

3 Nastavení serveru GlusterFS

server1.example.com:

GlusterFS je k dispozici jako balíček pro EPEL, proto jej můžeme nainstalovat následovně:

yum install glusterfs-server

Vytvořte spouštěcí odkazy systému pro démona Gluster a spusťte jej:

chkconfig --levels 235 glusterd na
/etc/init.d/glusterd start

Příkaz

glusterfsd --version

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

[[email protected] ~]# glusterfsd --version
glusterfs 3.2.7 vytvořeno 11. června 2012 13:22:28
Revize úložiště:git://git.gluster.com/glusterfs.git
Autorská práva (c) 2006-2011 Gluster Inc.
GlusterFS se nevztahuje ABSOLUTNĚ ŽÁDNÁ ZÁRUKA.
Můžete redistribuovat kopie GlusterFS za podmínek GNU General Public License.
[[email protected] ~]#

Pokud používáte bránu firewall, ujistěte se, že jsou na server1.example.com otevřené porty TCP 111, 24007, 24008, 24009-(24009 + počet bloků na všech svazcích).

Dále vytvoříme sdílenou složku s názvem testvol na localhost (=server1) v adresáři /data (bude vytvořen, pokud neexistuje):

gluster volume create testvol server1.example.com:/data

[[email protected] ~]# svazek clusteru vytvořit testvol server1.example.com:/data
Vytvoření svazku testvol bylo úspěšné. Pro přístup k datům spusťte svazek.
[[email protected] ~]#

Spusťte hlasitost:

gluster volume start testvol

Stav svazku můžete zkontrolovat příkazem

gluster volume info
[[email protected] ~]# gluster volume info

Název svazku:testvol
Typ:Distribuovat
Stav:Spuštěno
Počet cihel:1
Typ dopravy:tcp
Kombiny:
Brick1:server1. example.com:/data
[[email chráněný] ~]#

Pokud vám hlásí, že je svazek spuštěn, je vše v pořádku, v opačném případě jej spusťte znovu.

Ve výchozím nastavení se ke svazku mohou připojit všichni klienti. Pokud chcete udělit přístup pouze k client1.example.com (=192.168.0.101), spusťte:

gluster volume set testvol auth.allow 192.168.0.101

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).

Informace o svazku by nyní měly zobrazovat aktualizovaný stav:

gluster volume info
[[email protected] ~]# gluster volume info

Název svazku:testvol
Typ:Distribuovat
Stav:Spuštěno
Počet cihel:1
Typ dopravy:tcp
Kombiny:
Brick1:server1. example.com:/data
Možnosti překonfigurovány:
auth.allow:192.168.0.101
[[email protected] ~]#

 

4 Nastavení klienta GlusterFS

server2.example.com:

Na klienta můžeme nainstalovat klienta GlusterFS následovně:

yum install glusterfs-client

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

mkdir /mnt/glusterfs

A je to! Nyní můžeme připojit souborový systém GlusterFS do /mnt/glusterfs pomocí následujícího příkazu:

mount.glusterfs server1.example.com:/testvol /mnt/glusterfs

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

mount

[[email chráněno] ~]# připojení
/dev/mapper/vg_client1-LogVol00 na / typ ext4 (rw)
proc na /proc typ proc (rw)
sysfs na /sys typ sysfs (rw)
devpts na /dev/pts typ devpts (rw,gid=5,mode=620)
tmpfs na /dev/shm typ tmpfs (rw)
/dev/sda1 na /boot typ ext4 (rw)
žádný na /proc/sys/fs/binfmt_misc typ binfmt_misc (rw)
sunrpc na /var/lib/nfs/rpc_pipefs typ rpc_pipefs (rw)
server1.example.com:/testvol na /mnt/glusterfs typu fuse.glusterfs (rw,allow_other,default_permissions,max_read=131072)
[[email protected] ~]#

... a...

df -h

[[email protected] ~]# df -h
Systém souborů            Velikost  Použitá Dostupnost Využití % Připevněno na
/dev/mapper/vg_client1-LogVol00
<         7 9.             1 G.            1.       /> tmpfs 499m 0 499m 0%/dev/shm
/dev/sda1 504m 39m 440m 9%/boot
server1.example.com:/testvol
9,7G 1,7G 7,5G 19 % /mnt/glusterfs
[[e-mail chráněný] ~]#

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  
[...]
server1.example.com:/testvol /mnt/glusterfs glusterfs defaults,_netdev 0 0

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

reboot

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

df -h

... a...

mount

  • GlusterFS:http://www.gluster.org/
  • Dokumentace GlusterFS 3.2:http://download.gluster.com/pub/gluster/glusterfs/3.2/Documentation/AG/html/index.html
  • CentOS:http://www.centos.org/

Cent OS
  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. Úložiště s vysokou dostupností s GlusterFS na CentOS 5.4 – Automatická replikace souborů (zrcadlení) mezi dvěma úložnými servery

  3. Distribuované replikované úložiště napříč čtyřmi uzly úložiště s GlusterFS na CentOS 5.4

  1. Distribuované úložiště mezi čtyřmi uzly úložiště s GlusterFS na CentOS 5.4

  2. Pruhování přes čtyři uzly úložiště s GlusterFS na CentOS 5.4

  3. Úložiště s vysokou dostupností s GlusterFS 3.2.x na CentOS 6.3 – Automatická replikace souborů (zrcadlení) přes dva úložné servery