Mit der Hardwarebeschleunigung kann Ihr ESXi-Host in Blockspeichergeräte, Fibre Channel oder iSCSI integriert werden und Speicher-Array-Vorgänge verwenden, die „Full Copy“, „Block zeroing“ und „Hardware assisted locking“ umfassen.

Die ESXi-Hardwarebeschleunigung unterstützt die folgenden Array-Vorgänge:

  • „Full Copy“ (wird auch als „Clone Blocks“ oder „Copy Offload“ bezeichnet). Speicher-Arrays können vollständige Kopien der Daten innerhalb des Arrays erstellen, ohne dass der Host die Daten lesen und schreiben muss. Dieser Vorgang reduziert die Zeit und die Netzwerkauslastung beim Klonen von virtuellen Maschinen, beim Bereitstellen einer Vorlage oder beim Migrieren mit vMotion.
  • „Block zeroing“ (wird auch als „write same“ bezeichnet). Speicher-Arrays können eine große Anzahl von Blöcken mit Nullbyte füllen, um neu zugeteilten Speicher, der keine bereits geschriebenen Daten enthält, bereitzustellen. Dieser Vorgang reduziert die Zeit und die Netzwerkauslastung beim Erstellen von virtuellen Maschinen und beim Formatieren von virtuellen Festplatten.
  • „Hardware assisted locking“ (wird auch als „atomic test and set [ATS]“ bezeichnet). Unterstützt das separate Sperren einer virtuellen Maschine, ohne SCSI-Reservierungen verwenden zu müssen. Diese Operation erlaubt das Sperren von Festplatten auf Sektorbasis anstatt der gesamten LUN (wie bei der Verwendung von SCSI-Reservierungen).

Wenden Sie sich hinsichtlich der Unterstützung der Hardwarebeschleunigung an Ihren Anbieter. Für bestimmte Speicher-Arrays ist es erforderlich, dass Sie die Unterstützung auf der Speicherseite aktivieren.

Auf Ihrem Host ist die Hardwarebeschleunigung standardmäßig verfügbar. Falls Ihr Speicher die Hardwarebeschleunigung nicht unterstützt, können Sie sie deaktivieren.

Neben der Unterstützung der Hardwarebeschleunigung bietet ESXi auch Unterstützung für das Thin Provisioning. Weitere Informationen hierzu finden Sie unter ESXi und Array-Thin Provisioning.

Deaktivieren der Hardwarebeschleunigung für Blockspeichergeräte

Auf Ihrem -Host ist die Hardwarebeschleunigung für Blockspeichergeräte standardmäßig aktiviert. Sie können die erweiterten Einstellungen des vSphere Client verwenden, um die Hardwarebeschleunigungsvorgänge zu deaktivieren.

Wenden Sie sich, wie bei allen erweiterten Einstellungen, an den VMware Support, bevor Sie die Hardwarebeschleunigung deaktivieren.

Prozedur

  1. Navigieren Sie im vSphere Client zum ESXi-Host.
  2. Klicken Sie auf die Registerkarte Konfigurieren.
  3. Klicken Sie unter System auf Erweiterte Systemeinstellungen.
  4. Zum Deaktivieren der Hardwarebeschleunigung ändern Sie den Wert für diese Optionen in 0:
    • VMFS3.HardwareAcceleratedLocking
    • DataMover.HardwareAcceleratedMove
    • DataMover.HardwareAcceleratedInit

Verwalten der Hardwarebeschleunigung auf Blockspeichergeräten

Um eine Integration mit den Blockspeicher-Arrays zu ermöglichen, verwendet vSphere die ESXi-Erweiterungen, die als „Storage APIs - Array Integration“ bezeichnet werden (früher VAAI). Mit dieser Integration kann vSphere die Array-Hardwarevorgänge verwenden.

In vSphere 5.x und höher werden diese Erweiterungen als T10 SCSI-Befehle implementiert. Folglich kann der ESXi-Host direkt mit den Geräten, die den T10 SCSI-Standard unterstützen, kommunizieren, d. h., die VAAI-Plug-Ins sind nicht erforderlich.

Wenn das Gerät T10 SCSI nicht oder nur teilweise unterstützt, kehrt ESXi zur Verwendung der auf dem Host installierten VAAI-Plug-Ins zurück. Der Host kann auch eine Kombination aus T10 SCSI-Befehlen und Plug-Ins verwenden. Die VAAI-Plug-Ins sind anbieterspezifisch und können entweder von VMware oder von Partnern entwickelt worden sein. Zum Verwalten des VAAI-fähigen Geräts hängt der Host den VAAI-Filter und das anbieterspezifische VAAI-Plug-In an das Gerät an.

