Was kann Flash in einer SAN-Umgebung? Schlüsselstellen, an denen sich Festplatten durch SSDs ersetzen lassen

Autor / Redakteur: Joost van Leeuwen und Scott Harlin / Ulrike Ostler

In dem Wettrennen um die beste und fortschrittlichste Speicherlösung für ihr Rechenzentrum, beschäftigen sich IT-Manager vermehrt mit den Vorteilen der Flash-basierten Solid-State-Drive-Technologie. Immerhin offeriert diese eine sowohl signifikante als auch sofortige Rentabilitätssteigerung. Doch: Wann und wo machen SSDs in einer SAN-Umgebung Sinn?

Firmen zum Thema

Was ist Flash und wie lässt sich die Speichertechnologie in eine SAN-Umgebung sinnvoll einbauen?
Was ist Flash und wie lässt sich die Speichertechnologie in eine SAN-Umgebung sinnvoll einbauen?
(Bild: © Sergey Nivens - Fotolia)

Die Nachfrage nach Speicherplatz steigt stetig und mir ihr klettern auch die Anforderungen an die Datenverarbeitung in die Höhe. Viele Unternehmen sehen sich mit der Situation konfrontiert, dass ihre Systeme diesen Anforderungen nicht mehr gewachsen sind. Dementsprechend werden leistungsfähigere Lösungen benötigt. Doch um die Frage zu beantworten “ Wann und wo machen SSDs in einer SAN-Umgebung Sinn?“ muss man erst eine gewisse Menge an Hintergrundinformationen zu SSDs Revue passieren lassen.

Eine SSD besteht aus einer Leiterplatine (PCB), einem Kontroller, Flash-Speicher und einer Firmware. SSDs wurden so konzipiert, dass sie Daten wesentlich schneller lesen und schreiben können als Magnetfestplatten (HDDs).

Der offensichtliche Unterschied zwischen den beiden Technologien besteht darin, dass Festplatten über bewegliche Teile verfügen und Solid State Drives (SSDs) nicht. Bei einer Festplatte findet man stets eine oder mehrere Magnetscheiben und einen Schreib/Lese-Kopf, der physisch an eine gewünschte Stelle bewegt werden muss. Im Falle von Flash-Speicher werden lediglich elektrische Ladungszustände verändert, um Daten zu speichern.

Somit kann eine SSD zufällig angeforderte Daten wesentlich schneller lesen oder auch schreiben als eine Festplatte. Muss eine Festplatte mehrere hundert zufällige Zugriffe gleichzeitig abarbeiten, kommt es hier bereits zu System-Flaschenhälsen, gerade wenn die Input- und Output-Befehle zunehmen.

Sequentielle und zufällige (Random) Daten

Die Kombination aus Enterprise-SSD und Caching-Software bietet die Grundvoraussetzungen für eine erfolgreiche Flash-Implementierung in Rechenzentren. Die SSD-Hardware-Komponente beeinflusst in aller Regel die Geschwindigkeit, mit der die Anwendung die wichtigen Daten bekommt. Die Festplatte kommt am besten mit einem kontinuierlichen Datenstrom zurecht, der abgearbeitet werden muss. Sequenzielles Lesen und Schreiben sind dementsprechend die Paradedisziplin einer Festplatte.

Flash kann ein Rechenzentrum mit sehr viel zusätzlicher Energie versorgen.
Flash kann ein Rechenzentrum mit sehr viel zusätzlicher Energie versorgen.
(Bild: © Igor Mojzes - Fotolia)

Dabei sollten Daten physikalisch auf der gleichen Platter-Spur abgelegt sein. Da eine ungleichmäßige Datenverteilung auf der Magnetscheibe unausweichlich ist, werden Defragmentierungsprozesse notwendig. Daten werden dabei wieder auf die gleiche Spur geschrieben und Lücken geschlossen, so dass letztlich wieder ein kontinuierlicher Datenstrom mit normaler oder optimierter Geschwindigkeit vorhanden ist.

Vorgaben aus dem Betriebssystem

Moderne Betriebssysteme können mittlerweile komplexe Daten parallel verarbeiten, wodurch wesentlich öfter zufällige Zugriffsmuster auftreten. In genau diesem Bereich werden die Nachteile von Festplatten deutlich sichtbar.

