Global Network Block Device


Global Network Block Device
Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Das Global File System (GFS) ist ein Cluster-Dateisystem, das es Rechnern ermöglicht, gleichzeitig auf das Dateisystem eines Storage Area Network zuzugreifen und zugleich die Konsistenz der enthaltenen Daten gewährleistet. Das Storage Area Network kann darüber hinaus über zusätzliche Techniken selbst erzeugt werden (iSCSI, AoE (ATA Over Ethernet), FC (Fiberchannel), NBD (Network Block Device) und weitere). Das Datei-Locking, ohne das ein Cluster-Dateisystem nicht funktionieren würde, übernimmt ein Locking-Modul von GFS (meist lock_gulm oder etwas neuer lock_dlm).

GFS ist Teil des Linux-Kernels und wird in dessen Rahmen entwickelt. Treibende Kraft ist dabei die Firma Red Hat.

Inhaltsverzeichnis

Geschichte

GFS war ursprünglich als Teil einer Machbarkeitsstudie an der Universität von Minnesota entwickelt worden. Später wurde es von Sistina Software übernommen, die es als Open-Source-Projekt weiterentwickelte. 2001 entschied Sistina Software, GFS als proprietäre Software weiterzuentwickeln. 2003 kaufte Red Hat dann Sistina Software (und damit auch GFS) und veröffentlichte GFS 2004 mit anderen Cluster-Infrastruktur-Programmen unter der GPL.

Technisches

  • GFS ist ein Filesystem, das über das entsprechende GFS-Kernel-Modul und eine funktionierende Cluster-Konfiguration gemountet werden kann.
  • GFS arbeitet mit Kernelmodulen und Diensten für das Management (z. B. CMAN, ccsd), Locking (lock_gulm oder lock_dlm) und Fencing (z. B. fenced für das Ausschließen von ausgefallenen Cluster Nodes).
  • Exportiert werden die lokalen Blockdevices meist über GNBD (Global Network Block Device).
  • Exportierte, GFS formatierte Blockdevices können über gnbd_import auf anderen Rechnern im GFS-Cluster importiert und lokal gemountet werden.
  • Mit GFS ist es möglich, ein Single System Image (SSI) auf Dateisystemebene, einen sogenannten Diskless Shared Root Cluster, aufzusetzen.

Kernel Module und Dienste

  • GFS 6.1 - Cluster-Dateisystem
  • DLM - Distributed-Lock-Manager
  • CMAN - Cluster-Manager
  • CLVM - Cluster-Erweiterung zum LVM2 (Logical Volume Manager)
  • CCS - Cluster-Konfigurations-System, welches die cluster.conf verwaltet
  • Fence - I/O Fencing-System, Trennung von unterbrochenen oder fehlerhaften Nodes im Cluster (z. B. über iLO)
  • GNBD - Global Network Block Device, Treiber der lokale Block Devices (Volumes) über das Netzwerk zur Verfügung stellt
  • RGManager - Ressourcen-Monitor und Gruppen-Manager, überwacht, startet und stoppt Ressourcen, Dienste und Applikationen
  • GULM - Reduntanter, Serverbasierter Cluster und Lock Manager für GFS 6.1 (Alternative zu CMAN und DLM)
  • Magma - Cluster/Locking Bibliothek für Transaktionen zwischen GULM und CMAN/DLM
  • GFS Deployment Tool - Ein grafisches Tool für das Ausrollen von GFS auf mehrere Rechner
  • system-config-cluster - Grafisches Tool für das Verwalten des GFS-Cluster über mehrere Rechner

Export von Block Devices / Laufwerken über das Netzwerk

Global Network Block Device ist mit anderen Network-Block-Device-Treibern vergleichbar. Eine Partition auf einer Festplatte ist unter Linux/UNIX ein Block Device, da sie in Datenblöcken aufgeteilt ist. Partitionen werden meist logisch über LVM (Logical Volume Manager) oder CLVM (Cluster Logical Volume Manager) eingerichtet und einfach über GNBD exportiert.

Das Exportieren von Block Devices oder Verzeichnissen (z. B. Network File System, NFS) ist vergleichbar mit dem Freigeben von Verzeichnissen und Laufwerken unter Windows. Exportierte Block Devices können dann auf einem anderen System importiert und gemountet (eingebunden) werden.

Ziel ist es, dass mehrere Rechner auf dasselbe Dateisystem zugreifen und ihnen somit auch dieselben Daten zur Verfügung stehen. So können z. B. auch mehrere Webserver ein und dieselbe Webseite im Internet anbieten und dabei die Leistung von mehreren Rechnern nutzen.

