Performance virtueller Maschinen mit Flash beschleunigen

Wo lassen sich Flash-Technologien am besten einsetzen, um die Performance virtueller Maschinen zu optimieren.

Flash-basierte Speicherlösungen sind die logische Antwort auf die Frage, wie sich die Performance virtueller Maschinen beschleunigen lässt, da sie kurze Latenzzeiten bieten und effizient zufällige I/O-Zugriffen verarbeiten. Hier erfahren Sie, wie Sie in Ihrer Umgebung Flash implementieren, um Performance-Probleme virtueller Maschinen zu lösen.

Dieselbe Technologie, die es Anwendern erlaubt, auf nur einem physischen Server mehrere virtualisierte Maschinen zu hosten, schafft leider auch einen potenziellen I/O-Engpass, mit dem herkömmliche Storage-Systeme überfordert sind. Dafür sind zwei Dinge verantwortlich: Zum einen die großen Mengen an Lese-und Schreib-Zugriffen, die bereits nur ein Host jederzeit erzeugt, und zum anderen, dass dies zufällige, also random Zugriffe sind. In beiden Fällen können damit herkömmliche Festplattensysteme oft nicht Schritt halten.

Wenn die Host-Server dann auch noch mit den neuesten Intel-Prozessoren und deutlich erweiterten DRAM-Kapazitäten ausgestattet werden, nehmen die durch die Server-Virtualisierung hervorgerufenen Probleme bei der Speicherleistung nur weiter zu. Denn die aufgerüsteten Rechner bergen nun das Potenzial für drei- bis fünfmal mehr virtuelle Maschinen (VMs) pro physischen Server.

Allerdings muss die VMware-Speicherleistung nicht zwangsläufig zum Engpass werden. Tatsächlich kann sie sogar für eine ganz neue Dichte an virtuellen Maschinen sorgen, die den ROI der Virtualisierung verbessert. Möglich wird dies durch die richtige Nutzung Flash-basierter Speicherlösungen. Weil dieser Aspekt für die Beschleunigung der Performance eine wesentliche Rolle spielt, geht dieser Artikel näher auf die Flash-Technologie ein.

Flash – Retter in der Not

Flash eignet sich hervorragend, die Anforderungen virtualisierter Workloads zu erfüllen, weil die Technologie aufgrund kurzer Latenzzeiten und hoher Performance gegenüber den üblichen Schwierigkeiten bei zufälligen I/O-Zugriffen nicht anfällig ist. Dafür hat Flash im Gegensatz zur Festplattentechnologie auch einen stolzen Preis, weshalb IT-Manager ihre Flash-Ressourcen wohlüberlegt und nutzbringend einsetzen müssen.

Da die Virtualisierung für Flash-Anbieter eine potenzielle Absatzchance darstellt, haben sie in kurzer Zeit eine überwältigende Vielfalt an Konfigurationsoptionen auf den Markt gebracht. Erhältlich sind Server-seitige Flash-Angebote, die in Kombination mit Cache-Software die Performance auf bestimmten Hosts beschleunigen, und Shared-Storage-Produkte, die entweder Flash und Festplatten mischen oder aus reinen Flash-Konfigurationen bestehen.

Wer einfach nur schnellere Speichergeräte kauft, ohne dabei auch an das Netzwerk zu denken, erzielt mitunter nur eine suboptimale Solid-State-Performance. Nehmen wir an, dass die Storage-Infrastruktur (das Netzwerk) im größtmöglichen Umfang optimiert worden ist. Zunächst müssen Sie dann feststellen, wo sich unter Berücksichtigung der Netzwerkeigenschaften leistungsfähiger Storage integrieren lässt, um den größtmöglichen ROI zu erzielen.

Nachfolgend schauen wir uns die möglichen Optionen genau an. Wir geben Ihnen hier einige Tipps, wie Sie die richtige Konfiguration für Ihre virtuelle Speicherumgebung finden.

Umgang mit I/O-Schreibvorgängen

Beim Entwurf einer leistungsfähigen Speicherumgebung für virtualisierte Rechenzentren ist unbedingt auf die I/O-Performance bei Schreibvorgängen zu achten. In der Regel werden in virtualisierten Umgebungen sehr viele I/O-Schreibzugriffe ausgeführt. Neben den normalen I/O-Schreibvorgängen, die es in jeder Umgebung gibt, kommen sie bei Funktionen wie Thin Provisioning, Klonen und Snapshots verstärkt vor, denn bei Bedarf wird dort dynamisch zusätzlicher Speicherplatz zugewiesen (beschrieben). Das bedeutet, dass ein einziger Schreibvorgang eine ganze Kaskade weiterer Schreibzugriffe nach sich ziehen kann.

