Durch das Löschen oder Entfernen von Dateien aus einem VMFS-Datenspeicher wird Speicherplatz im Dateisystem freigegeben. Dieser freie Speicherplatz wird einem Speichergerät zugewiesen, bis er vom Dateisystem freigegeben oder die Zuordnung aufgehoben wird. ESXi unterstützt die Rückforderung von freiem Speicherplatz, die auch als Aufhebung der Zuordnung bezeichnet wird.

Dieser Vorgang ermöglicht dem Speicher-Array, nicht verwendeten Speicherplatz zurückzufordern. Nicht zugeordneter Speicherplatz kann dann für andere Anforderungen zur Speicherzuteilung und zur Erfüllung anderer Bedürfnisse verwendet werden.

Automatische Rückforderung von freiem Speicherplatz im VMFS6-Datenspeicher

In VMFS6-Datenspeichern unterstützt ESXi die automatische asynchrone Rückforderung von freiem Speicherplatz. VMFS6 kann den Befehl „Zuordnung aufheben“ ausführen, um auf per Thin Provisioning bereitgestellten Speicher-Arrays, die Vorgänge zum Aufheben der Zuordnung unterstützen, im Hintergrund freien Speicherplatz freizugeben.

Die automatische Aufhebung der Zuordnung hat zahlreiche Vorteile:
  • Anforderungen zum Aufheben der Zuordnung werden mit einer konstanten Häufigkeit gesendet. So lässt sich jegliche sofortige Belastung auf dem stützenden Array vermeiden.
  • Die Aufhebung der Zuordnung und die Bündelung erfolgt für freigegebene Regionen gemeinsam.
  • Die E/A-Leistung anderer Arbeitslasten wird durch den Befehl „Zuordnung aufheben“ nicht beeinträchtigt.

Für VMFS6-Datenspeicher können Sie die folgenden Parameter für die Speicherplatzrückforderung konfigurieren.

Granularität der Speicherplatzrückforderung
Die Granularität definiert die Mindestgröße eines freigegebenen Speicherplatzsektors, den zugrunde liegender Speicher zurückfordern kann. Sektoren, die kleiner sind als die angegebene Granularität, können vom Speicher nicht zurückgefordert werden.
Bei VMFS6 entspricht die Granularität der Rückforderung der Blockgröße. Wenn Sie als Blockgröße 1 MB angeben, ist die Granularität ebenfalls 1 MB. Speichersektoren, die kleiner als 1 MB sind, werden nicht zurückgefordert.
Hinweis: Bei bestimmten Speicher-Arrays wird die optimale Granularität für die Aufhebung der Zuordnung empfohlen. ESXi unterstützt die automatische Aufhebung der Zuordnung der Verarbeitung auf Arrays mit der empfohlenen Granularität der Zuordnungsaufhebung von 1 MB oder höher, zum Beispiel 16 MB. In den Arrays mit der optimalen Granularität von 1 MB und weniger wird die Aufhebung der Zuordnung unterstützt, wenn die Granularität ein Faktor von 1 MB ist. Beispiel: 1 MB kann durch 512 Byte, 4 KB, 64 KB usw. geteilt werden.
Speicherplatzrückforderungsmethode
Die Methode kann entweder „Priorität“ oder „Fest“ sein. Wenn die eingesetzte Methode „Priorität“ ist, konfigurieren Sie die Prioritätsrate. Für die Methode „Fest“ müssen Sie die Rückforderungsrate in MB pro Sekunde angeben.
Sie können den vSphere Client verwenden, um die Prioritätsmethode beim Erstellen des VMFS6-Datenspeichers festzulegen. Um die Methode „Fest“ zu aktivieren, können Sie später die Einstellungen für die Speicherplatzrückforderung für den bestehenden Datenspeicher ändern.
Alternativ können Sie den Befehl esxcli storage vmfs reclaim config set verwenden, um Parameter für die Speicherplatzrückforderung festzulegen.
Priorität der Speicherplatzrückforderungsrate
Dieser Parameter definiert die Rate, mit der die Speicherplatzrückforderung durchgeführt wird, wenn Sie die Rückforderungsmethode Priorität verwenden. In der Regel sendet VMFS6 die Befehle zum Aufheben der Zuordnung entweder in Bursts oder sporadisch, je nach Arbeitslast und Konfiguration. Für VMFS6 können Sie eine der folgenden Optionen angeben.
Priorität der Speicherplatzrückforderung Beschreibung Konfiguration
Keine Deaktiviert die Vorgänge zum Aufheben der Zuordnung für den Datenspeicher. vSphere Client

