Quando l'host ESXi utilizza il protocollo SCSI o NVMe per connettersi all'archivio nell'ambiente Virtual Volumes, i volumi virtuali dei dati e della configurazione vengono formattati con VMFS6. Di conseguenza, il processo di recupero dello spazio disponibile per VMFS può essere applicato anche ai Virtual Volumes dei dati e della configurazione. Quando si recupera spazio nel datastore Virtual Volumes, è possibile utilizzare il comando esxcli storage vvol per annullare manualmente la mappatura dei blocchi liberi dai volumi virtuali.

Nota: A partire dalla versione 8.0 Update 3:
  • I Virtual Volumes dei dati supportati da NVMe supportano le richieste di recupero dello spazio dai sistemi operativi guest.
  • I Virtual Volumes della configurazione supportano il recupero automatico dello spazio. Per recuperare lo spazio manualmente, eseguire i passaggi della procedura indicata.

Prerequisiti

Procedura

  1. Ottenere l'ID del container di storage e l'UUID di vVol meta per il volume virtuale della configurazione formattato con VMFS.
    1. Passare alla macchina virtuale che contiene volumi virtuali.
      Ad esempio:
      [root@:~] cd /vmfs/volumes/vvol_datastore/VM_1
    2. Dal percorso, estrarre l'ID del container di storage e l'UUID di vVol meta.
      [root@:/vmfs/volumes/vvol:4abe7eb4bf234ee0xxxxxxxxx/rfc4122.1ffee4bd-9c55-49b9-876d-xxxxxxxx
      In questo esempio,

      L'ID del container è vvol:4abe7eb4bf234ee0xxxxxxxxx

      L'UUID di vVol meta è rfc4122.1ffee4bd-9c55-49b9-876d-xxxxxxxx

  2. Utilizzare il comando seguente per annullare la mappatura dei blocchi liberi dal volume di configurazione.
    esxcli storage vvol virtualvolume unmap
    Il comando accetta le seguenti opzioni:
    Opzione Descrizione
    -c|--container-id=<str> ID del container di storage. L'opzione è obbligatoria.
    -n|--reclaim-unit=<long> Numero di blocchi VMFS di cui annullare la mappatura per iterazione.
    -u|--uuid=<str> UUID di vVol meta. L'opzione è obbligatoria.
  3. Verificare di aver rimosso la mappatura dei blocchi controllando il file di registro di hostd.
    grep "Total Unmapped blocks from vmfs" /var/run/log/hostd.log

Esempio:

  1. [root@:~]esxcli storage vvol virtualvolume unmap -c vvol:4abe7eb4bf234ee0xxxxxxxxx -u rfc4122.1ffee4bd-9c55-49b9-876d-xxxxxxxx
  2. [root@:~] grep "Total Unmapped blocks from vmfs" /var/run/log/hostd.log

    L'output è simile al seguente:

    2023-06-01T10:27:45.836Z In(166) Hostd[1000342556]: [Originator@6876 sub=Libs opID=esxcli-5f-1861 sid=523fac9d user=root] Unmap: Done : Total Unmapped blocks from vmfs6 volume rfc4122.1ffee4bd-9c55-49b9-87 6d-xxxxxxxx : 0 (LFB Pass)

    2023-06-01T10:28:13.279Z In(166) Hostd[1000342556]: [Originator@6876 sub=Libs opID=esxcli-5f-1861 sid=523fac9d user=root] Unmap: Done : Total Unmapped blocks from vmfs6 volume rfc4122.1ffee4bd-9c55-49b9-87 6d-xxxxxxxx : 259421 (SFB Pass)