Informationen darüber, ob Ihr Speicher VAAI Plug-Ins benötigt oder die Hardwarebeschleunigung über T10 SCSI-Befehle unterstützt, finden Sie im VMware-Kompatibilitätshandbuch oder kontaktieren Sie Ihren Speicheranbieter.

Sie können mehrere esxcli-Befehle verwenden, um Speichergeräte nach den Informationen zur Unterstützung der Hardwarebeschleunigung abzufragen. Geräten, die VAAI-Plug-Ins benötigen, stehen zudem die Beanspruchungsregeln zur Verfügung. Weitere Informationen zu esxcli-Befehlen finden Sie unter Erste Schritte mit ESXCLI.

Anzeigen der Hardwarebeschleunigungs-Plug-Ins und des Hardwarebeschleunigungsfilters

Um mit den Geräten zu kommunizieren, die die T10 SCSI-Norm nicht unterstützen, verfügt Ihr Host über einen einzigen VAAI-Filter und ein anbieterspezifisches VAAI-Plug-In. Verwenden Sie den esxcli -Befehl, um den Hardwarebeschleunigungsfilter und die Plug-Ins anzuzeigen, die derzeit in Ihrem System geladen sind.

Voraussetzungen

Installieren Sie ESXCLI. Siehe Erste Schritte mit ESXCLI. Zur Fehlerbehebung führen Sie esxcli-Befehle in der ESXi Shell aus.

Prozedur

  • Führen Sie den Befehl esxcli storage core plugin list --plugin-class=value aus.
    Geben Sie für Wert einen der folgenden Parameter ein:
    • Geben Sie VAAI ein, um die Plug-Ins anzuzeigen.
      Die Ausgabe dieses Befehls lautet in etwa wie folgt:
      #esxcli storage core plugin list --plugin-class=VAAI
      Plugin name         Plugin class
      VMW_VAAIP_EQL       VAAI
      VMW_VAAIP_NETAPP    VAAI
      VMW_VAAIP_CX        VAAI
      
    • Geben Sie Filter ein, um den Filter anzuzeigen.
      Die Ausgabe dieses Befehls lautet in etwa wie folgt:
      esxcli storage core plugin list --plugin-class=Filter
      Plugin name  Plugin class 
      VAAI_FILTER  Filter

Verifizieren des Status der Hardwarebeschleunigungs-Unterstützung

Verwenden Sie den esxcli-Befehl, um den Hardwarebeschleunigungs-Unterstützungsstatus eines bestimmten Speichergeräts zu überprüfen.

Voraussetzungen

Installieren Sie ESXCLI. Siehe Erste Schritte mit ESXCLI. Zur Fehlerbehebung führen Sie esxcli-Befehle in der ESXi Shell aus.

Prozedur

  • Führen Sie den folgenden Befehl aus: esxcli storage core device list -d=device_ID.
    Die Ausgabe zeigt den Hardwarebeschleunigungs- oder VAAI-Status an, der „Unbekannt“, „Unterstützt“ oder „Nicht unterstützt“ lauten kann.
    # esxcli storage core device list -d naa.XXXXXXXXXXXX4c
    naa.XXXXXXXXXXXX4c
     Display Name: XXXX Fibre Channel Disk(naa.XXXXXXXXXXXX4c)
     Size: 20480
     Device Type: Direct-Access
     Multipath Plugin: NMP
     XXXXXXXXXXXXXXXX
     Attached Filters: VAAI_FILTER
     VAAI Status: supported
     XXXXXXXXXXXXXXXX
    

Verifizieren der Details der Hardwarebeschleunigungs-Unterstützung

Verwenden Sie den Befehl esxcli, um abzufragen, ob das Blockspeichergerät die Hardwarebeschleunigungs-Unterstützung bietet.

Voraussetzungen

Installieren Sie ESXCLI. Siehe Erste Schritte mit ESXCLI. Zur Fehlerbehebung führen Sie esxcli-Befehle in der ESXi Shell aus.