SSDs füllen die Lücke ideal, da sie nicht nur bei zufälligen Zugriffen mehr Leistung bieten. Auch die sequenziellen Durchsatzraten können gegenüber Festplatten gesteigert werden. Zusätzlich reduzieren sich die Zugriffszeiten drastisch, wobei eine SSD zirka 0,02 Millisekunden für einen Zugriff benötigt, während sich eine Festplatte zwischen 3 und 20 Millisekunden gönnt. Diese extreme Leistungssteigerung gegenüber Festplatten um den Faktor 1000, ist der Grund dafür, weshalb SSDs I/O-Operationen wesentlich schneller erledigen.

Die Gesamtleistung einer IT-Infrastruktur passt sich stets der schwächsten Komponente an. In vielen Fällen handelt es sich hierbei um das Storage-Array, bei dem Festplatten für einen Flaschenhals verantwortlich sind. Das im Hinterkopf, könnten IT-Manager als erste logische Konsequenz das HDD-Array im SAN durch SSDs zu ersetzen.

Ist die Datenbank auch schneller?

Dabei handelt es sich um den einfachsten und schnellsten Lösungsansatz für Lastprobleme, die im Zusammenhang mit einem SAN stehen. Daten werden im Anschluss wesentlich schneller verarbeitet und die komplette IT-Infrastruktur wird beschleunigt. Verglichen mit einer SSD kann eine HDD lediglich 200 bis 350 Input/Output-Operationen pro Sekunde (IOPS) abarbeiten, während SSDs hingegen zwischen 50.000 und 500.000 IOPS liefern. Aufgrund dieser Tatsache eignen sich Solid State Drives bestens dafür, einem SAN massiv mehr Leistung einzuhauchen.

SSDs sind ein einem Rechenzentrum ein äußerst effektiver Ersatz für Festplatten. Wie kann man jedoch eine Datenbank zu beschleunigen, die lediglich 50 Prozent des Speicherplatzes im SAN in Anspruch nimmt?

Indem die Hälfte an Festplatten durch SSDs ersetzt wird, könnten die Daten wesentlich schneller verarbeitet werden. Zudem kann Platz und Strom eingespart werden, da SSDs üblicherweise kompakter sind und eine geringere Leistungsaufnahme aufweisen. Dieser hybride Ansatz ist für IT-Manager interessant, da so ein vernünftiger Mix aus Leistung, Kapazität und Kosteneffizienz erreicht wird. Darüber hinaus sind mehrstufige (Stichwort „Tiering“) Storage-Systeme in Kombination mit Virtualisierung mittlerweile verbreitet.

Der ‚I/O-BLENDER‘-EFFEKT (Randomifizierung eines Datenstroms)

In Server-Umgebungen werden stets zahlreiche Anwendungen parallel ausgeführt. Zu diesem Zweck setzen IT-Manager auf virtuelle Server, so dass Nutzer gleichzeitig unterschiedliche Lasten generieren können. Es kommt zu unzähligen, simultanen Anfragen ans Storage-System. Daraus entsteht ein konsolidierter Datenstrom, der durch den Virtualisierungs-Layer komplett „randomifiziert“ wird.

Löst sich der Geschwindigkeitskick angsesicht von Datenbank-Anwendungen in Rauch auf?
Löst sich der Geschwindigkeitskick angsesicht von Datenbank-Anwendungen in Rauch auf?
(Bild: © mdurinik - Fotolia)

Tritt dieses Phänomen auf, spricht man vom ‚I/O-Blender‘-Effekt. Alle sequenziellen Datenströme werden in einem großen Datenstrom zusammengefasst, wobei Anfragen nun zufällig ans SAN abgesetzt werden. Aus diesem Grund erfordert die Server-Virtualisierung eine Infrastruktur, die bei zufälligen Zugriffen äußerst leistungsfähig ist. Exakt diese Anforderung stellt Festplatten vor ein gravierendes Problem, da die physischen Schreib/Lese-Köpfe kontinuierlich von einer Position zur nächsten springen und kläglich versuchen den Anfragen zu bewältigen.

Ineffizient und unzureichend

