Mit einem Storage-Hypervisor wird es abstrakt

Was ist Speichervirtualisierung oder SDS?

| Autor / Redakteur: Thomas Drilling / Ulrike Ostler

Was ist unter Software Defined Storage (SDS), Storage Hypervisor und Speichervirtualisierung zu verstehen?
Was ist unter Software Defined Storage (SDS), Storage Hypervisor und Speichervirtualisierung zu verstehen? (Bild: © Cybrain - stock.adobe.com)

Die Begriffe Speichervirtualisierung, Storage-Hypervisor und Software Defined Storage meinem im Prinzip das Gleiche. Die physischen Eigenschaften von Speichergeräten werden durch Abstraktion und Poolbildung aufgehoben. Anwender müssen somit vorhandenen Speicherplatz nicht mehr entlang physischer Grenzen von Speichergeräten verwalten. Das erhöht die Flexibilität und macht Datenspeicher jeglicher Art auch skalierbarer.

Die Begriffe Speichervirtualisierung, Storage-Hypervisor und Software-Defined Storage (SDS) sind eng miteinander verwandt, auch wenn sie im Detail in einem anderen Kontext stehen. Das Ziel ist aber wie bei der Server- oder Netzwerkvirtualisierung immer das Gleiche: Abstraktion.

Je höher der Abstraktionsgrad, desto größer die Flexibilität, mitunter aber auch die Komplexität. So erlaubt ein Storage-Hypervisor den Administratoren ein Austauschen der “unter” den Speichern-Objekten liegenden physischen Geräte, ohne dazu die virtuelle Storage-Umgebung anpassen zu müssen.

Speicher-Virtualisierung setzt aber auch auf anderen Ebenen an, etwa bei der Arbeitsspeichervirtualisierung (Virtual Memory), wie sie bei allen modernen Betriebssystemen ab „Windows 3.0“ gang und gäbe ist. Das Konzept der virtuellen Speicherverwaltung (VMM) ist allerdings schon seit den 50er Jahren bekannt. Im Endeffekt teilen sich dabei mehrere parallel laufende Applikationen und Prozesse den vorhandenen, ausschließlich vom Betriebssystem verwalteten Arbeitsspeicher und können in Summe sogar mehr konsumieren, als physisch vorhanden ist.

Speichervirtualisierung und Software Defined Storage

Bei der Speichervirtualisierung hingegen geht es um die Abstraktion von physisch vorhandenen Speichergeräten. Administratoren bringt sie viele Vorteile, allen voran die Flexibilität in der Speichernutzung.

Eine gewisse Abstraktion ermöglichen ja bereits RAID-Systeme und RAID-Controller. Noch weiter geht der Abstraktionsgrad bei Software-basierten RAID-Lösungen wie LVM (Logical Volume Manager), das bei fast allen Enterprise-Linux-Systemen seit Jahren den Vorzug vor einer hardwarenahen Partitionierung von Datenträgern genießt oder bei „Storage Spaces“ und „VHD“s in „Windows-Server 2012 R2“ und jünger. LVM wurde ursprünglich von IBM für Unix entwickelt, nachher von der Firma Sistina auf Linux portiert und noch etwas später von Red Hat vereinnahmt.

LVM bietet ebenfalls eine Abstraktionsschicht zwischen physischen und „virtuellen“ Speichermedien, bei LVM „LVs“ - „Locical Volumes“ genannt, wobei die Abstraktionsschicht bei LVM Volume-Group (VG) heißt, welche die eigentlichen physischen Volumes (PVs) zusammenfasst. Die virtuellen Disks (LV) können dann vom Nutzer mit einem Dateisystem seiner Wahl in einer beliebigen (von physischen Volume) unabhängigen Größe formatiert, dynamischen wachsen sowie im laufenden Betrieb verkleinert oder vergrößert werden, solange die Gesamtgröße aller LVs die der VG nicht überschreitet. Ähnliches gilt für Storage-Spaces-Technologie in Windows Server mit Ihren Storage-Pools und vDisks.

Das von Microsoft mit „Windows Server 2012“ eingeführte Feature „Storage Spaces“ orientiert sich funktional an LVM geht aber in der neuen Version von 2016 noch deutlich weiter.
Das von Microsoft mit „Windows Server 2012“ eingeführte Feature „Storage Spaces“ orientiert sich funktional an LVM geht aber in der neuen Version von 2016 noch deutlich weiter. (Bild: Microsoft)

Auch die zahlreichen Produkte der Kategorie Software-Defined-Storage wie von Datacore, dem „Erfinder“ des Genres „Starwind“ , „OpenFilr“ & Co setzen auf eine Abstraktion zur Storage-Ebene und im Unterschied zu spezialisierten Storage-Herstellern auf Commodity-Hardware auf Backend-Seite.

Arten der Speichervirtualisierung

Von der Sache her unterscheidet man in der Informatik unterschiedliche technologische Konzepte der Speichervirtualisierung, zum Beispiel „Outband beziehungsweise „Switch-basiert“, „In Band“, „Host-basiert“ oder die „Virtualisierung über ein Speichersystem“.

Der Ansatz Outband, also: Switch-basiert, hat heute allerdings weitgehend ausgedient. Da die Virtualisierung hierbei nicht im Datenpfad passiert, sondern nahe am Switch, führt die Virtualisierung, wenn überhaupt, nur zu sehr geringen I/O-Verzögerungen. Allerdings bietet diese zum Beispiel von „EMC Invista“ oder „HP SVSP“ verwendete Technik keine Möglichkeit, im Datenpfad ein Caching einzusetzen. Dadurch hängt die Performance der Virtualisierung direkt und ausschließlich von den Fähigkeiten des unterliegenden Speichersystems ab.

Beim Virtualisierungsverfahren „In Band“ wird ein spezielles Virtualisierungssystem im SAN direkt im Datenpfad etabliert, wodurch jeglicher IO durch die Virtualisierungsebene geleitet wird. Die Virtualisierung ist damit für den Sever vollständig transparent - das Virtualisierungssystem selbst mutiert zur Speicherinstanz.

Der Hauptvorteil besteht dabei darin, dass die Server keine speziellen Treiber für die Speicherhardware benötigen, weil diese ja von den Servern gar nicht „gesehen“ wird. Zudem verbessert der integrierte Cache die Performance.

„Datacore SAN Symphony“ führt seit nunmehr 19 Jahren den SDS-Markt an.
„Datacore SAN Symphony“ führt seit nunmehr 19 Jahren den SDS-Markt an. (Bild: Datacore)

Allerdings verschlechtert sich die Performance mittelbar wieder, wenn das Virtualisierungssystem selbst schwache Cache-Eigenschaften aufweist. Diese sollen ja eigentlich dazu beitragen, die durch den Virtualisierungs-Layer erhöhte Latenz wieder auszugleichen. Prominentester und ältester Vertreter der Gattung ist „Datacore SAN Symphony“. Sehr populär ist aber auch „Falconstor“.

Eine unmittelbar im Speichersystem durchgeführte Virtualisierung bietet die Möglichkeit, auch Fremdspeicher zu integrieren und damit den Vorteil, dass sich sämtliche Funktionen - auch von Fremdspeicher - von einer zentralen Stelle aus verwalten lassen, eine gute Lösung also zum Konsolidieren verschiedener Speichersysteme. Prominente Lösungen sind etwa „HP Storwize V7000“ oder „Hitachi Data System USP-V“.

Speichervirtualisierung auf dem Host

Bei der Host-basierten Speichervirtualisierung kümmert sich ein Treiber oder Kernel-Modul auf dem Host-System um sämtliche Virtualisierungsfunktionen, wie bei LVM oder Storage Spaces beschrieben. Anwender benötigen damit keine zusätzliche Hardware und so bietet die Methode die beste Performance aller Speichervirtualisierungsverfahren, weil ja sämtliche Speichergeräte unmittelbar, also ohne zusätzliche Latenzen angesprochen werden.

