GFS
Was ist GFS?
Beim Global File System (kurz GFS) handelt es sich um ein Cluster Filesystem. Es wurde entwickelt um mehreren Rechnern den gleichzeitigen Zugriff auf ein Filesystem zu ermöglichen, und gleichzeitig die Konsistenz der darin enthaltenen Daten zu gewährleisten. Das dazu benötigte Blockdevice kann z.B. über iSCSI, FC, oder NBD angesprochen werden - das für die Konsistenz dringend notwendige Locking übernimmt ein Locking-Modul von GFS.
Zur Geschichte
GFS wurde einst von Sistina entwickelt und als GPL freigegeben. Später wurde Sistina von RedHat aufgekauft (und damit auch die Rechte an GFS) - leider gab es jedoch bis vor Kurzem keine Releases mehr. Erst im Juni 2004 hat RedHat die aktuelle Version wieder freigegeben.
Konfiguration des Linux-Kernels/der Software
Die nötigen Schritte zur Integration von GFS in den Kernel sind auf
der Seite von RedHat beschrieben:
http://sources.redhat.com/cluster/
Erstellen eines Filesystems
Als erster Schritt müssen die nötigen Kernel-Module geladen, und evtl. noch nicht vorhandene Einträge im /dev Verzeichnis erstellt werden:
depmod -a modprobe dm-mod device-mapper/scripts/devmap_mknod.sh modprobe gfs modprobe lock_dlm
Zum Starten und Stoppen der Dienste braucht es noch einige weiter Kommandos:
Zum Starten:
ccsd - Starts the CCS daemon cman_tool join - Joins the cluster fence_tool join - Joins the fence domain (starts fenced) clvmd - Starts the CLVM daemon vgchange -aly - Activates LVM volumes (locally) mount -t gfs /dev/vg/lvol /mnt - Mounts a GFS file system
Zum Stoppen:
umount /mnt - Unmounts a GFS file system vgchange -aln - Deactivates LVM volumes (locally) killall clvmd - Stops the CLVM daemon fence_tool leave - Leaves the fence domain (stops fenced) cman_tool leave - Leaves the cluster killall ccsd - Stops the CCS daemon



