Panasas Scale-out NAS, Teil 3 Die ausgeklügelte Software-Architektur des Panasas Dateisystems

Autor / Redakteur: Walter Schadhauser / Rainer Graefen

Im Gegensatz zu anderen Speicherprodukten, die Software für parallele Dateisysteme lose mit Legacy-Blockspeicher-Arrays koppeln, ist die PanFS-Lösung für die modularen und granularen ActiveStor-Gehäuse konzipiert und mit einem wartungsfreundlichen, im Feld austauschbaren Gerätedesign ausgestattet. Das Ergebnis ist eine leicht verwalt- und erweiterbare Unternehmenslösung.

Anbieter zum Thema

Hohe Skalierbarkeit und Effizienz
Hohe Skalierbarkeit und Effizienz
(Bild: Panasas)

Die PanFS-Plattform kombiniert die Funktionen eines dezentralisierten und geclusterten Dateisystems, eines Datenträger-Managers und einer skalierbaren softwarebasierten Erasure-Codierungs-Engine in einem einzigen Hochleistungssystem, das hunderte von Gigabytes an Daten pro Sekunde in einem einzelnen Namespace auf beliebig vielen Speichersystemen verarbeiten kann. Ein Systemadministrator ist so in der Lage, PanFS-Betriebsumgebungen in jeder Größenordnung zu verwalten, von wenigen Terabytes bis hin zu Dutzenden Petabytes.

Alle Zugriffe erfolgen über Mehrfach-Nutzer-Authentifizierungsschemata sowie über Zugriffsberechtigungen für Mehrfachzugriffs-Protokollsteuerungsdaten für eine reibungslose Integration in Linux-, macOS- und Windows-Umgebungen.

Clients, die höchste Performance benötigen, greifen über das DirectFlow-Paralleldatenprotokoll auf die PanFS-Architektur zu, während herkömmliche NFS- und SMB-Protokolle mittels der Übersetzung durch Gateway-Dienste Zugriff auf den Namespace erlangen.

Die PanFS-Architektur setzt sich aus folgenden Funktionsblöcken zusammen:

  • Paralleles Dateisystem: Koordinierung der Maßnahmen der Object Storage Devices und Verarbeitung der Metadaten
  • OSDFS: Speichern und Abrufen von Daten im Namen von Clientsystemen
  • Skalierbare Metadaten-Dienste: Cache-Kohärenz und Datei-Metadatenverarbeitung
  • Cluster-Verwaltungsdienste: Knoten, deren Zustand aktuell gut ist und die sich im „Quorum” befinden, und solche, bei denen das nicht zutrifft; Wiederherstellungsmaßnahmen bei Auftreten von Knotenausfällen, Konfigurationsänderungen usw.
  • Panactive Manager: CLI-, SNMP- und XML-Verwaltungsschnittstellen
  • Directflow-Protokoll: Nativer, hochleistungsfähiger, cache-kohärenter Dateizugriff für Linux und macOS
  • NFS-Protokoll: Standardmäßiges NFSv3-Protokoll für Linux, macOS und andere Betriebssysteme
  • SMB-Protokoll: Standardmäßiges SMBv3.1-Protokoll für Windows und macOS
  • Director-Gateway-Dienste: Support zum Exportieren der PanFS-Architektur über eine aufgesetzte Protokollimplementierung

Trickreiche Dateispeicherung in Objekten mit Erasure Codierung

Das clusterfähige parallele Dateisystem ist die Grundlage des Dateizugriffs im Scale-Out-NAS. Allerdings liegt der ganzen Speicheraktivität kein Blcokspeicher zugrunde, sondern ein dezentraler Objektspeichergeräte-Pool. Das objektbasierte Datenlayout ist eines der wichtigsten Designprinzipien für die hohe Skalierbarkeit und Effizienz der Panasas-Architektur. Dateien in der PanFS-Umgebung werden innerhalb von Objekten gespeichert.

Eigentlich passt der Datenschutz durch Erasure-Codierung nicht zu Objekten. Um jede Datei zu schützen, „splittet” Panasas die Datei oder zerlegen sie durch Striping in Streifen und verteilt sie über mehrere Objekte hinweg. Die Gesamtdatei wird in einem „virtuellen Objekt” zusammengefasst, das aus vielen Komponentenobjekten besteht, die die Dateisplitter speichern.