Prozedur

  • Führen Sie den folgenden Befehl aus: esxcli storage core device vaai status get -d=device_ID.
    Wenn ein VAAI-Plug-In das Gerät verwaltet, wird bei der Ausgabe der Name des Plug-Ins angezeigt, der dem Gerät zugewiesen ist. Die Ausgabe zeigt zudem den Unterstützungsstatus für jedes T10 SCSI-basierte einfache Plug-In an, falls verfügbar. Dies ist ein Beispiel für eine Ausgabe:
    # esxcli storage core device vaai status get -d naa.XXXXXXXXXXXX4c
    naa.XXXXXXXXXXXX4c
     VAAI Plugin Name: VMW_VAAIP_SYMM
     ATS Status: supported
     Clone Status: supported
     Zero Status: supported
     Delete Status: unsupported

Auflisten der Hardwarebeschleunigungs-Beanspruchungsregeln

Jedes von einem VAAI-Plug-In verwaltete Blockspeichergerät benötigt zwei Beanspruchungsregeln. Eine Beanspruchungsregel gibt den Hardwarebeschleunigungsfilter an, die andere das Hardwarebeschleunigungs-Plug-In für das Gerät. Sie können die Beanspruchungsregeln für den Hardwarebeschleunigungsfilter und das Hardwarebeschleunigungs-Plug-In mithilfe der esxcli-Befehle auflisten.

Prozedur

  1. Führen Sie zum Auflisten der Filterbeanspruchungsregeln den Befehl esxcli storage core claimrule list --claimrule-class=Filter aus.
    In diesem Beispiel geben die Filterbeanspruchungsregeln die Geräte an, die der VAAI_FILTER-Filter beansprucht.
    # esxcli storage core claimrule list --claimrule-class=Filter
    Rule Class   Rule   Class   Type   Plugin      Matches                    XCOPY Use Array Reported Values  XCOPY Use Multiple Segments  XCOPY Max Transfer Size KiB
    Filter       65430  runtime vendor VAAI_FILTER vendor=EMC model=SYMMETRIX                           False                        False                            0
    Filter       65430  file    vendor VAAI_FILTER vendor=EMC model=SYMMETRIX                           False                        False                            0
    Filter       65431  runtime vendor VAAI_FILTER vendor=DGC model=*                                   False                        False                            0
    Filter       65431  file    vendor VAAI_FILTER vendor=DGC model=*                                   False                        False                            0
  2. Führen Sie zum Auflisten der VAAI-Plug-In-Beanspruchungsregeln den Befehl esxcli storage core claimrule list --claimrule-class=VAAI aus.
    In diesem Beispiel geben die VAAI-Beanspruchungsregeln die Geräte an, die das VAAI-Plug-In beansprucht.
    esxcli storage core claimrule list --claimrule-class=VAAI
    Rule Class   Rule   Class   Type    Plugin         Matches                   XCOPY Use Array Reported Values  XCOPY Use Multiple Segments  XCOPY Max Transfer Size KiB
    VAAI         65430  runtime vendor  VMW_VAAIP_SYMM vendor=EMC model=SYMMETRIX                          False                        False                            0
    VAAI         65430  file    vendor  VMW_VAAIP_SYMM vendor=EMC model=SYMMETRIX                          False                        False                            0
    VAAI         65431  runtime vendor  VMW_VAAIP_CX   vendor=DGC model=*                                  False                        False                            0
    VAAI         65431  file    vendor  VMW_VAAIP_CX   vendor=DGC model=*                                  False                        False                            0

Hinzufügen von Hardwarebeschleunigungs-Beanspruchungsregeln

Um die Hardwarebeschleunigung für einen neuen Array zu konfigurieren, fügen Sie zwei Beanspruchungsregeln hinzu, eine für den VAAI-Filter und einen für das VAAI-Plug-In. Zur Aktivierung der neuen Beanspruchungsregeln müssen Sie diese zunächst definieren und in Ihr System laden.

Voraussetzungen

Installieren Sie ESXCLI. Siehe Erste Schritte mit ESXCLI. Zur Fehlerbehebung führen Sie esxcli-Befehle in der ESXi Shell aus.

