GlusterFS · 2 min read · Feb 07, 2026

Erstellen eines NFS-ähnlichen Standalone-Speicherservers mit GlusterFS auf Debian Lenny

Dieses Tutorial zeigt, wie man einen Standalone-Speicherserver auf Debian Lenny einrichtet. Anstelle von NFS werde ich hier GlusterFS verwenden. Das Client-System kann auf den Speicher zugreifen, als ob es sich um ein lokales Dateisystem handelt. GlusterFS ist ein clusterfähiges Dateisystem, das auf mehrere Petabyte skalierbar ist. Es aggregiert verschiedene Speicherbausteine über Infiniband RDMA oder TCP/IP-Verbindungen zu einem großen parallelen Netzwerkdateisystem. Speicherbausteine können aus beliebiger handelsüblicher Hardware wie x86-64-Servern mit SATA-II-RAID und Infiniband HBA bestehen.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

In diesem Tutorial verwende ich zwei Systeme, einen Server und einen Client:

  • server1.example.com: IP-Adresse 192.168.0.100 (Server)
  • client1.example.com: IP-Adresse 192.168.0.101 (Client)

Beide Systeme sollten in der Lage sein, den Hostnamen des anderen Systems aufzulösen. Wenn dies nicht über DNS möglich ist, sollten Sie die Datei /etc/hosts bearbeiten, sodass sie auf beiden Systemen wie folgt aussieht:

vi /etc/hosts

| 127.0.0.1 localhost.localdomain localhost 192.168.0.100 server1.example.com server1 192.168.0.101 client1.example.com client1 # Die folgenden Zeilen sind wünschenswert für IPv6-fähige Hosts ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts |

(Sie können auch IP-Adressen anstelle von Hostnamen in der folgenden Einrichtung verwenden. Wenn Sie IP-Adressen verwenden möchten, müssen Sie sich keine Gedanken darüber machen, ob die Hostnamen aufgelöst werden können oder nicht.)

2 Einrichtung des GlusterFS-Servers

server1.example.com:

GlusterFS ist als Debian-Paket für Debian Lenny nicht verfügbar, daher müssen wir es selbst erstellen. Zuerst installieren wir die Voraussetzungen:

aptitude install sshfs build-essential flex bison byacc libdb4.6 libdb4.6-dev

Dann laden wir die neueste GlusterFS-Version von http://www.gluster.org/download.php herunter und bauen sie wie folgt:

cd /tmp  
wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.1.tar.gz  
tar xvfz glusterfs-2.0.1.tar.gz  
cd glusterfs-2.0.1  
./configure --prefix=/usr > /dev/null
server1:/tmp/glusterfs-2.0.1# ./configure --prefix=/usr > /dev/null  
  
GlusterFS configure summary  
===========================  
FUSE client        : nein  
Infiniband verbs   : nein  
epoll IO multiplex : ja  
Berkeley-DB        : ja  
libglusterfsclient : ja  
mod_glusterfs      : nein ()  
argp-standalone    : nein  
  
server1:/tmp/glusterfs-2.0.1#
make && make install  
ldconfig

Der Befehl

glusterfs --version

sollte jetzt die GlusterFS-Version anzeigen, die Sie gerade kompiliert haben (in diesem Fall 2.0.1):

server1:/tmp/glusterfs-2.0.1# glusterfs --version  
glusterfs 2.0.1 built on May 29 2009 17:23:10  
Repository revision: 5c1d9108c1529a1155963cb1911f8870a674ab5b  
Copyright (c) 2006-2009 Z RESEARCH Inc.   
GlusterFS kommt ohne jegliche Gewährleistung.  
Sie dürfen Kopien von GlusterFS unter den Bedingungen der GNU General Public License weiterverbreiten.  
server1:/tmp/glusterfs-2.0.1#

Als nächstes erstellen wir einige Verzeichnisse:

mkdir /data/  
mkdir /data/export  
mkdir /data/export-ns  
mkdir /etc/glusterfs

Jetzt erstellen wir die GlusterFS-Serverkonfigurationsdatei /etc/glusterfs/glusterfsd.vol, die definiert, welches Verzeichnis exportiert wird (/data/export) und welcher Client sich verbinden darf (192.168.0.101 = client1.example.com):

vi /etc/glusterfs/glusterfsd.vol

| volume posix type storage/posix option directory /data/export end-volume volume locks type features/locks option mandatory-locks on subvolumes posix end-volume volume brick type performance/io-threads option thread-count 8 subvolumes locks end-volume volume server type protocol/server option transport-type tcp option auth.addr.brick.allow 192.168.0.101 # Bearbeiten und Liste der erlaubten Clients durch Komma getrennte IP-Adressen(namen) hier hinzufügen subvolumes brick end-volume |

Bitte beachten Sie, dass es möglich ist, Platzhalter für die IP-Adressen zu verwenden (wie 192.168.*) und dass Sie mehrere IP-Adressen durch Kommas getrennt angeben können (z. B. 192.168.0.101,192.168.0.102).

Anschließend erstellen wir die Systemstartlinks für das glusterfsd-Init-Skript…

update-rc.d glusterfsd defaults

… und starten glusterfsd:

/etc/init.d/glusterfsd start
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.