Unified Storage mit Datacore SAN Symphony
Unified Storage mit Datacore SAN Symphony (Bild: Datacore)

Hinzu kommt, dass auf dem Host eingesetzte Caching-Verfahren prinzipiell schneller sind, als ein SAN-Cache. Zudem skalieren solche Systeme im Prinzip ohne Einschränkungen und die Funktionen und die Speichervirtualisierung steht direkt aus dem Betriebssystem des Hosts heraus zur Verfügung. Ebenfalls für die Host-basierte Speichervirtualisierung spricht, dass sich unterliegende Speichersysteme einfach austauschen lassen. Das Verfahren eignet sich somit auch besonders gut für virtuelle Maschinen.

Allerdings ist die Host-basierte Speichervirtualisierung immer spezifisch für die gewählte Betriebssystemplattform. Sollen zudem mehrere Hosts auf solche Speichersysteme zugreifen können, bedarf es einer Cluster-fähigen Lösung, die dann auch Features wie Live-Migration oder High Availability (HA) unterstützt. Populäre Vertreter sind „Virsto“, „Datacore Hyer-Convergend Virtual SAN“ oder „Open vStorage“, sieht man mal von HC-Lösungen wie „VMware Virtual SAN“, „Nutanix“ oder „Simplivity“ ab.

Netapp Storage Virtual Machine

Exemplarisch für die zahlreichen, bei den klassischen SAN-Herstellern eingesetzten Technologien sei hier noch auf das Konzept der „Storage Virtual Machines“ bei „Netapp Clustered Data Ontap“ hingewiesen. Hier erfolgt der Datenzugriff immer über ein logisches Konstrukt, das bei Netapp „Storage Virtual Machine“ (SVM) heißt (früher „Vserver“).

Schematische Darstellung einer Netapp-SVM
Schematische Darstellung einer Netapp-SVM (Bild: Netapp)

Mit einer SVM lassen sich die verwendeten physischen Ressourcen austauschen, ohne dass irgendwelche Änderungen oder Unterbrechungen auf Client- oder Host-Seite erforderlich sind. Konkret ist eine SVM ein sicherer, virtualisierter Storage-Container, der über komplett eigene Management-Security-Features, IP-Adressen und Namespaces verfügt.

Somit kann eine SVM bei Netapp Volumes auf beliebigen Nodes im Netapp-Cluster enthalten. Jeder Cluster kann dabei aus bis zu mehreren hundert SVMs bestehen und unterstützt ein oder mehrere SAN-Protokolle wie FC, FCoE, iSCSI oder NAS-Zugriffsprotokolle (NFS, pNFS, CIFS). Dabei enthält jede SVM mindestens ein Volume und eine logische Schnittstelle (Logical Interface), bei Netapp LIF genannt.

Die Bildung von Speicherpools

Die physikalischen Aufteilungen von Storage-Systemen gelten beim Einsatz von Speichervirtualisierung nicht mehr: Die Virtualisierung stellt nur Speicher-Pools zur Verfügung - welche Hardware dahinter hängt, spielt aus Sicht der Anwender keine Rolle mehr. Durch die virtuelle Verwaltung dieser Pools können Storage-Lösungen verschiedener Hersteller und Techniken zentral und flexibel verwaltet werden.

Eine regelbasierte Virtualisierung teilt die Speicherpools automatisiert bestimmten Anwendungen zu. Die Virtualisierung findet etwa bei RAID-Systemen schon in der Hardware und ihrer Firmware statt, in Speichernetzen verteilt eine Software-gesteuerte Virtualisierungsinstanz die Daten, und auf dem Server virtualisieren Host Bus Adapter (HBA), Datenbanken, Dateisysteme und Volume Manager die Datenflut.

Über den Autor:

Thomas Drilling ist freier Autor und IT-Berater. Auf DataCenter-Insider schreibt er einen eigenen Blog: „Drillings Open-Source-Eck“.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44863572 / Definitionen)