In Zeiten vor der SSD-Technologie, versuchten IT-Manager das Leistungsungleichgewicht zwischen Servern und Festplatten durch das Hinzufügen von unzähligen Festplatten zu lösen, damit am Ende die IOPS-Performance den Anforderungen gerecht wird. Durch die stückweise SAN-Erweiterung mit Festplatten, steigt auch der Stromverbrauch und Kühlungsaufwand enorm.

Dies bedeutet höhere Gesamtbetriebskosten (TCO). Erschwerend kommt hinzu, dass Festplatten aufgrund der beweglichen Teile über eine äußerst bedingte Lebensdauer verfügen. Dieser Umstand erfordert komplexe Hochverfügbarkeitspläne, so dass die individuellen Festplattenprobleme abgefangen werden können. Ansonsten steht der stabile Betrieb des SAN auf dem Spiel. Auch damit steigen die Kosten weiter an.

Um den durch Virtualisierung entstandenen ‚I/O-Blender‘-Effekt zu adressieren, mussten IT-Manager die Anzahl virtueller Maschinen (VMs) auf jedem Host-Server limitieren. In einigen Fällen, wie beispielsweise Datenbanken und Exchange-Servern, wurden Lasten nicht mehr auf virtuelle Maschinen verteilt, um so das Datenzugriffsmuster zu beeinflussen und damit letztlich eine geringere Randomisierung zu erreichen. Es wurden auch isolierte, nicht-virtualisierte Anwendungen geschaffen, die wiederum Infrastruktur- und Wartungskosten in die Höhe trieben.

I/O zählt mehr denn je

In den vergangenen Jahren wuchsen SAN-Arrays signifikant. Der Grund ist nicht nur auf den gesteigerten Speicherplatzbedarf zurückzuführen, sondern auch auf gesteigerte Anforderungen der I/O-Leistung. Um mit den Laufwerken mit geringer I/O-Leistung ausreichend Performance zu erhalten, setzte man schlicht immer mehr Festplatten ein.

Spätestens seitdem eine SSD hunderte von Festplatten auf einen Schlag ersetzen kann, änderten sich die Voraussetzungen nachhaltig. Wie bereits früher diskutiert, ist eine SAN-Infrastruktur inklusive Server, allen Netzwerkverbindungen und Zugriffspunkten nur so schnell, wie das langsamste Element. Dementsprechend ist es nicht immer der effizienteste Ansatz, Festplatten durch SSDs zu ersetzen.

Aus Nutzersicht zählt einzig und allein die Anwendungsleistung. „Wie schnell kann ich auf Anwendungsdaten zugreifen?“. Wie bereits erläutert, könnte sich der Flaschenhals zwischen Server und SAN befinden. Anstatt Festplatten also einfach zu ersetzen, kann ein effizienterer Weg eine zusätzliche SSD für Caching-Zwecke sein, die damit als Beschleuniger funktioniert. Es werden die am häufigsten verwendeten Daten, auch bekannt als „Hot Data“, zwischengespeichert, so dass der Zugriff darauf beschleunigt wird.

Heiß und kalt

Jede Anwendung verfügt über eine Datenteilmenge, auf die oft oder auch regelmäßig zugegriffen wird. Diese Hot Data können auf einer SSD zwischengespeichert werden, die sich im Host-Server befindet. Somit müssen angefragte Daten nicht mehr vom SAN ausgeliefert werden, sondern werden von der SSD im Server bereitgestellt.

Auf diese Art und Weise lassen sich Flaschenhälse beim Zugriff auf ein SAN und Engpässe bei Server-Zugriffen eliminieren. Vergleicht man die I/O-Leistung einer SSD mit der einer Festplatte, wird klar, dass Daten nun wesentlich schneller ausgeliefert werden und das gesamte System ein beschleunigtes Ansprechverhalten aufweist.

Fügt man einer Infrastruktur ein solches Caching hinzu, werden nicht nur die Gesamtinvestitionen reduziert, auch die Performance wird deutlich durch die Flash-Technologie gesteigert. Aus Administratorensicht, lässt sich diese Lösung problemlos in den meisten aktuellen Servern installieren. Zudem handelt es sich derzeit um eine der kosteneffizientesten und wirksamsten Lösungen zur Eliminierung von Engpässen.