Wenn z. B. eine einzige Datei nach der Bearbeitung größer geworden ist, kann es sein, dass ein Volume neu zugewiesen wird (Thin Provisioning), und dass eine Klon-Map und eine Snapshot-Tabelle aktualisiert werden. Beide Funktionen machen es möglich, die Speichereffizienz virtualisierter Umgebungen deutlich zu steigern. Das Problem dabei: Wenn es während ihrer Nutzung bei der Schreib-Latenz zu Verzögerungen kommt, können diese Funktionen die Performance stark beeinträchtigen und einschränken. Dazu gehört, wie sparsam beim Thin Provisioning mit dem Speicherplatz umgegangen wird, wie viele Snapshots gemacht und wie viele VMs aus einem Klon erstellt werden können. Darum müssen in vielen Umgebungen die genannten Funktionalitäten deaktiviert werden. Einer der größten Vorteile Flash-basierter Geräte ist, dass man die Funktionen wieder aktivieren oder in vollem Umfang nutzen kann.

Shared-Storage-Performance

Die meist geschätzten Aspekte an virtualisierten Servern und Desktops sind Flexibilität und Verfügbarkeit. Funktionalitäten wie Distributed Resource Management, Storage vMotion und VMware vSphere vMotion funktionieren mit Shared-Storage in der Regel am besten. Um die Gesamt-Performance virtueller Maschinen zu verbessern, sollte man logischerweise hier ansetzen.

Da Flash-basierte Speicherlösungen kurze Latenzzeiten haben und effizient mit zufälligen I/O-Zugriffen umgehen, sind sie folgerichtig die beste Wahl, um die Performance virtueller Maschinen zu verbessern. Rechenzentren können sich zwischen zwei grundlegenden Implementierungsoptionen entscheiden: Hybrid-Lösungen aus Flash- und Festplattenspeicher und reine Flash-Speicher-Arrays.

Hybrid-Flash-Variante

Wenn Flash als Hybrid-Variante bereitgestellt wird, so viel man das meiste aus den Performance-Vorteilen herausholen, aber zu deutlich günstigeren Kosten. Solche Systeme sorgen in der Regel über Tiering oder Cache-Technologien dafür, dass sich die aktiven Datensätze im Solid-State-Bereich des Speichersystems befinden.

Es gibt verschiedene Methoden, Hybrid-Flash-Arrays zu implementieren. Aus den zuvor genannten Gründen ist es wichtig, ein Storage-System zu finden, bei dem sämtliche Schreibzugriffe zunächst in Tiers oder Caches redundanter Flash-Bereiche stattfinden, damit die grundlegende Schreibleistung und die effizienten Speicherfunktionen nicht beeinträchtigt werden.

Hybrid-Systeme sind zwar preisgünstiger als reine Flash-Arrays, haben aber in Sachen einen absehbaren Nachteil: Fordert eine VM alte Daten an, die sich nicht im Flash-Tier befinden, müssen sie vom Festplattenspeicher abgerufen werden, der üblicherweise aus langsamen Festplatten (5.400 U/min) mit hoher Kapazität (4 TB) besteht. Die Auswirkungen von Cache- oder Tier-Misses lassen sich in Evaluierungslaboren aber nur sehr schwer abschätzen, weshalb man die Auswirkungen eigentlich nicht kennt, bis dieser Fall in der Produktionsumgebung eintritt. Dann ist es aber schon zu spät und die Nutzer spüren den Nachteil bei der Arbeit.

Reine Flash-Option

Das hohe Leistungsversprechen reiner Flash-Arrays mag reizvoll sein, ihr Preis ist dagegen weniger attraktiv. Daher haben sich die Anbieter reiner Flash-Lösungen sehr bemüht, Funktionen wie Daten-Deduplizierung und Komprimierung zu integrieren und somit die Kosten der reinen Flash-Arrays etwas zu drücken. Manche integrieren sogar Netzwerkkomponenten direkt in das Storage-System, damit es noch einfacher wird, Hochleistungsnetzwerke einzurichten.

Unter diesen Zusatzfunktionen leidet dann aber wieder die Performance. Derartige Systeme erzielen in der Regel eine Performance von 300.000-500.000 IOPS statt der mehr als eine Million IOPS zweckgebundener Flash-Appliances ohne Zusatzfunktionen. Da die große Mehrheit der virtualisierten Durchschnittsumgebungen normalerweise nicht mehr als 300.000-500.000 IOPS benötigt, erfreuen sich reine Flash-Arrays wachsender Beliebtheit.

Server-Optimierung steigert Performance, birgt aber Herausforderungen