Befehl esxcli

Niedrig (Standard) Sendet den Befehl „Zuordnung aufheben“ mit einer weniger häufigen Rate: 25–50 MB pro Sekunde. vSphere Client

Befehl esxcli

Mittel Sendet den Befehl mit einer Rate, die doppelt so schnell wie die niedrige Rate ist: 50–100 MB pro Sekunde. Befehl esxcli
Hoch Sendet den Befehl mit einer Rate, die drei Mal so schnell wie die niedrige Rate ist: über 100 MB pro Sekunde. Befehl esxcli
Speicherplatzrückforderungs-Hosts
Dieser Parameter definiert die Anzahl der ESXi-Hosts, die Befehle zum Aufheben der Zuordnung an einen VMFS6-Datenspeicher zur automatischen Speicherplatzrückforderung ausgeben können. Verwenden Sie diesen Parameter, um die kumulative Menge an Speicherplatzrückforderung zu begrenzen, die für den zugrunde liegenden VMFS6-Zielsicherungs-Datenspeicher ausgegeben wird.

Nach der Aktivierung der Speicherplatzrückforderung kann der VMFS6-Datenspeicher mit der Freigabe der Blöcke nicht genutzten Speicherplatzes nur dann beginnen, wenn er über mindestens eine geöffnete Datei verfügt. Diese Bedingung kann erfüllt werden, wenn Sie beispielsweise eine der VMs im Datenspeicher einschalten.

Konfigurieren der Prioritätsrückforderung beim Erstellen eines VMFS6-Datenspeichers

Die Einstellungen für die Speicherplatzrückforderung steuern, wie gelöschte oder nicht zugeordnete Blöcke auf den Geräten zurückgefordert werden, die den Datenspeicher stützen. Wenn Sie einen VMFS6-Datenspeicher in vSphere Client erstellen, können Sie als einzige Methode für die Speicherplatzrückforderung „Priorität“ angeben. Sie können die Speicherplatzrückforderung auch beim Erstellen des Datenspeichers deaktivieren.

Prozedur

  1. Navigieren Sie im vSphere Client-Objektnavigator zu einem Host, Cluster oder Datencenter.
  2. Wählen Sie im Kontextmenü Speicher > Neuer Datenspeicher aus.
  3. Führen Sie die Schritte zum Erstellen eines VMFS6-Datenspeichers durch.
  4. Geben Sie auf der Seite Partitionskonfiguration die Parameter für die Speicherplatzrückforderung an.
    Die Parameter definieren die Granularität und die Prioritätsrate, mit der die Vorgänge zur Speicherplatzrückforderung durchgeführt werden. Auf dieser Seite können Sie die Speicherplatzrückforderung für den Datenspeicher auch deaktivieren.
    Option Beschreibung
    Blockgröße Die Blockgröße in einem VMFS-Datenspeicher bestimmt die maximale Dateigröße und den Speicherplatz, den die Datei einnimmt. VMFS6 unterstützt eine Blockgröße von 1 MB.
    Granularität der Speicherplatzrückforderung Gibt die Granularität des Vorgangs zum Aufheben der Zuordnung an. Die Granularität der Aufhebung der Zuordnung entspricht der Blockgröße, d. h. 1 MB.

    Speichersektoren, die kleiner als 1 MB sind, werden nicht zurückgefordert.

    Priorität der Speicherplatzrückforderung Wählen Sie eine der folgenden Optionen aus.
    • Niedrig (Standard) Verwenden Sie die Prioritätsmethode für die Speicherplatzrückforderung. Der Vorgang zum Aufheben der Zuordnung wird mit einer niedrigen Prioritätsrate durchgeführt.
    • Keine. Wählen Sie diese Option aus, wenn Sie die Vorgänge zur Speicherplatzrückforderung für den Datenspeicher verwenden möchten.
    Hinweis: Im vSphere Client sind für die Priorität der Speicherrückforderung nur zwei Optionen verfügbar: „Niedrig“ und „Keine“. Um die Einstellungen in „Mittel“ oder „Hoch“ zu ändern, müssen Sie den Befehl esxcli verwenden.
  5. Schließen Sie das Erstellen des Datenspeichers ab.

Ergebnisse

Nach der Aktivierung der Speicherplatzrückforderung kann der VMFS6-Datenspeicher mit der Freigabe der Blöcke nicht genutzten Speicherplatzes nur dann beginnen, wenn er über mindestens eine geöffnete Datei verfügt. Diese Bedingung kann erfüllt werden, wenn Sie beispielsweise eine der VMs im Datenspeicher einschalten.

Konfigurieren einer Rückforderung mit fester Rate für den vorhandenen VMFS6-Datenspeicher

Um die Rückforderungsmethode „Fest“ zu aktivieren, müssen Sie die Einstellungen für die Speicherplatzrückforderung für den Datenspeicher ändern.

Prozedur

  1. Navigieren Sie im vSphere Client zum Datenspeicher.
  2. Wählen Sie im Kontextmenü die Option Speicherplatzrückforderung bearbeiten aus.
  3. Geben Sie die Einstellung für die Speicherplatzrückforderung an.
    Option Beschreibung
    Automatische Speicherplatzrückforderung zu fester Rate aktivieren Verwenden Sie die feste Methode für die Speicherplatzrückforderung. Geben Sie die Rückforderungsrate in MB pro Sekunde an. Der verfügbare Mindestwert beträgt 10 MB pro Sekunde.
    Automatische Speicherplatzrückforderung deaktivieren Gelöschte oder nicht zugeordnete Blöcke werden nicht zurückgefordert.

    Wählen Sie diese Option aus, wenn Sie die Vorgänge zur Speicherplatzrückforderung für den Datenspeicher deaktivieren möchten.

  4. Klicken Sie auf OK, um die neuen Einstellungen zu speichern.
  5. Führen Sie den Datenspeicher aus, damit die Änderungen durchgeführt werden.
    1. Unmounten von Datenspeichern.
    2. Mounten von Datenspeichern.
  6. Wiederholen Sie diesen Vorgang für alle ESXi-Hosts, die auf den Datenspeicher zugreifen.

Ergebnisse

Der geänderte Wert für die Priorität der Speicherplatzrückforderung wird auf der Seite Allgemein des Datenspeichers angezeigt.

Verwenden des ESXCLI-Befehls zum Ändern der Speicherplatzrückforderung auf VMFS6

Sie können die standardmäßige Priorität der Speicherplatzrückforderung, die Granularität und andere Parameter ändern.

Prozedur

  1. Verwenden Sie auf dem ESXi-Host folgenden Befehl zum Festlegen von Rückforderungsparametern.
    esxcli storage vmfs reclaim config set

    Der Befehl verfügt über diese Optionen:

    Option Beschreibung
    -b|--reclaim-bandwidth Feste Bandbreite zur Speicherplatzrückforderung in MB pro Sekunde.
    -g|--reclaim-granularity Minimale Granularität der automatischen Speicherplatzrückforderung in Byte.
    -m|--reclaim-method Die Methode der automatischen Speicherplatzrückforderung. Unterstützte Optionen:
    • priority
    • Fest
    -n|--reclaim-maxhosts Maximale Anzahl der ESXi-Hosts, die Befehle zum Aufheben der Zuordnung an einen VMFS6-Datenspeicher für die automatische Speicherplatzrückforderung ausgeben können.
    -p|--reclaim-priority Priorität der automatische Speicherplatzrückforderung. Unterstützte Optionen:
    • keine
    • low
    • medium
    • high
    -l|--volume-label Die Bezeichnung des VMFS-Ziel-Volumes.
    -u|--volume-uuid Die UUID des VMFS-Ziel-Volumes.
    Sie können die folgenden Beispiele verwenden.
    • Legen Sie die Rückforderungsmethode auf „Fest“ und den Wert auf 100 MB pro Sekunde fest.
      esxcli storage vmfs reclaim config set --volume-label datastore_name --reclaim-method fixed -b 100
    • Deaktivieren Sie die automatische Speicherplatzrückforderung für VMFS.
      esxcli storage vmfs reclaim config set --volume-label datastore_name --reclaim-priority none
    Hinweis: Wenn Sie nur den Parameter -n|--reclaim-maxhosts ohne andere Parameter festlegen, können Sie Schritt 2 überspringen. Es dauert etwa 30 Minuten, bis der aktualisierte Wert des Parameters reclaim-maxhosts auf allen ESXi-Hosts wirksam wird, auf denen der VMFS6-Datenspeicher bereitgestellt wurde.
  2. Unmounten Sie den VMFS6-Datenspeicher von allen anderen ESXi-Hosts, auf denen der Datenspeicher gemountet ist, und mounten Sie ihn dann erneut.
    1. Unmounten von Datenspeichern.
    2. Mounten von Datenspeichern.
    Dieser Schritt stellt sicher, dass alle ESXi-Hosts, auf denen der VMFS6-Datenspeicher gemountet wurde, die Rückforderungseinstellungen für den Datenspeicher aktualisieren.

Verifizieren von Einstellungen für die automatische Speicherplatzrückforderung auf VMFS6

Nachdem Sie die Parameter der Speicherplatzrückforderung für einen VMFS6-Datenspeicher konfiguriert oder bearbeitet haben, können Sie Ihre Einstellungen überprüfen.

Prozedur

  1. Navigieren Sie im vSphere Client zum Datenspeicher.
  2. Klicken Sie auf die Registerkarte Konfigurieren.
  3. Klicken Sie auf Allgemein.
  4. Überprüfen Sie unter Speicherplatzrückforderung die Einstellung für die Priorität der Speicherplatzrückforderung.
    Wenn Sie Werte über den Befehl esxcli konfiguriert haben, z. B. Medium oder High für die Priorität der Speicherplatzrückforderung, werden diese Werte auch im vSphere Client angezeigt.

Ergebnisse

Der Screenshot zeigt Einstellungen für die Speicherplatzrückforderung.

Beispiel: Abrufen von Parametern für die VMFS6-Speicherplatzrückforderung

Mit dem Befehl esxcli storage vmfs reclaim config get -l=VMFS_bezeichnung|-u=VMFS_uuid können Sie ebenfalls Informationen für die Konfiguration der Speicherplatzrückforderung abrufen.
# esxcli storage vmfs reclaim config get -l my_datastore 
Reclaim Granularity: 1048576 Bytes 
Reclaim Priority: low
Reclaim Method: priority
Reclaim Bandwidth: 26 MB/s
Reclaim Maximum Hosts: 128

Manuelles Rückfordern von angesammeltem Speicherplatz auf VMFS5

Auf VMFS-Datenspeichern wie VMFS5, die die automatische Speicherplatzrückforderung nicht unterstützen, können Sie den Befehl esxcli verwenden, um nicht genutzten Speicherplatz manuell zurückzufordern.

Denken Sie bei der Verwendung dieses Befehls daran, dass er möglicherweise viele Anforderungen zur Aufhebung der Zuordnung auf einmal sendet. Durch diese Aktion können einige der Ressourcen während des Vorgangs gesperrt werden. Denken Sie bei der Verwendung dieses Befehls daran, dass er möglicherweise viele Anforderungen zur Aufhebung der Zuordnung auf einmal sendet. Durch diese Aktion können einige der Ressourcen während des Vorgangs gesperrt werden.

Voraussetzungen

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

Prozedur

  1. Führen Sie den folgenden Befehl aus, um nicht genutzte Speicherblöcke auf dem per Thin Provisioning bereitgestellten Gerät zurückzufordern:
    esxcli storage vmfs unmap

    Der Befehl verfügt über diese Optionen:

    Option Beschreibung
    -l|--volume-label=volume_bezeichnung Die Bezeichnung des VMFS-Volumes, dessen Zuordnung aufgehoben werden soll. Dies ist ein erforderliches Argument. Verwenden Sie bei Angabe dieses Arguments nicht -u|--volume-uuid=volume_uuid.
    -u|--volume-uuid=volume_uuid Die UUID des VMFS-Volumes, dessen Zuordnung aufgehoben werden soll. Dies ist ein erforderliches Argument. Verwenden Sie bei Angabe dieses Arguments nicht -l|--volume-label=volume_bezeichnung.
    -n|--reclaim-unit=anzahl Die Anzahl der VMFS-Blöcke, deren Zuordnung pro Iteration aufgehoben werden soll. Dies ist ein optionales Argument. Wenn es nicht angegeben wird, verwendet der Befehl den Standardwert 200.
  2. Um zu überprüfen, ob die Aufhebung der Zuordnung abgeschlossen ist, suchen Sie in der Datei vmkernel.log nach „unmap“.