Skip to article frontmatterSkip to article content

Glusterfs Replicated Volume mit Arbiter Host

Mit GlusterFS ein replicated Volume mit einem Arbiter Host erstellen

Replicated Volume mit Arbiter Host

Vorbereitungen

  1. Installation GlusterFS: docs.gluster.org/en/latest/Install-Guide/Install/

  2. GlusterFS Grundinstallation: docs.gluster.org/en/latest/Install-Guide/Configure/#for-debian

Hintergrund

Das GlusterFS soll als hochverfügbarer Speicher für Docker dienen und zwischen zwei VMs geteilt werden. Da aber bei einem “two-node-cluster” die Gefahr des Split-Brains hoch ist, wird ein Arbiter Host erstellt. Dieser dient als Zeuge und verhindert den Split Brain. Der Arbiter Host spart auch Speicherplatz da dieser keine Daten hält. Somit sind die Daten nur auf VM1 und VM3 vorhanden. Die Daten werden dann auf “/mnt/data” gemountet und können normal angesprochen werden.

Es wird ein Replicated Volume erstellt. Bei diesem Volume sind die Daten auf VM1 und VM3 vorhanden. Respektive des Raid1.

VM bei Netcup:

VM3:

VMs auf Proxmox:

VM2:

VM1:

Replicated Volumes erstellen

Info: Thin-Arbiter Volume

gluster peer status
gluster volume create gluster-storage replica 2 arbiter 1 gluster1:/gluster-data gluster3:/gluster-data gluster2:/gluster-data force

Das Force ist notwendig da die Daten auf “/” dem Host selbst liegen und keine weitere vhd oder weitere Festplatte verwendet wird.

gluster volume info

Hier sieht man, das der gluster Member “gluster2” der Arbiter Host ist und die anderen Hosts normale Data Member sind.

Client: Volume mounten beim Starten

Das mounten kann entweder manuell oder automatisch über die fstab erfolgen. Ich nutzte die fstab Datei.

Per apt den Client installieren.

apt -y install glusterfs-client

Test mount

Testen ob der mount funktionieren wird. Dieser sollte mit “df -h” eingesehen werden können.

mount -t glusterfs gluster1:/gluster-storage /mnt/data

Fstab anpassen

echo "gluster1:/gluster-storage /mnt/data glusterfs defaults,_netdev 0 0" >> /etc/fstab

Voilà