La suppression ou le retrait de fichiers d'une banque de données VMFS libère de l'espace dans le système de fichiers. Cet espace libre est mappé sur un périphérique de stockage jusqu'à ce que le système de fichiers le libère ou le démappe. ESXi prend en charge la récupération d'espace libre, qui est également appelée opération unmap.

L'opération permet à la baie de stockage de récupérer l'espace libre inutilisé. L'espace non mappé peut ensuite être utilisé pour d'autres demandes d'allocation de stockage et à d'autres besoins.

Récupération asynchrone d'espace libre sur une banque de données VMFS6

Sur les banques de données VMFS6, ESXi prend en charge la récupération asynchrone automatique d'espace libre. VMFS6 peut exécuter la commande unmap pour libérer de l'espace de stockage libre en arrière-plan sur des baies de stockage à provisionnement dynamique prenant en charge les opérations unmap.

Le traitement asynchrone de l'opération unmap offre plusieurs avantages :
  • Les demandes unmap sont envoyées à un rythme constant, ce qui contribue à éviter une charge instantanée sur la baie de sauvegarde.
  • Les régions libérées sont traitée par lots et démappées ensemble.
  • Le processus de l'opération unmap et les chemins d'E/S tronqués sont déconnectés afin que les performances d'E/S ne soient pas altérées.

Pour les banques de données VMFS6, vous pouvez configurer les paramètres de récupération d'espace suivants au moment de la création de la banque de données.

Granularité de récupération d'espace
La granularité définit la taille minimale du secteur de l'espace libéré que le stockage sous-jacent peut récupérer. Le stockage ne peut pas récupérer les secteurs d'une taille inférieure à la granularité spécifiée.
Pour VMFS6, la granularité de la récupération correspond à la taille de bloc. Lorsque vous spécifiez une taille de bloc de 1 Mo, la granularité est également 1 Mo. Les secteurs de stockage d'une taille inférieure à 1 Mo ne sont pas récupérés.
Note : Certaines baies de stockage recommandent une granularité de démappage optimale. Si la granularité de démappage recommandée est supérieure à 1 Mo (par exemple,16 Mo), ESXi ne prend pas en charge le traitement automatique de l'opération unmap sur ces baies. Sur les baies disposant d'une granularité optimale de 1 Mo et d'une taille inférieure, l'opération unmap est prise en charge si la granularité présente un facteur de 1 Mo. Par exemple, 1 Mo est divisible par 512 octets, 4 kilo-octets, ou 64 kilo-octets, etc.
Priorité de récupération d'espace
Ce paramètre définit le rythme auquel l'opération de récupération d'espace est effectuée. Généralement, VMFS6 peut envoyer les commandes unmap en rafales ou sporadiquement selon la charge de travail et la configuration. Lorsque vous créez une banque de données VMFS6, vous pouvez spécifier l'une des options suivantes.
  • Aucune. Désactive les opérations unmap pour la banque de données. L'option est configurable via vSphere Web Client.
  • Faible (par défaut) Envoie la commande unmap à un rythme moins fréquent. L'option est configurable via vSphere Web Client.

Après l'activation de la récupération d'espace, la banque de données VMFS6 peut commencer à libérer les blocs d'espace inutilisé uniquement lorsqu'elle comprend au moins un fichier ouvert. Cette condition peut être remplie lorsque, par exemple, vous mettez sous tension l'une des machines virtuelles sur la banque de données.

Récupération manuelle d'espace libre sur une banque de données VMFS5

VMFS5 et les systèmes de fichiers antérieurs ne démappent pas l'espace libre automatiquement, mais vous pouvez utiliser la commande esxcli storage vmfs unmap pour récupérer de l'espace manuellement. Lorsque vous utilisez la commande, gardez à l'esprit qu'elle peut envoyer plusieurs demandes unmap à la fois. Cette action peut bloquer une partie des ressources pendant l'opération.