twobee - Fotolia
So erstellen Sie ein Cloud-fähiges verteiltes File System
Firmen, die herkömmliche Netzwerk-Dateifreigaben über Rechenzentren, Zweigstellen und öffentliche Cloud-Infrastrukturen hinweg erweitern möchten, haben mehrere Möglichkeiten.
Das global verteilte Dateisystem (Global Distributed File System) gibt es seit den frühen 1980er Jahren, als die Carnegie Mellon University das Andrew File System entwickelte. Es wurde zu einer der ersten Plattformen, die Entwickler für eine neue Ära von vernetzten Workstations und Servern bauten. In den folgenden Jahren haben die Entwickler das Konzept verfeinert und produktiv gemacht. Die jüngsten Weiterentwicklungen konzentrierten sich auf die Überbrückung der Lücke zwischen privaten Systemen in Rechenzentren und Zweigstellen und den IaaS-Ressourcen eines Unternehmens in Cloud-Umgebungen.
Eine der Kernfunktionen der Cloud ist ein verteilter Objektspeicherdienst, der über Regionen hinweg replizieren kann und auf den Administratoren über Standardprotokolle für die Dateifreigabe (File Shares) mit einem Speichergateway zugreifen können. Jetzt würden Unternehmen von der gleichen geografischen Redundanz profitieren, um Cloud- und On-Premises-Umgebungen zu überspannen.
Es ist wichtig, die Grundlagen eines verteilten Datei- oder Objektspeichers zu verstehen. Systeme wie das Andrew File System, Ceph und das ursprüngliche Google File System sind eine Form von Software-defined-Storage (SDS), die gespeicherte Daten von Metadaten durch getrennte Daten- und Steuerungsebenen trennt. Ein replizierter Kontroll-Server verwaltet typischerweise die Metadaten, oft in einer redundanten Multi-Master-Konfiguration. Die Daten werden in der Regel in kleinere Teile oder Chunks aufgeteilt und über mehrere Speicherknoten verteilt, die sich oft in verschiedenen Rechenzentren befinden.
Daten-Chunking funktioniert gut für Objektspeicher, aber nicht für traditionelle Dateisysteme - ob vernetzt oder nicht. Es ist möglich, mit Netzwerk-Dateiprotokollen wie NFS und SMB über ein Gateway auf verteilte Objektspeicher zuzugreifen. Bei nativen Dateispeichern ist es jedoch üblicher, geografische Redundanz mit der Andrew-File-System-Technik zu schaffen, die Freigaben (Shares) repliziert und ihnen einen global eindeutigen virtuellen Namensraum vorschaltet.
Das Microsoft Distributed File System beispielsweise trennt den logischen und den physischen Namensraum. Ein globaler Namespace-Server, der Metadaten und Zeiger (Pointer) auf verschiedene sekundäre Root-Server mit einem Zeiger auf die physischen Netzwerk-Dateifreigaben enthält, verwaltet den logischen Namespace.
Fast alle Produktimplementierungen an globalen verteilten Dateisystemen verwenden ähnliche Techniken. Eine logische Steuerebene verwaltet einen virtuellen Namensraum, der auf NAS-Freigaben oder Objekt-Buckets und Pools verweist, die über Speicherknoten an mehreren Standorten verteilt sind. Die Erweiterung eines globalen verteilten Dateisystems auf die Cloud ist relativ einfach. Cloud-Dienste stellen Datei- und Objektspeicher entweder über Standardprotokolle wie NFS und SMB oder über veröffentlichte APIs wie Amazon S3 und Google Cloud Storage bereit.
Produktübersicht: Global verteilte Dateisysteme
Im Folgenden finden Sie Zusammenfassungen einiger bekannter Unternehmensprodukte mit verteiltem Dateispeicher und, wo angegeben, mit Cloud-Anbindung. Beachten Sie, dass es sich hierbei um eine Auswahl repräsentativer Produkte handelt und nicht um einen umfassenden Einkaufsführer.
Cloudian HyperFile ist ein Scale-Out-Controller, der Standard-NAS-Dateizugriff mit einem eindeutigen Namespace auf einen Cloudian-Objektspeicher bietet. Er kann auf Daten auf AWS, Azure und Google Cloud zugreifen und diese replizieren. Er unterstützt mehrere, geografisch verteilte Controller. Die Lösung umfasst auch Datenprojektionsfunktionen wie Objekt- und Dateiversionierung, asynchrone Replikation und WORM-Laufwerke.
Dell EMC PowerScale ist die Hardware-Version der OneFS-Scale-NAS-Software, die ein geclustertes Dateisystem, Volume-Management, Datensicherungsservices und einen globalen Namensraum bietet. PowerScale-Knoten sind standardmäßige 1U-Server mit einem oder zwei Sockeln und zwei Sätzen dualer Netzwerkanschlüsse - einer für Frontend-Clients, einer für die Kommunikation innerhalb des Clusters - sowie vier oder acht Laufwerke und bis zu 384 GB RAM. OneFS-Cluster können auf bis zu 252 Knoten skaliert werden. OneFS enthält einen Load Balancer, der den Datenverkehr über das Cluster verteilt. Außerdem verfügt es über eine intelligente Failover-Funktion, die Lese- und Schreibvorgänge auf ausgefallenen Knoten unterbrechungsfrei auf einen anderen aktiven Knoten im Cluster umleitet.
IBM Spectrum Scale ist ein paralleles Dateisystem, das SSD-, HDD-, Band- und Objektspeicher unter einem einzigen globalen Namensraum vereinheitlichen und Daten über NAS- (NFS, SMB), Objekt- (S3, OpenStack Swift) und Big-Data-Protokolle (Hadoop Distributed File System) oder APIs bereitstellen kann. Es umfasst eine Auto-Tiering-Funktion, die mit IBM Cloud, AWS S3 oder OpenStack Swift Objektspeicher arbeitet. Als eigenständige Softwareschicht arbeitet Spectrum Scale mit einer Vielzahl von Servern und Betriebssystemen, darunter IBM Power Systems, die unter AIXlaufen. Spectrum Scale lässt sich mit dem IBM Elastic Storage System bündeln, das als 2U-Chassis oder als integriertes System im Rack-Format erhältlich ist.
NetApp OnTap ist eine umfassende Datenmanagement-Plattform, die mit Flash-, Disk- und Cloud-Storage unter Verwendung von SAN-, NAS- und Objektprotokollen arbeitet. Sie hilft, Daten innerhalb und zwischen lokalen Clustern und Cloud-Services über eine einzige Managementoberfläche zu verschieben. Sie kann je nach Datennutzung und -alter automatisch auf Cloud-Speicher zugreifen. OnTap umfasst eine Reihe von Enterprise-Storage-Funktionen wie Datenkompression, Deduplizierung, Quality of Service, Snapshots, Replikation, Spiegelung und Verschlüsselung. OnTap bietet einen globalen Namespace für File-Volumes, der On-Premises-Arrays wie das NetApp All Flash FAS und Cloud-Services mit Cloud Volumes, einer Reihe von Managed Services auf AWS, Google Cloud und Azure, umfassen kann.
Scality Ring ist eine Scale-out-Datei- und Objektsoftware, die auf x86-Linux-Systemen läuft. Sie bietet eine hochverfügbare Steuerungsebene, eine selbstheilende Infrastruktur und Kapazität im Petabyte-Bereich. Das globale verteilte Dateisystem bietet einen globalen Namensraum und eine standortübergreifende, asynchrone Replikation. Es unterstützt NFS- und SMB-Protokolle zusammen mit der S3-API. Der Zenko Multi-Cloud-Controller bietet einen einzigen Namespace für AWS S3, Azure Blob Storage, Google Cloud Storage, Wasabi, Ceph und herkömmliche NAS-Umgebungen.
Cloud-NAS-Gateways
Eine weitere Technik, mit der Admins ein Multi-Cloud-Dateisystem aufbauen können, ist die Verwendung eines Cloud-NAS-Gateways zwischen lokalen NAS-Arrays und Cloud-nativem Objektspeicher. Sie werden in der Regel als Hardware- oder Software-Appliance vor Ort implementiert, die als Proxy-Cache zwischen NAS- und Cloud-Umgebungen fungiert.
Zu den bekannten Produkten gehören:
- Azure FXT Edge Filer - ehemals Avere - arbeitet mit Azure Blob Storage. Wie andere Multi-Cloud-Dateidienste bietet FXT einen einzigen globalen Namespace.
- Ctera bietet sowohl einen Edge-Filer als auch einen Client-Agent, um lokale NAS- und AWS-, Azure-, IBM- und Dell EMC-Cloud-Umgebungen zu verbinden. Es bietet einen globalen Namespace, der Standorte und Clouds umfasst.
- Nasuni UniFS ist so etwas wie ein Hybrid zwischen einem Multi-Cloud-Dateisystem und einer Gateway-Appliance. Es bietet eine Software-Kontrollebene, die herkömmliche NAS-Filer und Cloud-Umgebungen verbindet, aber alle Daten auf Cloud-Objektspeicher speichert und dabei Edge-Caching-Appliances als Vermittler nutzt. Es unterstützt S3, Azure Blob Storage, Dell EMC Elastic Cloud Storage, Google Cloud Storage, Hitachi Object Storage, IBM Cloud Object Storage und Western Digital HGST.
- Panzura Freedom NAS nutzt ein globales Dateisystem, um Scale-Out-NAS-Cluster zu erstellen, die auf mehrere Rechenzentren, Zweigstellen und Cloud-Umgebungen erweitert werden können. Es umfasst Datendienste wie globale Inline-Deduplizierung, Komprimierung, Verschlüsselung und Spiegelung. Die Lösung kann automatisch Datenkopien in mehreren Clouds erstellen, um die Verfügbarkeit und Haltbarkeit zu erhöhen. Panzura Caching Appliances können als Cloud-Instanzen auf Elastic Compute Cloud, Azure, Google Cloud und IBM Cloud oder als lokale VMware ESXi-Hosts laufen. Das Unternehmen vertreibt außerdem drei Hardware-Appliances mit lokalen Caches von 7 bis 28 TB und kann 5.000 Benutzer gleichzeitig hosten. Die proprietäre Distributed-File-Locking-Technologie von Panzura garantiert die Konsistenz der Schreibreihenfolge von Daten über geografische Grenzen und mehrere Benutzer hinweg. Sie erhält den Daten- und Metadatenstatus während der gesamten Multiuser-Transaktionen aufrecht.