GlusterFS auf ZFS-Dateisystem

Vorbereitung

Debian unterstützt das Dateisystem ZFS mittels des Pakets zfs-dkms, das sich im contrib-Repository befindet. Zur Installation siehe https://www.stefanux.de/wiki/doku.php/linux/zfs

Partitionierung / Dateisystem

Nach dem Anlegen einer dritten primären Partition mit Hilfe von

$# fdisk /dev/sda

kann es ans Aufbringen des Dateisystems gehen. Am besten mit dem leider noch nicht unter der GPL stehenden ZFS.

Speziell für LXC macht es allerdings Sinn. Siehe dazu https://kayama.dp.ua/blog/building-an-lxc-server.html Hier ist ein Ausschnitt daraus, was die wichtigsten für uns interessanten Schritte betrifft:

$# zpool create -f tank /dev/sda3
$# zfs set dedup=off tank
$# zfs create tank/lxc
$# zfs create -o mountpoint=/var/lib/lxc tank/lxc/containers
$# zfs set acltype=posixacl tank/lxc/containers
$# df -h /tank/
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
tank             35G       0   35G    0% /tank
$#

Für die spätere Einrichtung des verteilten Dateisystems muss nun die vorliegende virtuelle Maschine 2 Mal geklont und an den Start gebracht werden, so dass wir dann instgesamt 3 VMs zur Verfügung haben.

Eindeutige Maschinen-ID

Beim Klonen von virtuellen Maschinen wird auch die Datei ‚/etc/machine-id‘ mit dupliziert. Das kann je nach Netzwerkanwendung zu Problemen führen!

Wir wollen deshalb neue Maschinen-Kennungen für unsere Debian Stretch VMs erzeugen. Zu Kontrollzwecken sollte man sich vor und nach dem Ausführen der folgenden Zeilen den Inhalt eben dieser Datei anzeigen lassen:

$# dbus-uuidgen > /var/lib/dbus/machine-id
$# rm /etc/machine-id
$# systemd-machine-id-setup

Einrichtung von GlusterFS

Als gutes Tutorial für den praktischen Einstieg in die Materie kann dieses Dokument dienen:

https://linuxconfig.org/configuration-of-high-availability-storage-server-using-glusterfs

Weitere gute Links: