Flashbeschleunigung zu gemeinsam genutzten Speicherpools hinzufügen

Virtuelle I/O-Server (VIOS ) mit Shared Storage Pool (SSP) Flash-Beschleunigung können die Leistung durch die Verwendung von Solid-State Drive (SSD) oder Flash-Speicher-Caching auf dem Virtual I/O Server.

Diese Funktion ermöglicht es jedem Virtual I/O Server ein Flash-Caching-Gerät für das Nur-Lese-Caching zu verwenden. Beispiele für Flash-Caching-Einheiten:
  • Einheiten, die am Server angeschlossen sind, z. B. ein SSD im Server.
  • Einheiten, die über SAS-Controller (Serial Attached SCSI) direkt am Server angeschlossen sind.
  • Ressourcen, die im Speicherbereichsnetz (Storage Area Network, SAN) verfügbar sind.

Das VIOS muss in der Lage sein, das Gerät als Flash-Gerät zu identifizieren, damit das Gerät als Cache-Gerät verwendet werden kann. Das VIOS verwendet das Feld MEDIUM ROTATION RATE der SCSI Block Device Characteristics VPD Seite (SCSI INQUIRY Seite B1 ), um festzustellen, ob ein Gerät ein Flash-Gerät ist. Wenn eine Einheit diese Seite nicht unterstützt oder einen anderen Wert als 0001h Nicht rotierender Datenträger im Feld MITTLERE ROTATIONSRATE verwendet, kann die Einheit nicht als Cacheeinheit verwendet werden.

Sie können den maximalen Leistungsvorteil mithilfe lokal angeschlossener Flash-Caching-Einheiten ableiten.

SSP-Flash-Beschleunigung basiert auf dem Caching auf den virtuellen E/A-Servern, während Power-Flash-Caching oder serverseitiges Caching auf der logischen Clientpartition ausgeführt wird. Weitere Informationen zum Server-seitigen Caching finden Sie unter oder.

Beide Caching-Typen können unabhängig voneinander verwendet werden. Die Leistungsmerkmale dieser Caching-Typen sind ähnlich, wenn die Workloads auf den logischen Clientpartitionen vergleichbar sind.

SSP-Flashbeschleunigung führt schreibgeschütztes Caching über den gesamten Speicherpool aus, einschließlich aller Speichertier im Pool. Es werden ausschließlich die Benutzerdaten (Datenblöcke) im Pool zwischengespeichert, die Metadaten dagegen nicht. Stattdessen kann der Zugriff auf Metadaten möglicherweise mithilfe von SSD-Speicher auf dem SAN für den Systemtier beschleunigt werden.

SSP-Flashbeschleunigung – Konzepte und Begriffe

Sie können den Speicherpool dynamisch zwischenspeichern (Caching aktivieren oder inaktivieren), während Workloads auf den logischen Clientpartitionen ausgeführt werden. Die Workloads müssen nicht in einen inaktiven Status gebracht werden, um das Caching zu aktivieren. In der folgenden Tabelle sind die Begriffe zur Erläuterung des Konzepts des Flash-Cachings beschrieben.
Laufzeit Beschreibung
Cacheeinheit Eine Cacheeinheit ist ein Solid-State-Laufwerk (SSD) oder eine Flashplatte, das bzw. die für das Caching verwendet wird.
Cache-Pool Ein Cache-Pool ist eine Gruppe von Cacheeinheiten, die ausschließlich für das Speichercaching verwendet wird.
Caching einschalten Starten des Cachings für den Speicherpool.
Zwischenspeicherung deaktivieren Stoppen des Cachings für den Speicherpool.

Wenn Caching für den Speicherpool aktiviert ist, beginnt das Caching auf allen virtuellen E/A-Servern in dem Cluster, der über einen definierten Cache-Pool verfügt. Bei diesem Vorgang wird implizit ein logisches Cache-Gerät (eine so genannte Cache-Partition) aus dem lokalen Cache-Pool für jeden Virtual I/O Server. Wenn das Speicherpool-Caching aktiviert ist, werden alle Leseanforderungen für die Benutzerdatenblöcke des Speicherpools an die SSP-Caching-Software weitergeleitet. Wenn ein bestimmter Nutzdatenblock im lokalen Cache gefunden wird Virtual I/O Server cache gefunden, wird die E/A-Anforderung vom Cache-Gerät aus bearbeitet. Wenn der angeforderte Block im Cache nicht gefunden wird oder wenn es sich um eine Schreibanforderung handelt, wird die E/A-Anforderung direkt an die SAN-Einheiten des Speicherpools gesendet.

Wenn Caching für den Speicherpool inaktiviert ist, wird das Caching auf allen virtuellen E/A-Servern im Cluster gestoppt. Bei diesem Prozess wird implizit die logische Cacheeinheit vom lokalen Cache-Pool auf jedem Server bereinigt.

