Stor IT Back - Ihr Speicherspezialist

Stor IT Back

Virtualisierung von Storage / Speicher V1.12 (c) Stor IT Back 2023


Storage und Speicher Virtualisierung - In-Band, Out-of-Band

Einführung

Speicher oder Storage Virtualisierung, was ist das? Leider verstehen nicht alle unter Virtualisierung das gleiche. Ursprünglich war das flexible "Mapping von physikalischen Laufwerken auf logische Volumes" gemeint. Also nichts anderes als die RAID-Technologie mit einer flexiblen Partitionierung. Aber was ist jetzt neu daran? Erst einmal kann damit die zentrale Verwaltung aller Storage-Komponenten ermöglicht und Features wie SnapShot, Spiegelungen und Backups integriert werden, ohne dass die Hardwarekomponenten dies direkt unterstützen müssen. Alles in allem die zentrale Administration und Überwachung der gesamten Storage-Landschaft.
Neben der reinen blockbasierenden Virtualisierung in Storage-Umgebungen kommt auch die filebasierende Virtualisierung immer stärker zum Einsatz.

Seit einiger Zeit hat sich der Begriff Software Defined Storage etabliert. Aber auch dort gehen die Ansätze und Begrifflichkeiten auseinander. Einmal der Ansatz der zentralen Administration von herkömmlichen Storage-Systemen und die direkte Einbindung in mögliche IT-Abläufe. Zum anderen aber auch der Software-Based Storage Ansatz, dort werden übliche Server mit Festplatten bestückt und eine Software auf dem Server stellt die Storage Dienste zur Verfügung.



 
 

Ansatzpunkte für die Virtualisierung

Grundsätzlich sind 4 unterschiedliche Ansatzpunkte möglich. Die dezentrale Virtualisierung kann direkt in den Storage-Devices (RAID-Controller und Switchen) vorgenommen werden. Jeder Hersteller liefert Software und Tools zur Administration und Überwachung mit. Wenn gemeinsame Schnittstellen vorhanden sind, so können diese Aufgaben direkt über Fibre Channel oder LAN vorgenommen werden. Diese Ansätze sind aus der Netzwerktechnik bekannt, Software-Produkte wie HP-OpenView, CA Unicenter und NetView sind die bekanntesten Vertreter im LAN-Bereich.
In Zeiten von Cloud und Server-Virtualisierung wird aber auch die Storage-Schicht immer stärker in die zentrale Verwaltung (zum Beispiel Cloud Dienste) einbezogen. Dort verbreitet sich der Software Defined Storage Ansatz und ermöglicht ein gemeinsames Provisioning von Storage, Netzwerk über Betriebssystem bis hin zur Anwendung. Ein weiterer Ansatz liegt in der Verwaltung konventioneller Storage-Systeme über die angeschlossenen Applikationsserver. Hierbei wird eine Softwarekomponente auf den Servern installiert, die dann die Verwaltungsaufgaben übernimmt. Diese Clients können dann von einer zentralen Console aus bedient werden.
Die drei folgenden Prinzipien sind die aussichtsreichsten Vertreter. Sie lassen sich in die drei Gruppen "In-Band-", "Out-Of-Band-Virtualisierung" und lokale Virtualisierung trennen.



 
 

Virtualisierung im Storage-System

Sämtliche Funktionen der Virtualisierung sind zentral im Storage-System integriert. Es wird kein zusätzlicher Server oder zusätzliche Hardware benötigt, die Verwaltung vom reinen RAID-System und von der Virtualisierung sind in einem Tool zusammengefasst. Ein Ansatzpunkt der Virtualisierung lässt sich hier aber nicht realisieren, nämlich das Zusammenfassen von RAID-Systemen unterschiedlicher Hersteller. Alle anderen Features sind aber realisierbar. Natürlich kann auch diese Lösung geclustert werden, auch eine Aufteilung an zwei unterschiedliche Standorte ist möglich.
Da dieses Verfahren mehr mit der In-Band-Virtualisierung verwandt ist, lassen sich zum Beispiel auch zusätzliche Protokolle realisieren. Das ist natürlich immer abhängig von den unterschiedlichen Herstellern. Die Verwandtschaft mit dem Out-Of-Band Verfahren ermöglicht der Virtualisierung im Storage-System die beste Performance, da im Datenstrom keine zusätzlichen Komponenten zur Steuerung verbaut sind.
Ein Beispiel für eine umfangreiche Virtualisierung in einem Storage-System sind die NetApp FAS Systeme und die Dell EMC Unity Serie.



 
 

In-Band-Virtualisierung

Hierbei liegt die Hard- und Software zur Virtualisierung direkt in den Datenpfaden zwischen Server und Storage-Device. Sehr einfach lassen sich weitere Protokolle zur Nutzung des Speichers implementieren.

In-Band Storage Virtualisierung
In-Band Storage Virtualisierung

Die kostengünstige Nutzung von IP (FTP und Web), SMB und NFS ist möglich. Das Gesamtsystem wird flexibler und universeller, NAS und SAN vermischen sich. Sehr entscheidend ist die Ausfallsicherheit der Virtualisierungsschicht. Ein Versagen oder eine Störung in diesem Bereich führt unweigerlich zum Totalausfall des SAN. Der große Vorteil ist jedoch die direkte Beeinflussung des Datenstroms ohne Umwege. Auf diesem Wege lässt sich zum Beispiel auch ein "Serverless-Backup" realisieren.
Für eine Steigerung der Performance können SSD- oder RAM-Speicher in die Virtualisierung eingebunden werden. Somit lässt sich der Cache eines RAID-Controllers kostengünstig von wenigen Gigabyte auf 100 und mehr Gigabyte selbst durch reinen RAM Speicher aufrüsten. Oder es werden SSDs eingebunden, selbst schneller Speicher von mehreren Terabyte lässt sich über diesen Weg realisieren.
Diese Lösungen virtualisieren zum Storage hin und geben dann die virtuellen Volumes zu den Servern hin frei. Diese Topologie wird auch "symmetrische Storage-Virtualisierung" genannt.
Beispiele für diese Technologie sind von IBM der SVC, von EMC die VPLEX Serie und von Datacore SANsymphony.



 
 

Out-Of-Band-Virtualisierung

Bei diesem Prinzip liegt die Virtualisierungshardware (oder Software) neben dem Datenpfad.

Out-of-Band Storage Virtualisierung
Out-of-Band Storage Virtualisierung

Sollte die Hard- oder Software ausfallen, so sind die Grundfunktionen des SANs immer noch funktionstüchtig. Aber je nach Einfluss der Virtualisierung lassen sich die Daten nicht mehr zuordnen oder sind nicht verfügbar. Also ist auch diese Technik nicht gegen Ausfall automatisch gesichert. Ein wesentlicher Nachteil dieser Lösung ist die Beschränkung auf übliche Storage-Protokolle, wie Fibre Channel, SAS und iSCSI. Eine direkte Aufrüstung um NAS- und Internet-Protokolle ist nicht so einfach möglich. Bei dieser Virtualisierung werden die verfügbaren Ressourcen indirekt in die Applikationsserver projiziert, entweder über spezielle Hardware im Host-Bus-Adapter oder über eine Softwareschnittstelle.
Im Zuge der Cloud-Technologien wird diese Technik genutzt, um automatisch Speicherplatz zuweisen zu können. Damit kann in einer Cloud über ein User-Interface nicht nur automatisiert ein Applikationsserver erstellt werden, sondern auch die unterliegenden Technologien komplett automatisch vorbereitet werden. Wichtig ist in diesem Fall, das Cloud-Software und das Storage-System auch zueinander kompatibel ist, die Cloud-Software also das Storage auch administrieren kann. Im Zuge der Cloud-Technologie werden die Schnittstellen immer homogener und es wächst immer mehr zusammen.
Diese Topologie wird entsprechend dann auch "asymmetrische Virtualisierung" genannt.



 
 

Vor- und Nachteile der Virtualisierung

Ein ganz klarer Vorteil ist die Verfügbarkeit der Lösungen, aber nur bei richtigem Design der Umgebung. Ein Ausfall der Virtualisierung führt meist zum Versagen der gesamten Storage-Lösung. Also muss die Virtualisierung hochverfügbar ausgelegt werden. Dies erhöht die Kosten extrem, da Cluster eingesetzt werden müssen. Das ist aber gleichzeitig auch ein Vorteil: Wird die Virtualisierung hochverfügbar ausgelegt, so kann durch einfache Spiegelung der Daten eine komplett hochverfügbare Storage-Lösung aufgebaut werden, die auf alle Ausfallszenarien automatisch reagieren kann. Wichtig bei diesen HA-Lösungen ist die Aufteilung in zwei Brandabschnitte, was hilft einem die doppelte Hardware, die doppelten Platten, wenn ein Brand alles zerstört.

Bei der Out-Of-Band Virtualisierung besteht noch ein weiteres Problem: Es ist der fehlende Standard für die Administration und Überwachung von Storage-Hardware. Noch kann nicht jede Hardware von jeder Virtualisierungs-Software (oder Cloud Software) angesprochen werden. Es gibt nur Insellösungen, die sich aber weiter entwickeln.

Ist aber nun eine Virtualisierung möglich oder gar sinnvoll? Dies kommt auf den Einzelfall an, denn die Vorteile sprechen für sich: Ein Mitarbeiter kann eine größere Menge an Daten verwalten, da erst jetzt eine echte Konsolidierung der Daten über Hardware-Grenzen möglich ist. Wenn die vorhandene Hardware unterstützt wird, ist auch der Schutz der Investition gegeben. Weiterhin können sehr elegant Protokolle wie iSCSI und NAS-Funktionalitäten ins SAN gebracht werden. Serverless Backup wird möglich und SnapShots und Spiegelungen lassen sich flexibel auch für Entry-Level-Hardware integrieren.
In einer Cloud-Umgebung kann die Integration der Storage-Hardware sehr wichtig, bzw. sogar essentiell notwendig sein. Es bringt ja relativ wenig, wenn sich ein Kunde den virtuellen Server selbst zusammenstellen und sogar starten kann, aber keinen Speicherplatz erhält.



 
 

Virtualisierung und Hochverfügbarkeit

Die Grundlage der hochverfügbaren Storage-Virtualisierung ist die Virtualisierungs-Appliance, also das Gerät, welches die zentrale Verwaltung aller Speicherbereiche ermöglicht. Diese Appliance wird als Cluster ausgeführt, entweder als reiner Failover-Cluster (eine Appliance stellt im Normallfall die Dienste zur Verfügung, die andere überwacht nur und übernimmt im Fehlerfalle) oder als Lastausgleichscluster, d.h. beide Systeme übernehmen einen Teil der Aufgaben und überwachen sich gegenseitig.

Hochverfügbare Storage Virtualisierung
Hochverfügbare Storage Virtualisierung

Der Cluster sollte auf zwei unterschiedliche Brandabschnitte aufgeteilt werden.
Die beiden Storage-Systeme sollten dann auch in den beiden unterschiedlichen Brandabschnitten angeordnet werden. Die Spiegelung (ein RAID 1) übernimmt die Virtualisierung. Damit sind die Daten immer konsistent auf beiden Storage-Systemen vorhanden. Sollte ein Storage ausfallen, so arbeiten die Virtualisierungs-Appliances ohne manuellen Eingriff direkt weiter.
Sind dann auch noch die Netzinfrastruktur und die Server redundant ausgelegt, so kann selbst ein kompletter Standort (Brandabschnitt) ausfallen, die Anwendungen stehen weiterhin zur Verfügung.

In Kombination mit einer Server-Virtualisierung wird hieraus eine kostengünstige hochverfügbare EDV-Lösung, die auch noch einfach zu administrieren und zu überwachen ist.



 
 

Features der Storage Virtualisierung

In der Storage-Virtualisierung sind verschiedenen Features denkbar. Nicht jeder Hersteller bietet jedes Feature an bzw. bietet das jeweilige Feature unter Umständen etwas anders an. Die folgende Übersicht kann also nur als Leitfaden dienen, die genaue Realisierung muss jeweils individuell geprüft werden.


Vertikale Skalierbarkeit / Horizontale Skalierbarkeit / Loadbalancing

Die erste Möglichkeit den Plattenplatz bei einem RAID-System zu erhöhen, ist zum Grundgerät zusätzliche JBODs hinzuzufügen. Die Methode die nahezu jedes System beherrscht. Das ist die vertikale Skalierbarkeit.

Storage Loadbalacing
Storage Loadbalancing

Der Vorteil ist, das die JBODs kostengünstiger sind als ein RAID-Grundsystem und das auch nur ein Grundsystem überwacht werden muss. Der Nachteil ist jedoch, dass die Performance durch das Grundsystem begrenzt ist. Der RAID-Controller hat nur einen gewissen Durchsatz und die Anbindung an das SAN ist meist auch auf 4 Ports begrenzt. Also bei 8Gbit/s Fibre Channel dann maximal 32 Gbit/s.

Diese Nachteile hebt die horizontale Skalierbarkeit auf. Es wird ein neues Grundsystem mit den vorhandenen kombiniert. Es können auch vorhandene Volumes über mehrere Grundsysteme verteilt werden. Da jedes Grundsystem eigene RAID-Controller und damit auch eigene Anschlüsse zum SAN mitbringen, steigert es nicht nur die Kapazität sondern auch die Performance. So haben dann zum Beispiel 4 eigenständige Grundsysteme mit jeweils 4 x 8 Gbit/s dann schon 128 Gbit/s zum SAN.

Das nebenstehende Bild zeigt die horizontale Skalierbarkeit eines Storage-Systems. Es wird ein gemeinsamer Storage-Pool aus verschiedenen Grundgeräten gebildet. Die virtuelle Festplatte wird auf alle Grundsysteme verteilt. Fordert jetzt ein Server Daten von seiner virtuellen Festplatte ab, so können beide Grundsysteme zur gleichen Zeit die Daten liefern. Der Durchsatz verdoppelt sich nahezu. Das gleiche passiert natürlich auch beim Schreiben, die Daten werden auf die beiden Systeme verteilt, auch dort wird die doppelte Performance erreicht.

Die Verteilung der Daten übernimmt der Storage-Pool, also der Zusammenschluss der vorhandenen Grundgeräte. Weder Server noch Betriebssystem wissen, das hinter dem Storage-Pool mehrere Grundsysteme stehen. Das ist völlig transparent für alle weiteren Schichten. Wird jetzt ein zusätzliches Grundsystem in einen vorhandenen Pool integriert, dann werden die Daten über alle Systeme verteilt.


Thin Provisioning

Thin Provisioning oder Over-Provisioning "gaukelt" dem Betriebssystem sehr viel Speicherplatz vor, belegt aber tatsächlich nur den wirklich genutzten Speicherplatz auf den Festplatten.
Aber warum denn das?
Die Frage ist einfach zu beantworten. Wenn ein neues System oder eine neue Anwendung eingeführt werden soll, weiß eigentlich niemand so richtig, wie viel Speicherplatz wirklich benötigt wird. Also nimmt man entweder etwas mehr um in Sicherheit zu sein, verschwendet aber unter Umständen viel Speicherplatz, oder man nimmt zu wenig und muss dann umständlich erweitern. Also wäre es doch gut, einfach zu sagen: Das Filesystem bekommt so viel Speicherplatz, dass es auf jeden Fall ausreichend ist, auf der anderen Seite, wird aber aktuell immer nur das an Kapazität belegt, was auch wirklich verbraucht wurde. Alle sind zufrieden, keine Plattenplatzprobleme mehr und auch keine Verschwendung von Festplattenkapazität.
Wie funktioniert das?
Wenn ein Betriebssystem ein neues Filesystem anlegt, dann ist es ja erst mal nicht gefüllt. Es sind zwar einzelne Blöcke belegt und evtl. sind Pointer-Tabellen vorformatiert, aber das belegt sehr wenig Speicherplatz. Das Betriebssystem "sieht" dann also z.B. 2 TB in seinem Filesystem, auf den Platten sind aber nur wenige MB belegt. Schreibt das Betriebssystem jetzt Daten in das Filesystem, dann werden die Daten wirklich auch auf die Platte geschrieben. Aber eine weitergehende Nutzung von Plattenplatz des leeren Teils des Filesystems erfolgt nicht. Sind also auf den virtuellen 2 TB wirklich 500 MB an Daten und 2 MB an Filesystemformatierungen, so ist auf der Festplatte 502 MB belegt.
Natürlich muss auch beim Thin Provisioning der Plattenplatz überwacht werden. Sind auf dem RAID-System 20 virtuelle Festplatten mit je 2 TB angelegt, aber nur 10 TB an Plattenplatz vorhanden, dann wird es irgendwann einmal eng werden. Das muss aber nur zentral auf dem RAID-System überwacht werden. Werden voreingestellte Grenzen überschritten, dann erfolgt eine Warnung an den Administrator. Es müssen zusätzliche Festplatten eingebaut werden (vertikale Skalierung) oder es muss ein zusätzliches Grundsystem integriert werden (horizontale Skalierung). Das lässt sich natürlich im laufenden Betrieb durchführen.


Replikation / Spiegelung zur Steigerung der Verfügbarkeit

Diese beiden Verfahren sind zwar sehr ähnlich, unterscheiden sich aber in einigen wichtigen Punkten. Erreicht werden soll in beiden Fällen die Daten an zwei unterschiedlichen Standorten zu speichern. Dies ist eine K-Fall Vorsorge. Sollte ein Standort oder ein System zerstört werden, so kann entweder unverzüglich bzw. mit kurzer Verzögerung auf die Daten zugegriffen werden.
Bei der Replikation wird nach dem Master-Slave Verfahren gearbeitet. Der Master erfüllt hierbei die I/O Anforderungen der Server. Kommt ein Schreib-IO zu Master, so überträgt dieser die Schreib-Operation an den Slave. Bei der synchronen Replikation wird das Write-OK dem Server erst dann gegeben, wenn die Daten sicher auf Master und Slave angekommen sind. Das führt zu einer leichten Verschlechterung der Schreib-Performance. Jedoch sind die Daten immer auf beiden Systemen auf dem gleichen Stand. Es muss also nach einem Start der synchronen Replikation nicht manuell eingegriffen werden.
Bei der asynchronen Replikation bekommt der Server sein Write-OK direkt wenn die Daten auf dem Master angekommen sind, also ohne zeitliche Verzögerung. Der Master überträgt dann die Daten zum Slave in bestimmten Intervallen. Und bei dieser Übertragung muss darauf geachtet werden, dass die Daten zu diesem Zeitpunkt auch konsistent sind. Das heißt die Steuerung der asynchronen Replikation muss von den Servern aus durchgeführt werden. Diese Replikation ist zwar performanter, aber schwerer zu steuern und aufwendiger in der Überwachung.