Meist werden so GFS Volumes (Partitionen mit Dateisystem) innerhalb eines GFS-Clusters exportiert und auf mehreren Servern importiert.

  • GNBD besteht aus Kernel Modulen und einigen Anwenderprogrammen.
  • GNBD setzt ein funktionierendes Fencing (siehe GFS) voraus - meist der Dienst "fenced".
  • In einem GFS-Cluster übernimmt das Locking Protokoll von GFS das Filelocking und stellt somit die Konsistenz der Daten sicher.

Irrtümer in Verbindung mit GFS

Ein weit verbreiteter Irrtum ist die Annahme, ein Cluster-Dateisystem alleine könnte Daten global zur Verfügung stellen. Das ist so nicht richtig. Angenommen man stattet Rechner A und B mit GFS aus. Dadurch kann A nicht die Daten von B sehen und auch nicht anders herum. Warum? Es ist zwingend nötig, dass alle GFS-Rechner auf ein und denselben Storage zugreifen. Wenn A auf den lokalen Storage (also dessen Festplatte) zugreifen möchte, muss A seine Festplatte vorher mit einer Technik in das Netzwerk exportieren, damit B diesen Storage sehen kann. Genau das stellt GFS nicht zur Verfügung, sondern dieses so genannte Storage Area Network muss gekauft oder selbst gebaut werden (siehe Einleitung bzgl. der Möglichkeiten).

Ein weiterer Irrtum ist, man könnte durch ein Cluster-Dateisystem eine Redundanz der Daten erreichen. Auch das ist nicht seine Aufgabe. Das Storage Area Network selbst muss redundant sein, um die Verfügbarkeit der Daten zu gewährleisten. Das Cluster-Dateisystem "kennt" lediglich Mechanismen, um bei Problemen von A oder B selbständig für eine nahtlose Wiedereingliederung zu sorgen und eventuell noch nicht in das Storage Area Network übertragene Daten zu übertragen.

Diese Funktionalität versucht das mysqlfs bereitzustellen, welches versucht über fuse ein Filesystem mit globalem Namespace bereitzustellen, welches durch die mysql-ndb Engine Redundanz erhält.

Der Sinn eines Cluster-Dateisystems ist es, die Zugriffe auf ein Storage Area Network zu regeln, da es zu einem Desaster käme, wenn A und B gleichzeitig die gleiche Datei im Storage Area Network schreiben würden. Nicht mehr und nicht weniger.

Siehe auch

  • OCFS2 (Oracle Cluster File System 2)

Weblinks


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Global File System — Das Global File System (GFS) ist ein Cluster Dateisystem, das es mehreren Rechnern ermöglicht, gleichzeitig auf gemeinsamen Speicher zuzugreifen und das die Konsistenz der gespeicherten Daten gewährleistet. Häufig handelt es sich bei dem… …   Deutsch Wikipedia

  • Network neutrality in the United States — Network Neutrality Related issues and topics Automatic telephone exchange Data discrimination End to end principle Internet Protocol Tiered Internet Bandwidth Throttling …   Wikipedia

  • Global Positioning System — GPS redirects here. For other uses, see GPS (disambiguation). Geodesy Fundamentals …   Wikipedia

  • Network neutrality — This article is about the general principle of network neutrality. For its specific application to Canada, see Network neutrality in Canada. For its application to the U.S., see Network neutrality in the United States. Network Neutrality Related… …   Wikipedia

  • Network-attached storage — Not to be confused with Storage area network. Network attached storage Connects to Local area network via: Ethernet Hard drives via one of: SATA SAS USB Fibre Channel Common manufacturers HP NetApp Dell Cisco …   Wikipedia

  • Computer network — Computer networks redirects here. For the periodical, see Computer Networks (journal). Datacom redirects here. For other uses, see Datacom (disambiguation). Internet map. The Internet is a global system of interconnected computer networks that… …   Wikipedia

  • Private network — In the Internet addressing architecture, a private network is a network that uses private IP address space, following the standards set by RFC 1918 and RFC 4193. These addresses are commonly used for home, office, and enterprise local area… …   Wikipedia

  • File area network — File Area Networking refers to various methods of sharing files over a network such as storage devices connected to a file server or network attached storage (NAS). Background Data storage technology over the years has evolved from a direct… …   Wikipedia

  • Mobile Network Code — A Mobile Network Code (MNC) is used in combination with a Mobile Country Code (MCC) (also known as a MCC / MNC tuple ) to uniquely identify a mobile phone operator/carrier using the GSM/LTE, CDMA, iDEN, TETRA and UMTS public land mobile networks… …   Wikipedia

  • Mobile device forensics — Forensic science Physiological sciences …   Wikipedia