Die SAN-lose Umgebung

Abhängig von der Anwendung steht IT-Managern noch eine weitere Möglichkeit zur Verfügung, bei der es sich um eine SAN-lose Umgebung handelt. Sollte eine Anwendung hohe I/O-Lasten verursachen, dabei aber verhältnismäßig wenig Speicherplatz benötigen, kann eventuell auf ein externes SAN verzichtet werden.

Sorgen SSDs in SAN-losen Umgebungen ebenfalls für Furore?
Sorgen SSDs in SAN-losen Umgebungen ebenfalls für Furore?
(Bild: © Yulia Maralova - Fotolia)

Die Option wäre ein Server, der ausschließlich mit Flash-basierten SSDs bestückt ist und diesen Job problemlos erledigen kann. Für eine Datenbankanwendung kann innerhalb der Flash-basierten Umgebung ein separates Volume geschaffen werden, das als SAN funktioniert und sich im Server selbst befindet.

Dies wäre die perfekte Lösung ohne SAN-Engpässe oder durch den Server verursachten ‚I/O-Blender‘-Effekt. Die Server-Antwortzeiten können damit drastisch reduziert werden und Daten können beinahe sofort bereitgestellt werden, ohne dass Unmengen von Festplatten Wartungs-, Strom-, Kühlungs- oder Ersatzkosten generieren.

Einsatz für Software

Wenn es um Virtualisierung geht, kann durch eine intelligente Software, wie „OCZ VXL“-Software, SSD-Flash für jegliche VMs innerhalb eins virtualisierten Clusters bereitgestellt werden, ohne dass auf irgendwelche Virtualisierungs-Fähigkeiten verzichtet werden muss. Beispiele wären die „End-to-End“-Mirroring, Hochverfügbarkeit (HA), Fehlertoleranz (FT) oder dynamische Migration virtueller Maschinen von einem Server zum anderen. Dieser Ansatz für ein SAN-loses Rechenzentrum setzt ausschließlich auf die Verwendung von silizium-basiertem Speicher, so dass von der Virtualisierung profitiert werden kann, ohne auf kostspielige HDD-SANs angewiesen zu sein.

Bildlich gesprochen ist der Flash-Speicher der Muskel eines Server-Storage, während die Software das Gehirn verkörpert. Mit einem intelligenten Programm kann sichergestellt werden, dass der Flash-Speicher so effizient wie möglich genutzt wird. Unabhängig davon, ob ein Betriebssystem auf Windows-basiert, auf Linux setzt oder ob eine über VMware virtualisierte Umgebung zum Einsatz kommt.

Unterschiedliche Anwendungen verlangen nach unterschiedlichen Implementierungsvarianten. Die daraus resultierende Komplexität erfordert eine ausgeklügelte Software-Ebene, die Daten nicht nur beschleunigt, sondern auch verwaltet, um letztlich die Anwendungsleistung zu steigern.

Flash-Virtualisierung?

VMware ist eine der am weitesten verbreiteten Software-Lösungen im Bereich Virtualisierung. Rechenzentren können damit beispielsweise sowohl auf dem SAN befindliche Daten als auch Anwendungen effizient teilen, ohne dass diese im Server lokal gespeichert werden müssen. Diese Teilungsmechanismen ließen die I/O-Lasten rapide steigen und stellen IT-Manager vor neue Herausforderungen, wenn es darum geht ein Rechenzentrum noch leistungsfähiger zu gestalten.

Die Welle der Speicher-Virtualisierung rollt. Besser man ist obenauf.
Die Welle der Speicher-Virtualisierung rollt. Besser man ist obenauf.
(Bild: © Sergey Nivens - Fotolia)

Der ‚I/O-Blender‘-Effekt beschreibt dabei nur eines von vielen Problemen, die berücksichtig werden müssen. Ebenso kritisch ist das Zeit-Management, damit Daten der passenden Applikation, dem richtigen Nutzer zur korrekten Zeit bereit stehen. Verwaltet man SSD-Flash-Ressourcen entsprechend, können diese rechtzeitig vorbereitet werden, um selbst diese Höchstanforderungen zu stemmen.