Bei der Spiegelung wird ein RAID 1 angewendet. Die Daten werden also zur gleichen Zeit auf das eine und auf das andere Storage-System geschrieben, die Performance ist entsprechend dem eines Einzelsystems. Das Verfahren Spiegelung ist etwas aufwendiger zu realisieren. Es muss in den meisten Fällen eine In-Band-Virtualisierung zwischengeschaltet werden, die das RAID 1 über die beiden Storage-Systeme übernimmt (siehe auch obiges Thema "Virtualisierung und Hochverfügbarkeit").


Tiering

Das Tiering, also die Aufteilung der Daten auf verschiedene Medien, ist sehr effektiv und sehr flexibel mit der Storage-Virtualisierung zu realisieren. Beim Tiering werden die Daten je nach Performance- und Verfügbarkeitsansprüchen auf unterschiedliche Platten bzw. Plattensysteme verteilt. Die Aufteilung auf verschiedene Plattentypen (SSD, SAS und SATA) sind auch in einem RAID-System möglich. Bei der Storage-Virtualisierung kommt aber auch der gemeinsame Zugriff auf verschiedene RAID-Systeme in Betracht. So können die wichtigen und performanten Daten auf Dual Controller-RAID-Systemen abgelegt werden. Ältere bzw. nicht so wichtige Daten auf SATA-Storages mit nur einem Single-Controller-Design. So können auch Test- und Produktionsdaten getrennt werden. Aber alle Server an der Storage-Virtualisierung können auf alle Daten zugreifen.
Damit kann ein Server auf alle Tiers innerhalb aller vorhandenen Storage-Systeme die Daten ablegen. Als Beispiel kann der Datenbankserver seine Datenbankfiles auf dem Dual Controller Enterprise System ablegen, die Logs kommen auf das Enterprise SATA System und die Exports landen auf dem Single-Controller-System mit großen SATA-Platten.
Weitere Informationen zum Thema Tiering.



 
 

Fazit Storage Virtualisierung

Eine professionelle Planung in diesem Bereich macht eine Virtualisierung erst möglich. Sehr wichtig sind hierbei, die geforderten Funktionalitäten und die vorhandene Hardware zu berücksichtigen. Jeder Hersteller in diesem Bereich bietet unterschiedliche Features an, eventuell sind kleine Details für den Erfolg entscheidend.


Sollten Sie Fragen zu diesem Thema haben, oder wünschen Sie Beratung, so wenden Sie sich an uns. Weiterhin bieten wir herstellerunabhängige Schulungen zum Thema "Storage Area Network" an. In der Basis-Schulung lernen Sie die Unterschiede zu DAS, NAS und iSCSI kennen, sowie die jeweiligen Einsatzgebiete. In der Praxis-Schulung bauen Sie ein komplettes SAN auf, lernen die Topologien kennen und sehen Vor- und Nachteile am "lebenden Objekt". Eine mögliche Virtualisierung wird auch besprochen.



 
 

Angebote der Stor IT Back zum Thema Storage-Virtualisierung

Angebot Datacore SanSymphony V10
Datacore SANsymphony V10 auf Supermicro
Software Defined Storage

24 x SATA/SAS/SSD
Replikation / Cluster / SSD Cache / Tiering
Preis
auf Anfrage
Angebot Open-E JovianDSS
Open-E JovianDSS Storage
ZFS-based Appliance, kostengünstig

SSD/SAS/NL-SAS, HA Cluster, Metro-Cluster
Preis
bitte anfragen
Angebot VMware ESXi Server Virtualisierung FC

VMware vSphere ESX Fibre Channel Paket
2 x Fujitsu RX2540 M7 für VMware ESXi
und Dell EMC Unity XT 380 FC
Preis
auf Anfrage
 
 
Informationen zu Storage, Backup und Virtualisierung
Storage Virtualisierung
Angebote Storage Backup Cloud
Kontakt zur Stor IT Back
Suche auf der Webseite Stor iT Back