SSP-Flashbeschleunigung – Architektur und Komponenten

Zu den Komponenten der SSP-Flash-Beschleunigung gehören das VIOS, das Cache-Management und die Cache-Engine sowie der Speicherpool. Diese Komponenten werden in der folgenden Tabelle beschrieben.
Komponente Beschreibung
VIOS Die Verwaltung und das Management der Zwischenspeicherung erfolgt über die VIOS-Befehlszeilenschnittstelle mit dem Befehl sspcache.
Speicherpool (Pooltreiber) Der Speicherpool ist das Caching-Ziel und der Pooltreiber verwaltet die Cluster-Cache-Kohärenz.
Cache-Management und Cache-Engine Das Cache-Management stellt Cachekonfigurationsbefehle auf niedrigerer Ebene zur Verfügung, während die Cache-Engine die lokale Caching-Logik ausführt, um zu bestimmen, welche Blöcke im Speicherpool zwischengespeichert werden.
SSP-Flashbeschleunigung sorgt wie folgt für Kohärenz des verteilten Cache zwischen den virtuellen E/A-Servern:
  • Der Speicherpooltreiber koordiniert die Kohärenz des verteilten Cache auf dem gesamten Cluster.
  • Die Cache-Engine verwaltet Caching auf Knotenebene (Cacheeinträge werden hoch- oder herabgestuft) und interagiert mit dem Speicherpooltreiber, um die Cachekohärenz beizubehalten. Diese Komponente verwendet die gleiche lokale Caching-Methode wie das Power®-Flash-Caching oder das serverseitige Caching.
  • Die Cache-Engine wird für alle Speicherpool-E/A-Operationen verwendet. Dieser Caching-Typ ist auch als Lookaside-Caching bekannt.

Die folgende Abbildung veranschaulicht den Ablauf verschiedener E/A-Operationen bei aktiviertem Caching.

Dieses Image ist eine VIOS-Datei, die Informationen über die Architektur der SSP-Flash-Beschleunigung enthält.
Die Details der in der Abbildung dargestellten E/A-Operationen sind in der folgenden Tabelle erläutert.
E/A-Operation Beschreibung
Cachelesetreffer
  • VIOS leitet E/A-Leseanfragen von der logischen Partition des Clients an den Speicherpooltreiber weiter.
  • Speicherpooltreiber prüft die Cache-Engine und erkennt, dass der Speicherbereich in der lokalen Cacheeinheit zwischengespeichert ist.
  • Die E/A-Anforderung wird im Cache vollständig erfüllt und wieder an die logische Clientpartition zurückgegeben.
Cachelesefehler
  • VIOS leitet E/A-Leseanfragen von der logischen Partition des Clients an den Speicherpooltreiber weiter.
  • Speicherpooltreiber prüft die Cache-Engine und erkennt, dass der Speicherbereich nicht in der lokalen Cacheeinheit zwischengespeichert ist.
  • Der Speicherpooltreiber erfüllt die Anforderung vom SAN und diese wird wieder an die logische Clientpartition zurückgegeben.
Schreibvorgang
  • VIOS leitet die E/A-Schreibanforderung von der logischen Client-Partition an den Speicherpooltreiber weiter.
  • Der Speicherbereich wird auf allen Knoten im Cluster, für das der Speicherbereich zwischengespeichert wurde, ungültig gemacht, um die Cachekohärenz sicherzustellen.
  • Der Speicherpooltreiber führt die Schreibanforderung an das SAN aus.

Caching-Attribute bei der SSP-Flashbeschleunigung

Die Caching-Attribute in der SSP-Flashbeschleunigung lauten wie folgt:
Transparent für Anwendungen
Clusteranwendungen können auf den logischen Clientpartitionen verwendet werden.
Unabhängig von den Clientbetriebssystemen
Die Zwischenspeicherung wird von den Betriebssystemen AIX®, IBM® i und Linux® unterstützt.
Schreibgeschützter knotenspezifischer Cache
Die Ergebnisse von Schreiboperationen werden nach der Cacheinvalidierung an das SAN gesendet.
Gleichzeitiger und kohärenter Zugriff auf gemeinsame Daten
Unterstützt gleichzeitigen Zugriff auf gemeinsame Daten mit vollständiger Kohärenz in der SSP-Umgebung.
Unabhängig von den Speichertypen
Keine Abhängigkeit vom Typ des Flashspeichers für das Caching und des SAN-Speichers für SSP.

Vorteile der SSP-Flashbeschleunigung