Prozedur

  1. Definieren Sie eine neue Beanspruchungsregel für den VAAI-Filter, indem Sie den Befehl esxcli storage core claimrule add --claimrule-class=Filter --plugin=VAAI_FILTER ausführen.
  2. Definieren Sie eine neue Beanspruchungsregel für das VAAI-Plug-In, indem Sie den Befehl esxcli storage core claimrule add --claimrule-class=VAAI ausführen.
  3. Laden Sie beide Beanspruchungsregeln, indem Sie die folgenden Befehle ausführen:
    esxcli storage core claimrule load --claimrule-class=Filter

    esxcli storage core claimrule load --claimrule-class=VAAI

  4. Führen Sie die VAAI-Filter-Beanspruchungsregel und dazu den Befehl esxcli storage core claimrule run --claimrule-class=Filter aus.
    Hinweis: Nur die Filterklasse-Regeln müssen ausgeführt werden. Wenn der VAAI-Filter ein Gerät beansprucht, findet er automatisch das richtige VAAI-Plug-In, das angehängt werden muss.

Beispiel: Definieren von Hardwarebeschleunigungs-Beanspruchungsregeln

Dieses Beispiel zeigt, wie die Hardwarebeschleunigung für IBM-Arrays mithilfe des VMW_VAAIP_T10-Plug-Ins konfiguriert werden. Verwenden Sie die folgende Befehlsfolge. Weitere Informationen zu den Befehlsoptionen finden Sie unter Hinzufügen von Multipathing-Beanspruchungsregeln.

# esxcli storage core claimrule add --claimrule-class=Filter --plugin=VAAI_FILTER --type=vendor --vendor=IBM --autoassign

# esxcli storage core claimrule add --claimrule-class=VAAI --plugin=VMW_VAAIP_T10 --type=vendor --vendor=IBM --autoassign

# esxcli storage core claimrule load --claimrule-class=Filter

# esxcli storage core claimrule load --claimrule-class=VAAI

# esxcli storage core claimrule run --claimrule-class=Filter

Konfigurieren von XCOPY-Parametern

XCOPY ist eines der VAAI-Primitive, die zum Auslagern von Aufgaben in den Speicher-Array verwendet werden. Mit XCOPY können Sie beispielsweise Vorgänge wie die Migration oder das Klonen von virtuellen Maschinen in den Array auslagern, statt zur Durchführung dieser Aufgaben vSphere-Ressourcen zu verbrauchen.

Sie können den XCOPY-Mechanismus bei allen Speicher-Arrays verwenden, die das von VMware entwickelte und auf den SCSI-Standards von T10 basierende VMW_VAAIP_T10-Plug-In unterstützen. Zum Aktivieren des XCOPY-Mechanismus erstellen Sie eine Beanspruchungsregel der VAAI-Klasse.

Voraussetzungen

Installieren Sie ESXCLI. Siehe Erste Schritte mit ESXCLI. Zur Fehlerbehebung führen Sie esxcli-Befehle in der ESXi Shell aus.

Prozedur

  • Verwenden Sie den folgenden Befehl und geben Sie die XCOPY-Optionen ein:
    esxcli storage core claimrule add --claimrule-class=VAAI

    Weitere Informationen zu den Befehlsoptionen finden Sie unter Hinzufügen von Multipathing-Beanspruchungsregeln.

    Option Beschreibung
    -a|--xcopy-use-array-values Für XCOPY-Befehle werden vom Array gemeldete Werte verwendet.
    -s|--xcopy-use-multi-segs Für XCOPY-Befehle werden mehrere Segmente verwendet. Nur gültig, wenn --xcopy-use-array-values angegeben ist.
    -m|--xcopy-max-transfer-size Maximale Übertragungsgröße in MB für die XCOPY-Befehle, wenn Sie eine andere Übertragungsgröße als die vom Array gemeldete verwenden. Nur gültig, wenn --xcopy-use-array-values angegeben ist.
    -k|--xcopy-max-transfer-size-kib Maximale Übertragungsgröße in KiB für die XCOPY-Befehle, wenn Sie eine andere Übertragungsgröße als die vom Array gemeldete verwenden. Nur gültig, wenn --xcopy-use-array-values angegeben ist.

    -e | --extended-xcopy-support

    Verwenden Sie den erweiterten XCOPY-Befehl, um die Datenkopie zwischen Datenspeichern zu optimieren, die sich in unterschiedlichen Speicher-Arrays befinden.

Beispiel: Konfigurieren von XCOPY

  • # esxcli storage core claimrule add -r 914 -t vendor -V XtremIO -M XtremApp -P VMW_VAAIP_T10 -c VAAI -a -s -k 64
  • # esxcli storage core claimrule add -r 65430 -t vendor -V EMC -M SYMMETRIX -P VMW_VAAIP_SYMM -c VAAI -a -s -m 200

Optimieren des Datenkopiervorgangs mit erweitertem XCOPY-Parameter