Ein gutes Beispiel für eine solche Last sind ‚Boot Storms‘, bei dem viele Nutzer bei Arbeitsbeginn gleichzeitig das Betriebssystem laden. IT-Manager können sich auf derartige Lastspitzen rüsten und mehr I/O-Leistung zur Verfügung stellen, wenn diese benötigt wird.

Die neue Ebene

Um solch spezifische Herausforderungen im Zusammenhang mit enorm hohen Lasten zu meistern, können Unternehmen auf eine intelligente Software zugreifen. Diese erstellt eine Ebene zur Flash-Virtualisierung, die über dem VMware-Betriebssystem liegt. So können IT-Manger Flash-Ressourcen denjenigen VMs zuzuteilen, die diese auch benötigen.

Zudem lassen sich Flash-Ressourcen (zum Beispiel PCIe-SSDs) intelligent und effizient bei Anfrage auf unterschiedliche und verbundene VMs verteilen. Virtualisiert können die SSDs auch in hochverfügbaren Umgebungen innerhalb eines Netzwerks eingeplant werden.

Der störungsfreie Betrieb

Heutige IT-Infrastrukturen sind zahlreichen Gefahren ausgeliefert. So ist es kaum verwunderlich, dass auch die Datenverarbeitung keine Ausnahme darstellt. Dabei ist es für IT-Manager von zentraler Bedeutung, dass Rechenzentren so aufgebaut sind, dass der Betrieb unterbrechungsfrei stattfinden kann. Wichtig ist in diesem Zusammenhang sind höchste Performance bei Hochverfügbarkeits-Umgebungen. An exakt dieser Stelle kommen Flash-basierte Lösungen für Unternehmen ins Spiel.

Lösungen, die Daten in virtuellen Umgebungen unterbrechungsfrei verarbeiten, sind enorm wichtig für einen erfolgreichen Einsatz. An dieser Stelle eine kurze Auflistung der wichtigsten Dienste:

  • Spiegelung (oder Datenspiegelung) beschreibt den Prozess der Datenreplikation auf zwei oder mehr SSDs, um eine Sicherungskopie bei einem Ausfall eines Laufwerks bereit zu stellen. Ausfallsicherheit bei gespiegelten Flash-Ressourcen erfordert Transparenz bei den aktiven virtuellen Maschinen auf dem Server, damit letztlich I/O-Zugriffe während eines Ausfalls nicht unterbrochen werden.
  • Hochverfügbarkeit (HA) in virtualisierten Umgebungen stellt bei einem Serverausfall mit Flash-Ressourcen sicher, dass die darin enthaltenen virtuellen Maschinen auf einem anderen Server gestartet werden können. Dieses Szenario erfordert Verwaltungsfähigkeiten auf dem Host-Rechner. Daten, die in der primären SSD-Flash-Ressource geschrieben werden, müssen somit auch auf eine sekundäre Flash-Ressource geschrieben werden.
  • Fehlertoleranz (FT) ist einer der am schwierigsten zu handhabenden Dienste innerhalb einer virtualisierten Umgebung. Die Sicherstellung einer unterbrechungsfreien Auslieferung von Anwendungen und Daten ist kein triviales Unterfangen, speziell wenn ein Server komplett ausfällt. Um volle Fehlertoleranz zu erreichen, müssen zwei (bis auf das letzte Bit) identische Kopien einer VM vorhanden sein. Ist dies gegeben, kann eine Kopie während eines Ausfalls sofort übernehmen, so dass nahtlos an der unterbrochenen Stelle weitergearbeitet werden kann. Mit SSD-Flash kann auf Lösungen zugegriffen werden, die synchrone Spiegelung zwischen Host-Servern in einer hochverfügbaren Umgebung bieten.

Wartungsaufwand reduzieren

Zusätzlich zur Bereitstellung unterbrechungsfreier Dienste in virtualisierten Umgebungen, sind reduzierte Wartungskosten als auch weniger benötigte Ressourcen für Service und Support wünschenswert. So kann die Kosteneffizienz des Rechenzentrums deutlich gesteigert werden. Bei einer Serverwartung müssen die betroffenen virtuellen Maschinen auf einen anderen Server verschoben werden.