Die PanFS-Betriebsumgebung speichert lediglich die Komponentenobjekte; das virtuelle Objekt ist lediglich eine Zuordnungsübersicht, die die Zusammenstellung der Komponentenobjekte und zusätzlich die Striping-Parameter festlegt, die diese Datei ausmachen. Die Zuordnungsübersicht wird in der Nähe der Komponentenobjekte abgespeichert.

Um Fehler an einem Einzelspeicherknoten zu vermeiden, der sich auf mehr als ein Komponentenobjekt einer jeweiligen Datei auswirkt, werden sämtliche Komponentenobjekte für eine Datei über unterschiedliche Speicherknoten hinweg verteilt. Dateisystem-Metadaten (Informationen über Dateien) und Verzeichnisse werden ebenso innerhalb von Objekten gespeichert und werden in dem gleichen Objektspeicher aufbewahrt, wie die Objekte, die die Dateidaten enthalten.

Das Directflow-Protokoll ist der performante herstellerspezifische direkte Client-Zugriffs auf Object-Storage-Device-Daten. Clients, die das DirectFlow-Protokoll verwenden, lesen und schreiben Objekte direkt parallel in Speicherknoten und umgehen dabei den Metadaten-Manager. Directflow-Clients interagieren mit den Metadaten-Managern über einen Remote Procedure Call (RPC), um Zugriffsrechte und Standortinformationen für die Objekte, die Dateien speichern, zu bekommen (z. B. die Zuordnungsübersicht).

Das Object Storage Device File System

Alle PanFS-Datendienste benutzen die Funktionen der Speicherknoten. Die Software der Speicherknoten implementiert eine Abstraktion, die Object Storage Device File System (OSDFS) genannt wird. Das Directflow-Protokoll beschreibt Lese- und Schreibvorgänge auf Objektebene, die die Directflow-Client-Software vom Speicherknoten verlangt.

Zur Leistungsoptimierung setzt das OSDFS auf erweiterte Caching-Funktionen und die bestmögliche Anordnung von Objektdaten auf SSDs und HDDs. Zusätzlich zu einem Lese-Cache zur Verbesserung des Datenabrufs speichert das OSDFS neu zu schreibende Daten im Batterie-gepufferten DRAM zwischen. Das verringert die Datenfragmentierung und beschleunigt später die Lesevorgänge.

Das OSDFS legt anhand der Objektgröße für jedes Objekt das beste physische Speichergerät innerhalb des Speicherknotens fest. PanFS-Metadaten und Nutzerdateien mit einer Größe unter 60 KB werden auf der SSD des Speicherknotens abgelegt; alle anderen Nutzerdaten, die größer als 60 KB sind, werden auf den Festplatten des Speicherknotens abgelegt.

Skalierbare Metadaten-Dienste

PanFS-Metadaten-Dienste laufen auf Director-Knoten, implementieren die gesamte Dateisystem-Semantik und verwalten das Splitten von Daten (Striping) über die Speicherknoten hinweg. Sie steuern dezentralisierte Dateisystem-Operationen, wie z. B. die Metadatenkonsistenz auf Datei- und Objektebene, die Client-Cache-Kohärenz, die Wiederherstellbarkeit am Client-E/A nach Unterbrechungen, Speicherknoten-Operationen und den sicheren Mehrfach-Nutzer-Zugriff auf Dateien.

Die Konformität mit der POSIX-Richtlinie (Portable Operating System Interface) schreibt vor, dass jede Änderung der Verzeichnishierarchie oder der Datei-Metadaten konsistent sein muss; Director-Knoten verwenden ein Transaktionsprotokoll, um diese Eindeutigkeit sicherzustellen.

Mittels synchronem Replizieren eines jeden lokalen Transaktionsprotokolls auf einen weiteren Director-Knoten, dem zugeordneten Backup-Knoten, wird Fehlertoleranz sichergestellt. Die Backup-Knoten-Beziehungen werden automatisch zugewiesen und geändert.

(ID:45283536)