Die Performance lässt sich auch durch ein neues Shared-Storage-System bestehend aus Server-seitiger Cache-Software und intern installiertem Flash-Speicher verbessern. Normalerweise erweitert man dazu die bereits bestehenden Server um Boards mit PCIe-Solid-State-Drives (PCIe-SSD) und verlagert die Daten lokal in die Caches dieser Systeme. Wie schon beim zuvor beschriebenen Hybrid-Array sorgen diese Systeme dafür, dass die aktiven Daten der einzelnen virtuellen Maschinen lokal auf ihrem Host-Server gespeichert werden.

In gewisser Hinsicht ist das ideal. Die Daten, auf die am häufigsten zugegriffen wird, werden lokal auf dem für die VM verantwortlichen Server in den Cache geschrieben und müssen nicht erst über das Speichernetzwerk transportiert werden. Wartezeiten, bis das Shared-Storage-System Daten abruft, entfallen. Normalerweise reicht es, die PCIe-SSDs anzuschaffen, sodass man um ein Upgrade des Speichernetzwerks und des Shared-Storage-Systems herumkommt. Da der Storage direkt angeschlossen wird, dürfte die Performance besser sein als bei den zuvor beschriebenen Optionen – vorausgesetzt, es kann genug PCIe-SSD-Kapazität angeschafft werden.

Andererseits gilt es bei der Server-seitigen Optimierung, drei große Schwierigkeiten zu überwinden. Erstens beziehen sich die meisten Server-Caching-Technologien nur auf Lese-Zugriffe, Schreibvorgänge werden also nicht beschleunigt. Das liegt vor allem daran, dass Daten verloren gehen könnten, wenn eine SSD ausfällt, während noch nicht zugeordnete Schreibvorgänge im Cache sind. Einige Hersteller arbeiten hier mit redundanter Technologie, um Write-Caching umsetzen zu können, doch im Grunde sind die Daten solange gefährdet, bis sie den Server verlassen und auf das Shared-Storage-Gerät geschrieben werden.

Die zweite Herausforderung liegt in der VM-Migration. Die meisten Anbieter von Server-seitigem Cache haben sich inzwischen auf VM eingestellt und entfernen bei Migrationen den Cache. Die „verschobene“ VM muss daher auf ihrem neuen Host so lange mit der Festplatten-Performance auskommen, bis die Daten neu eingestuft und in den PCIe-SSD-Cache des neuen Hosts überführt wurden.

Auch hier suchen manche Caching-Anbieter nach Lösungen, indem sie zum Beispiel Cache-Netzwerk-Technologien schaffen, bei denen der alte Host (bei längerer Latenz) weiter den Cache-Speicherplatz stellt. Die Lösungen anderer Anbieter kopieren stattdessen die Cache-Metadaten auf den neuen Server, damit die Daten während des Cache-Wiederaufbaus nicht neu eingestuft werden müssen und es schneller geht, die richtigen Daten wieder in den Cache zu laden.

Die letzte Hürde ist der Preis. Je nach Anzahl der zu beschleunigenden Server oder Hosts kann es sehr teuer sein, für jeden dieser Server die nötigen PCIe-SSDs mit hoher Kapazität und die entsprechende Cache-Software zu installieren. Es kann sogar vorkommen, dass ein neues Shared-Storage-System billiger wäre.

Welche Strategie ist die richtige?

Um dichtere VM-Umgebungen mit höherer Performance umzusetzen, ist Flash die beste Lösung. Die Frage ist nur, wie und wo man die Flash-Lösungen implementiert. Für die meisten Umgebungen könnte eine Flash-Erweiterung von Shared-Storage die erste Wahl sein. Wird aus Kostengründen ein Hybrid-System in Betracht gezogen, ist besonders in virtualisierten Umgebungen darauf zu achten, niemals ein zu großes Flash-Tier zuzuweisen.

Wenn es Ihnen aber eher um Vorhersagbarkeit geht, sollten Sie sich lieber für ein reines Flash-Array entscheiden. Server-seitige Flash-Angebote sollten entweder der zweite Schritt sein, um nach der Einführung von Flash-gestütztem Shared-Storage einzelne Performance-Bremsen zu isolieren, oder zur Anwendung kommen, wenn die PCIe-SSD-Aufrüstung billiger ist als das Upgrade des Netzwerks und des Shared-Storage.

Artikel wurde zuletzt im September 2014 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Datenspeicherlösungen für virtuelle Server

0 Kommentare

Älteste Beiträge 

Passwort vergessen?

Kein Problem! Tragen Sie Ihre E-Mail-Adresse unten ein. Wir werden Ihnen eine E-Mail mit Ihrem Passwort schicken.

Ihr Passwort wurde an die folgende E-Mail-Adresse gesendet::

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchNetworking.de

SearchEnterpriseSoftware.de

SearchDataCenter.de

Close