Organisation, die Flash-Technologie innerhalb einer IT-Infrastruktur und Virtualisierung nutzen, verlassen den Teufelskreis aus immer höhen Anforderungen, weitern Speicher-Arras und steigenden Kosten. Die Techniken lassen die Gesamtperformance und Servicequalität enorm steigen.
Organisation, die Flash-Technologie innerhalb einer IT-Infrastruktur und Virtualisierung nutzen, verlassen den Teufelskreis aus immer höhen Anforderungen, weitern Speicher-Arras und steigenden Kosten. Die Techniken lassen die Gesamtperformance und Servicequalität enorm steigen.
(Bild: Klaus Eppele/ Fotolia.com)

Dabei handelt es sich oftmals um einen zähen und langwierigen Prozess. VMware stellt ein Tool mit der Bezeichnung „vMotion“ bereit, welches exakt diese Fähigkeit der dynamischen Migration bietet. Mit der intelligenten Software müssen lediglich die VMs auf einen anderen Server verschoben werden, aber nicht die Daten, da sich die ‚Hot Data‘ innerhalb der PCIe-SSD befinden. Die Software-Verwaltungsebene gewährleistet einen fortlaufenden Betrieb ohne Ausfallzeit und Leistungseinbrüche, damit der Endbenutzer keinerlei Unterschied bemerkt.

Entgegen vielen anderen Lösungen, benötigt diese intelligente Software keine Agents, die die Kommunikation zwischen VMs und SSDs gewährleisten, da die Software im VMware Hypervisor eingebunden ist. So stehen die Daten für alle Server und virtuellen Maschinen (VMs) im Netzwerk zur Verfügung.

Da Daten auf den PCIe-basierten SSD Flash-Karte zwischengespeichert werden, können diese unter mehreren Servern geteilt werden. Dabei kann typischerweise jeder Einsatzpunkt die Flash-Ressource nutzen, auch wenn sich die SSD nur in einem Server befindet. Dieser komplett ‚Agents‘-lose Ansatz hat einen deutlich gesenkten Wartungsaufwand zur Folge und schafft eine äußerst flexible Umgebung.

Aufwärmen des Cache für Leistungsspitzen

IT-Manger müssen sich auch der Herausforderung stellen, Leistungsspitzen zu meistern. Dabei wird innerhalb eines kurzen Zeitraumes massiv mehr I/O-Leistung benötigt. Zu diesem Zweck können unterschiedliche I/O-Profile für die diversen Anwendungen bereitgestellt werden.

Data Warehousing ist in diesem Fall ein gutes Beispiel: Hier wird besonders die IOPS-Performance eines Systems gefordert. Virtuelle Desktop-Infrastrukturen (VDI) sind ein weiteres Beispiel bei denen in ‚Boot Storms‘-Zeiten wesentlich mehr Ressourcen benötigt werden. Dabei fordern zahlreiche Mitarbeiter gleichzeitig Ressourcen an. Beide Anwendungen könnten gleichzeitig um Flash-Cache-Ressourcen kämpfen, so dass am Ende keiner der beiden Tasks profitiert.

Die Caching-Software stellt zu diesem Zweck eine Geschäftsregel zur Verfügung, die ein Vorwärmen des Zwischenspeichers ermöglicht. IT-Manger haben somit die Möglichkeit, einen Zwischenspeicher so vorzubereiten, dass anspruchsvolle Jobs stets so schnell wie möglich abgearbeitet werden. Bei den beiden Beispielen von vorhin würde das bedeuten, dass die VDI-Boot-Daten bereits am frühen Morgen in den Zwischenspeicher geladen und somit beschleunigt ausgeliefert werden.

Des Weiteren lässt sich eine Regel für den Abend definieren, um die wichtigen Bereiche des Data Warhousing in den Flash-Zwischenspeicher zu laden. Zwischen diesen beiden wichtigen Aufgaben können andere Anwendungen ebenfalls von den Vorteilen der dynamischen Cache-Ressource profitieren, so dass sich die Flash-basierte SSD-Ressource so effizient wie möglich nutzen lässt.

* Joost van Leeuwen und Scott Harlin arbeiten für OCZ Storage Solutions.

(ID:43017829)