Einige Vorteile der SSP-Flashbeschleunigung:
  • Verbesserung von Latenz und Durchsatz bei bestimmten Workloads wie z. B. analytische und transaktionsorientierte Workloads sowie bei der Onlinetransaktionsverarbeitung.
  • Transparente Beschleunigung, sodass die logischen Clientpartitionen das Caching auf virtuellen E/A-Servern nicht erkennen.
  • Bessere VM-Dichte (Virtuelle Maschine) ohne Leistungsbeeinträchtigungen.
  • Ermöglicht eine effizientere Nutzung und Skalierung von SAN-Infrastrukturen. Wenn das SAN Leseanforderungen auslagert, kann dies den Schreibdurchsatz auf eingeschränkten SANs verbessern.
  • Vorteile von gemeinsam genutzten Blöcken in VMs basierend auf geklonten virtuellen logischen Einheiten (Logical Units, LUs), wenn allgemeine Blöcke bereits zwischengespeichert wurden.
  • Kompatibilität mit Live Partition Mobility (LPM).

Einschränkungen des Cachings bei der SSP-Flashbeschleunigung

Beispiele für Einschränkungen des Cachings bei der SSP-Flashbeschleunigung:
  • Die SSP-Caching-Software ist als schreibgeschützter Cache konfiguriert, was bedeutet, dass nur Leseanforderungen von der SSD-Flasheinheit (Solid-State Drive) gelesen werden. Alle Schreibanforderungen werden ausschließlich vom Speicherpool verarbeitet und werden direkt an das SAN weitergeleitet.
  • In den Speicherpool geschriebene Daten werden nicht automatisch in den Cache eingefügt. Wenn die Schreiboperation für einen Block ausgeführt wird, der sich im Cache befindet, werden die im Cache vorhandenen Daten als ungültig markiert. Derselbe Block wird im Cache, abhängig davon, wie oft und wann zuletzt auf den Block zugegriffen wurde, erneut angezeigt.
  • Cacheeinheiten können nicht von mehreren virtuellen E/A-Servern gemeinsam genutzt werden.
  • Leistungsvorteile hängen von der Größe der eingelagerten Anwendungsseiten sowie vom Typ und der Größe des SAN-Platten-Controller-Cache ab. In der Regel muss der Verbund an zusammengestellten Anwendungsseiten größer sein als der SAN-Platten-Controller-Cache, um beträchtliche Leistungsvorteile realisieren zu können.

Konfiguration des Cachings bei der SSP-Flashbeschleunigung

Sie müssen die folgenden Schritte über die VIOS-Befehlszeilenschnittstelle ausführen, um das Caching zu aktivieren:
  1. Erstellen Sie auf jedem VIOS im Cluster einen Cache-Pool mit dem Befehl cache_mgt .
  2. Aktivieren Sie die Zwischenspeicherung des Speicherpools auf dem SSP-Cluster von einem einzelnen VIOS-Knoten aus, indem Sie den Befehl sspcache verwenden.
Die Erstellung des Cache-Pools auf jedem VIOS ist ein einmaliger Schritt. Die Syntax für diesen Befehl lautet wie folgt:
cache_mgt pool create –d <devName>[,<devName>,…] -p <poolName>
Um beispielsweise einen 1024 MB großen Cache auf jedem VIOS im Cluster zu erstellen und dann die Zwischenspeicherung im Speicherpool zu aktivieren, führen Sie die folgenden Schritte aus:
  1. Geben Sie den folgenden Befehl ein, um einen 1.024-MB-Cache zu erstellen:
    cache_mgt pool create –d /dev/hdisk11 –p cmpool0     
    Dieser Befehl muss auf allen virtuellen E/A-Servern im Cluster ausgeführt werden.
  2. Um die Zwischenspeicherung des Speicherpools auf dem SSP-Cluster von einem einzelnen VIOS-Knoten aus zu aktivieren, geben Sie den folgenden Befehl ein:
    sspcache -enable -sp -size 1024
    Dieser Befehl muss auf einem einzelnen VIOS im Cluster ausgeführt werden.

Management des Cachings bei der SSP-Flashbeschleunigung

Nachdem das Caching konfiguriert wurde, können sich mit der Zeit die Anforderungen an das Caching ändern. Möglicherweise müssen Sie neue Workloads hinzufügen, die zwischengespeichert werden müssen. Um diese geänderten Voraussetzungen zu erfüllen, kann der Cachepool bei Bedarf durch Hinzufügen zusätzlicher Cacheeinheiten erweitert werden. Auf diese Weise können Sie den Cache vergrößern.

Orientieren Sie sich bei der Caching-Konfiguration an den folgenden Beispielen.
  1. Um ein Cache-Gerät zum Cache-Pool hinzuzufügen, geben Sie auf jedem VIOS im Cluster den folgenden Befehl ein:
    > cache_mgt pool extend -p cmpool0 -d hdisk12 –f
  2. Zum Erweitern des Cache auf 2.048 MB geben Sie auf einem Knoten den folgenden Befehl ein:
    > sspcache –resize –sp –size 2048