Storage System: Skalierung mit GlusterFS

  • GlusterFS in Muenchen

Die GlusterFS Skalierung

GlusterFS ist ein Dateisystem welches es ermöglicht dieses über das Netzwerk bereit zu stellen. Hierbei wird nicht das Storage Device oder die Festplatte mit GlusterFS formatiert, sondern der GlusterFS Dienst oder auch der Server greifen auf vorhandene Partitionen und Dateisysteme zu. Die Partitionen mit deren Dateisystemen und deren Verzeichnisse, welche man in GlusterFS einbindet, heißen in GlusterFS Bricks.
Man kann in GlusterFS mehrere Bricks in ein GlusterFS Volume zueinander schalten. Ein Brick kann verteilt auf mehreren Servern oder nur auf einem Server vorhanden sein.
Ein GlusterFS Volume kann mehrere Eigenschaften annehmen. Distributed, replicated oder striped kann die Eigenschaft in einem GlusterFS sein.
Hierbei können auch die Eigenschaften, um z. B. mehr Performance zu bekommen, gemixt werden.
 

Ein GlusterFS Beispiel Setup:

GlusterFS Beispiel Muenchen
 

Die GlusterFS Protokolle

NFS

Das Volume kann durch den intern eingebauten NFS Server exportiert werden. Die Zugriffsberechtigung und NFS Features übernimmt hierbei der GlusterFS Dienst.

Hierbei kann jeder Server, der das Volume bereit hält, das Volume exportieren und über NFS bereitstellen. Falls der NFS Mount Point oder auch der per NFS verbundene Server ausfällt, muss entweder die IP Adresse des Servers welcher ausgefallen ist übernommen werden, oder der Client verbindet sich manuell mit einem anderen Server der Mitglied des Volumes ist.

http://blog.gluster.org/category/performance/

Samba/CIFS/SMB

GlusterFS hat eine API, um mit einem Samba Server-Dienst zu kommunizieren und das Volume zu übergeben. Der Samba Dienst exportiert das GlusterFS Volume. Auf diese Art auf das Volume zuzugreifen ist ähnlich redundant und hochverfübar, wie die Methode über NFS.

Ein Samba GlusterFS Setup kann hier nachgeschlagen werden:

http://blog.gluster.org/category/samba/

GlusterFS Nativ mit und ohne mount.fuse

Hierbei greift der Client auf seine LibGfApi zurück. Diese Library ist für GlusterFS, und kann sich nativ mit den Volumes verbinden. Hierbei kann der Client direkt mit einem Server verbinden, welcher das Volume bereit hält.

Die LibGfApi ist mittlerweile nativ in Qemu/KVM integriert worden und kann somit direkt in KVM für Virtuelle Maschinen für das GlusterFS Volume über das Netzwerk bereit gestellt werden. Falls dann einer der Server nicht verfügbar sein sollte, kann der Client den Failover vornehmen, da er über die Server des Volumes Bescheid weiß.

Die Skalierung

Um mehr Speicherplatz im Volume zu erhalten, muss man einfach nur mehr Server kaufen, ein Verzeichnis als Brick erstellen, und dieses GlusterFS zur Verfügung stellen. Das wars, mehr ist nicht zu tun. Wenn man sich z. B. für das Distributed oder Striped Volumes entschieden hat, kann man hierbei auch die Performance steigern, in dem man neue Hardware seinem GlusterFS spendiert.

Die Hardware

Für optimale Ergebnisse empfehlen wir die UCS C-Server Serie von Cisco Systems Inc.

Cisco C240 M4 Rack Server

C220 M4 Server Muenchen
  • 2x Intel® Xeon® Processor E5-2630 v3
  • 64GB DDR4 (4x 16GB 2133 MHz)
  • Cisco Virtual Interface Card 1227 MLOM 2 x 10 Gbit
  • 8 x 1 TB 2.5" 6Gb SAS 7.2K RPM SFF HDD
  • 4 x 120 GB Enterprise Value 6G SATA SSD