Der erweiterte XCOPY-Parameter optimiert die Datenkopie zwischen Datenspeichern über zwei verschiedene Arrays hinweg. Damit können Sie Arbeitslasten migrieren und klonen, um XCOPY zwischen zwei unterschiedlichen Arrays auszulagern.

Erweiterte XCOPY-Eigenschaften:
  • Verwenden Sie eine neue erweiterte XCOPY-Option in einer Beanspruchungsregel.

    esxcli storage core claimrule add -t vendor -V vendor -M model name -P VMW_VAAIP_T10 -c VAAI --autoassign -e

    Beispiel:

    esxcli storage core claimrule add -t vendor -V DellEMC -M PowerStore -P VMW_VAAIP_T10 -c VAAI --autoassign -e

  • Extended XCOPY wird nur auf dem T10-Plug-In unterstützt.
Prozedur
  1. Verwenden Sie den folgenden Befehl, um den erweiterten XCOPY-Status zu überprüfen.
    esxcli storage core device vaai status get -d Gerät
    Beispiel:
    [root@tpp-h127:~] esxcli storage core device vaai status get -d naa.68ccf098007f554c61148eb1786e6749
    naa.68ccf098007f554c61148eb1786e6749
       VAAI Plugin Name: VMW_VAAIP_T10
       ATS Status: supported
       Clone Status: supported
       Zero Status: supported
       Delete Status: supported
       Ex Clone Status: supported"
    
  2. Aktivieren Sie die erweiterte XCOPY-Funktion für den unterstützten Speicher-Array.
    1. Überprüfen Sie, ob das VAAI_FILTER-Plug-In-Gerät hinzugefügt wurde.
      esxcli storage core claimrule list -c Filter
    2. Wenn das Gerät nicht für das VAAI_FILTER Plug-In hinzugefügt wird, verwenden Sie den folgenden Befehl.
      esxcli storage core claimrule add -t vendor -V vendor -M model name -P VAAI_FILTER -c Filter --autoassign
    3. Laden Sie die VAAI_FILTER-Beanspruchungsregel.
      esxcli storage core claimrule load -c Filter
    4. Fügen Sie die erweiterte XCOPY-Beanspruchungsregel mit dem T10-Plug-In hinzu.
      esxcli storage core claimrule add -t vendor -V vendor -M model name -P VMW_VAAIP_T10 -c VAAI --autoassign -e
      Hinweis:
      • Die Beanspruchungsregel in Schritt d verwendet die ESXi-Standardübertragungsgröße und ein einzelnes Segment für XCOPY-Befehle. Um vom Array gemeldete Werte unterschiedlicher Übertragungsgröße und mehrerer Segmente zu verwenden, verwenden Sie die optionalen Parameter -a, -s, -m|-k mit dem obigen Befehl.
      • Die erweiterte XCOPY-Einrichtung funktioniert über verschiedene Arrays hinweg.
      • Fügen Sie für Quell- und Zielgeräte eine Beanspruchungsregel mit optionalen Parametern wie -a, -s, -m|-k hinzu. In diesem Fall wird die minimale Übertragungsgröße für Quell- und Ziel-Arrays für die Datenübertragung berücksichtigt.

        Quellgerät:

        esxcli storage core claimrule add -t vendor -V vendor -M model name -P VMW_VAAIP_T10 -c VAAI --autoassign -a -s

        Zielgerät:

        esxcli storage core claimrule add -t vendor -V vendor -M model name -P VMW_VAAIP_T10 -c VAAI --autoassign -a -s -e
    5. Laden Sie das VAAI_T10-Plug-In.
      esxcli storage core claimrule load -c VAAI
    6. Führen Sie die neu hinzugefügten Beanspruchungsregeloptionen aus.
      esxcli storage core claimrule run --claimrule-class=Filter

Löschen von Hardwarebeschleunigungs-Beanspruchungsregeln

Mithilfe des esxcli-Befehls können Sie vorhandene Hardwarebeschleunigungs-Beanspruchungsregeln löschen.

Voraussetzungen

Installieren Sie ESXCLI. Siehe Erste Schritte mit ESXCLI. Zur Fehlerbehebung führen Sie esxcli-Befehle in der ESXi Shell aus.

Prozedur

  • Führen Sie folgende Befehle aus:
    esxcli storage core claimrule remove -r claimrule_ID --claimrule-class=Filter

    esxcli storage core claimrule remove -r claimrule_ID --claimrule-class=VAAI