| XFS | |||||
|
XFS ist ein Journaling Dateisystem von Silicon Graphics für UNIX-Derivate und Linux-Distributionen. XFS wurde ursprünglich für IRIX entwickelt und ist heute quelloffen. Es wird allgemein als leistungsfähiger als ReiserFS eingeschätzt. XFS unterstützt Zugriffskontrolllisten und Disk Quotas und ist fester Bestandteil des Linux Kernels seit der Version 2.6. Mit Clustered XFS wird ein gleichzeitiger und konfliktfreier Zugriff auf das System für mehrere Benutzer ermöglicht. Clustered XFS ist ein Clustered Journaling Dateisystem (CXFS). Die maximale Datei- und Dateisystemgröße beträgt jeweils 8 Exbibyte. Es werden Blockgrößen von 512 Byte bis 64 Kibibyte unterstützt. Die Dateisicherung und Änderungen können im laufenden Betrieb stattfinden, ohne Aushängen des Dateisystems. Die maximale Dateinamenlänge beträgt 255 Byte. XFS bietet eine Unterstützung für Hierarchische Speichersysteme (HSM) und Volume Manager sowie die Möglichkeit Sparse Dateien zu speichern. Für den schnellen Dateizugriff werden XFS Dateisysteminhalte in Form eines B+-Baumes organisiert. Das Journal in XFS wird seriell abgelegt und nicht in Form von B-Bäumen oder Heaps. Die maximale Datei- und Dateisystemgrösse von 8 Exbibyte kann mit heutigen Betriebssystemen nicht erreicht werden. Die Grenze des Dateisystems bei Linux 2.4 beträgt 16 (64) Tebibyte bei einer Speicherseitengrösse von 4 (16) Kibibyte Unterstützte Betriebssysteme sind neben Linux und IRIX auch FreeBSD. |
|||||
| Siehe auch: Journaling-Dateisystem Cluster-Dateisystem Reiser-File-System linux dateisysteme Fourth-Extended-Filesystem ZFS | |||||
| Cluster-Dateisystem | |||||
|
Ein Cluster Dateisystem ermöglicht einen konkurrierenden Zugriff auf einen gemeinsam genutzten Festspeicher (Shared Storage) in einem Rechnercluster. Dabei wird der gemeinsame Zugriff oft durch ein Storage Area Network auf Basis von Fibre Channel ermöglicht. Die einzelnen Ressourcen eines Cluster File Systems können auf die Rechner des Clusters auch ohne die Hilfe eines Servers zugreifen. Der SAN-Aufbau ermöglicht, dass die entsprechenden Rechner-Ressourcen im Verbund verfügbar sind. Ein CFS (Cluster File System) kann eine Performance-Steigerung bringen, insbesondere bei Verwendung von Datenbanken und bei der Handhabung von grossen Transaktions- und Datenvolumina. CFS sind dann Network File Systemen überlegen. Bekannte Cluster-Filesysteme sind: AdvFS (Advanced File System, Hp Tru64), RMS (Record Management Services, OpenVMS), OCFS (Oracle Cluster File System, Windows/Linux, ausschliesslich für ORACLE-Datenbanken bzw. OCFS 2 für Linux und Bestandteil des Linux Kernels seit Version 2.6.16), Global File System (GFS), General Parallel File System von IBM für Linux und AIX, Clustered XFS (CXFS für IRIX, Solaris, Linux, Windows und Mac OS X), Vertitas, Red Hat GFS oder Sun GFS (Solaris). Cluster Server mit einem Cluster Dateisystem sind nicht von einem weiteren Server abhängig. Mit einem SAN (Storage Area Network) auf der Grundlage von Fibre-Channel-Verbindungen werden Plattensysteme an mehrere Server zugleich angebunden. |
|||||
| Siehe auch: Cluster Server-Cluster SAN Fibre-Channel linux Red-Hat Solaris XFS Global-File-System | |||||
| Global-File-System | |||||
|
Das Global File System (GFS, nicht zu verwechseln mit dem Google File System) und das Global File System 2 (GFS2) ist ein Cluster Dateisystem (Shared Disk File System oder Cluster File System) für Linux Cluster. Ein Cluster Dateisystem nutzt SAN (Storage Area Network) oder eine RAID-Array um den Zugriff auf Speicherplatten (HDD, SSD usw.) auf Blockebene zu ermöglichen. Das GFS unterscheidet sich von anderen Netzwerkdateisystemen oder Verteilten Dateisystemen wie AFS, InterMezzo oder Coda insofern, als allen Knoten direkten Zugriff zu demselben verteilten Speicherblock ermöglicht. Zusätzlich kann GFS als lokales Dateisystem eingesetzt werden. GFS Historisches Das Global File System wurde 1997 im Rahmen einer Studie an der Universität von Minnesota entwickelt. Ursprünglich lief es auf IRIX für Silicon Graphics und wurde dann auf Linux portiert als Open Source Projekt. Nachdem Sistina Software das Projekt übernahm wurde es in ein kommerzielles Projekt umgewandelt. Zwischenzeitlich entstand ein Fork (OpenGFS) der den Distributed Lock Manager OpenDLM einschloss. Schliesslich wurde Sistina Software Ende 2003 von Red Hat aufgekauft, so dass das GFS heute von Red Hat weiterentwickelt und betrieben wird. GFS Cluster Infrastruktur, Locking Red Hat entwickelte mehrere Teile einer Cluster Infrastruktur wie lock_dlm und lock_gulm die auf auf CMAN, DLM und GULM basieren. Weiterhin wurde lock_nolock hinzugefügt. Die Kernelmodule CMAN und ccsd sind für das Dateisystemmanagement verantwortlich, lock_gulm und lock_dlm für das Locking. Der Distributed Lock Manager (DLM) soll Inkonsistenzen beim Zugriff auf die verteilten Daten und Shared Ressources vermeiden. SAN-Umgebung Der Aufbau des GFS basiert auf die Anbindung zu einer Stoarge Area Network (SAN) Umgebung. Die SAN-Umgebung kann in Form einer Fibre-Channel-Architektur mit Network Block Device, einer iSCSI-Implementierung oder mit einer Infiniband Lösung oder auf ATA over Ethernet Basis realisiert sein. Die Kernkomponenten des Software Stacks von GFS umfassen die Cluster Software, der Locking-Mechanismus und das Fencing. Der Administrator wählt in der Cluster Konfiguration aus, welche Knoten zum Cluster dazugehören und damit auf das Cluster Dateisystem zugreifen können. Beim Locking z.B. greift GFS auf die Cluster Prozesse zurück. Fencing Beim Fencing wird der Cluster Rechner vom Cluster-Storage getrennt. Dies soll helfen, die Konsistenz des Clusterdateisystems zu bewahren, da sonst 'tote Knoten' auf das System zugreifen. Fencing wird angewendet, wenn durch entsprechende Heartbeats festgestellt wurde, dass Knoten nicht intakt sind. Es gibt zwei grundsätzliche Ansätze von Fencing: beim Zoning oder I/O-Fencing wird die Trennung beim Fibre-Channel Switch vorgenommen indem der entsprechende Port deaktiviert wird. Dadurch hat der Cluster-Rechner keinen Zugriff mehr auf die SAN-Device. Die andere Methode ist das Power-Fencing bei der der 'tote' Knoten ausgeschaltet oder rebootet wird. Beim GFS ist es möglich, das Power Fencing über integrierte Schnittstellen wie das Intelligent Platform Management Interface (IPMI) oder integrated Lights Out (iLO) zu bewerkstelligen. Weiterhin ist das GFS2 in der Lage, Power-Switches zu adressieren um die daranliegenden Cluster-Rechner vom Strom zu nehmen. Kontextabhängige Pfade Tritt die Situation auf, dass mehrere Cluster Rechner auf dieselben Verzeichnisse zugreifen müssen so helfen kontextabhängige Pfade (Context Dependent Path Names). Bei kontextabhängigen Pfaden greifen Cluster-Rechner zwar auf dieselben Pfaden zu, werden aber auf der physischen Ebene auf unterschiedliche Datenblöcke umgeleitet. Der Clustered Logical Volume Manager 2 hilft mehrere Partitionen zu verwalten. GFS als Journaling Dateisystem, Abgrenzung GFS zu GFS2 GFS und GFS 2 sind auch Journaling Dateisysteme. GFS 2 unterstützt ähnliche Journaling Modi wie ext3. GFS 2 bietet im Unterschied zu GFS ein Metadaten Dateisystem, caching Access Control Lists (ACL), FIEMAP ioctl (um Abfrage Zuordungen von Inodes auf der Speicherplatte vorzunehmen) sowie spezifische Trace Punkte die seit Linux Kernel 2.6.32 verfügbar sind und einiges mehr. GFS Kernelmodule Weitere Kernelmodule sind: Global Network Block Device (das GNBD liefert Treiber der lokale Volumes oder Block Devices über das Netzwerk), Magma (Magma ist eine Bibliothek zum Locking für Transaktionen zwischen GULM und CMAN/DLM ) und einige weitere. Weitere GFS Eigenschaften Eine weitere Eigenschaft von GFS ist, dass es via das GFS-Kernel-Modul und einer eingestellten Cluster-Konfiguration gemountet werden kann. Das GFS ist in der Lage, ein sogenanntes Single System Image (SSI) auf Dateisystemebene aufzusetzen. Dieses Cluster wird Diskless Shared Root Cluster genannt. GFS2 ist im Linux Vanilla-Kernel enthalten. Heute ist GFS unter der GPL lizenziert. Vergleichbare Cluster Dateisysteme Vergleichbare Netzwerk Dateisysteme sind Oracles Clusterfilesystem 2 (OCFS2), Clustered XFS (CXFS, SGI) oder das General Parallel Filesystem (GPFS, IBM). |
|||||
| Siehe auch: Third-Extended-Filesystem Cluster-Dateisystem Kernel linux Google-BigTable Inode | |||||