Al eliminar o quitar archivos de un almacén de datos de VMFS, se libera espacio en el sistema de archivos. Este espacio libre queda asignado a un dispositivo de almacenamiento hasta que el sistema de archivos lo libera o cancela la asignación. ESXi admite la recuperación de espacio libre, también denominada operación de cancelación de asignación.

La operación ayuda a que la matriz de almacenamiento recupere espacio libre sin utilizar. El espacio sin asignar puede volver a utilizarse para otras necesidades y solicitudes de asignación de almacenamiento.

Recuperación automática de espacio libre en el almacén de datos de VMFS6

En los almacenes de datos de VMFS6, ESXi admite la recuperación asíncrona automática de espacio libre. VMFS6 puede ejecutar el comando unmap para liberar espacio de almacenamiento libre en segundo plano en las matrices de almacenamiento con aprovisionamiento fino compatibles con estas operaciones de cancelación de asignación.

El procesamiento automático de cancelaciones de asignación tiene varias ventajas:
  • Las solicitudes de cancelación de asignación se envían a un ritmo constante, lo cual ayuda a evitar la carga repentina de la matriz.
  • Las regiones liberadas se agrupan y su asignación se cancela simultáneamente.
  • El comando unmap no afecta al rendimiento de E/S de otras cargas de trabajo.

Para almacenes de datos de VMFS6, puede configurar los siguientes parámetros de recuperación de espacio.

Granularidad de la recuperación de espacio
La granularidad define el tamaño mínimo del sector de espacio liberado que puede recuperar el almacenamiento subyacente. El almacenamiento no puede recuperar los sectores de tamaño menor a la granularidad especificada.
Para VMFS6, la granularidad de recuperación es equivalente al tamaño del bloque. Cuando se especifica un tamaño de bloque de 1 MB, la granularidad también es de 1 MB. Los sectores de almacenamiento con un tamaño inferior a 1 MB no se recuperan.
Nota: En algunas matrices de almacenamiento, se recomienda una granularidad óptima para la cancelación de asignación. ESXi admite el procesamiento de cancelaciones de asignación automáticas en matrices con la granularidad de cancelación recomendada de 1 MB o superior, por ejemplo, 16 MB. En las matrices con la granularidad óptima de hasta 1 MB, la operación de cancelación de asignación se admite si la granularidad es un factor de 1 MB. Por ejemplo, 1 MB es divisible por 512 bytes, 4 KB, 64 KB, etc.
Método de recuperación de espacio
El método puede ser recuperación de prioridad o fija. Cuando el método de recuperación es la prioridad, se configura la tasa de prioridad. Para el método fijo, debe indicar tasa de recuperación en MB por segundo.
Puede utilizar vSphere Client para establecer el método de prioridad al crear el almacén de datos de VMFS6. Para habilitar el método fijo, puede modificar posteriormente la configuración de recuperación de espacio en el almacén de datos actual.
También puede usar el comando esxcli storage vmfs reclaim config set para establecer parámetros de recuperación de espacio.
Tasa de prioridad de recuperación de espacio
Este parámetro define la tasa a la que se realiza la operación de recuperación de espacio cuando se utiliza el método de recuperación de prioridad. Generalmente, VMFS6 puede enviar los comandos unmap de cancelación de asignación en ráfagas o esporádicamente, según la carga de trabajo y la configuración. Para VMFS6, puede especificar una de las siguientes opciones.
Prioridad de recuperación de espacio Descripción Configuración
Ninguna Desactiva las operaciones de cancelación de asignación para el almacén de datos. vSphere Client

comando esxcli

Baja (predeterminado) Envía el comando de cancelación de asignación con menor frecuencia, de 25 a 50 MB por segundo. vSphere Client

comando esxcli

Mediano Envía el comando a una velocidad dos veces más rápida que la velocidad baja, de 50 a 100 MB por segundo. comando esxcli
Alto Envía el comando a una velocidad tres veces más rápida que la velocidad baja, más de 100 MB por segundo. comando esxcli
Hosts de recuperación de espacio
Este parámetro define el número de hosts ESXi que pueden emitir comandos unmap a un almacén de datos de VMFS6 para la recuperación automática de espacio. Utilice este parámetro para limitar la cantidad acumulativa de carga de recuperación de espacio que se emite al almacén de datos de VMFS6 de respaldo de destino.

Después de habilitar la recuperación de espacio, el almacén de datos de VMFS6 podrá comenzar a liberar los bloques de espacio sin utilizar únicamente cuando tenga al menos un archivo abierto. Esta condición puede cumplirse cuando, por ejemplo, se enciende una de las máquinas virtuales en el almacén de datos.

Configurar la recuperación de prioridad al crear un almacén de datos de VMFS6

La configuración de recuperación de espacio controla la manera en que los bloques eliminados o no asignados se recuperarán en los dispositivos que respaldan el almacén de datos. Al crear un almacén de datos de VMFS6 en vSphere Client, el único método para recuperar espacio que puede especificarse es el método de prioridad. También puede desactivar la recuperación de espacio al crear el almacén de datos.

Procedimiento

  1. En el navegador de objetos de vSphere Client, vaya hasta un host, un clúster o un centro de datos.
  2. En el menú contextual, seleccione Almacenamiento > Nuevo almacén de datos.
  3. Siga los pasos necesarios para crear un almacén de datos de VMFS6.
  4. En la página Configuración de particiones, especifique los parámetros de recuperación de espacio.
    Los parámetros definen la granularidad y el índice de prioridad con que se realizan las operaciones de recuperación de espacio. También puede utilizar esta página para desactivar la recuperación de espacio para el almacén de datos.
    Opción Descripción
    Tamaño de bloque El tamaño de bloque de un almacén de datos de VMFS define el tamaño de archivo máximo y la cantidad de espacio que ocupa el archivo. VMFS6 admite el tamaño de bloque de 1 MB.
    Granularidad de la recuperación de espacio Especifique la granularidad de la operación de cancelación de la asignación. La granularidad de cancelación de la asignación equivale al tamaño de bloque, que es de 1 MB.

    Los sectores de almacenamiento con un tamaño menor a 1 MB no se recuperan.

    Prioridad de recuperación de espacio Seleccione una de las siguientes opciones.
    • Baja (predeterminado). Utilice el método de prioridad para la recuperación de espacio. La operación de cancelación de asignación se realiza con una tasa de prioridad baja.
    • Ninguna. Seleccione esta opción si no desea utilizar las operaciones de recuperación de espacio para el almacén de datos.
    Nota: En vSphere Client, la única configuración disponible para la prioridad de recuperación de espacio es Baja y Ninguna. Para cambiar la configuración a Media o Alta, utilice el comando esxcli.
  5. Finalice el proceso de creación del almacén de datos.

Resultados

Después de activar la recuperación de espacio, el almacén de datos de VMFS6 podrá comenzar a liberar los bloques de espacio sin utilizar únicamente cuando tenga al menos un archivo abierto. Esta condición puede cumplirse cuando, por ejemplo, se enciende una de las máquinas virtuales en el almacén de datos.

Configurar la recuperación fija para el almacén de datos VMFS6 existente

Para activar el método de recuperación fijo, modifique la configuración de recuperación de espacio para el almacén de datos.

Procedimiento

  1. En vSphere Client, desplácese al almacén de datos.
  2. Seleccione Editar recuperación de espacio en el menú contextual.
  3. Especifique la configuración de recuperación de espacio.
    Opción Descripción
    Habilitar recuperación de espacio automática con tasa fija Utilice el método fijo para la recuperación de espacio. Especifique la tasa de recuperación en MB por segundo. El valor mínimo disponible es de 10 MB por segundo.
    Deshabilitar recuperación de espacio automática Los bloques eliminados o sin asignar no se recuperan.

    Seleccione esta opción si desea desactivar las operaciones de recuperación de espacio para el almacén de datos.

  4. Haga clic en Aceptar para guardar la nueva configuración.
  5. Desmonte y vuelva a montar el almacén de datos para que se apliquen los cambios.
    1. Desmontar almacenes de datos.
    2. Montar almacenes de datos.
  6. Repita este procedimiento en todos los hosts ESXi que accedan al almacén de datos.

Resultados

El valor modificado para la prioridad de recuperación de espacio aparece en la página General correspondiente al almacén de datos.

Usar el comando ESXCLI para cambiar la recuperación de espacio en VMFS6

Puede cambiar la prioridad de recuperación de espacio, la granularidad y otros parámetros predeterminados.

Procedimiento

  1. En el host ESXi, use el siguiente comando para establecer los parámetros de recuperación de espacio.
    esxcli storage vmfs reclaim config set

    Este comando toma estas opciones:

    Opción Descripción
    -b|--reclaim-bandwidth Ancho de banda fijo de recuperación de espacio en MB por segundo.
    -g|--reclaim-granularity Granularidad mínima de recuperación de espacio automática en bytes.
    -m|--reclaim-method Método de recuperación de espacio automática. Opciones admitidas:
    • prioridad
    • fija
    -n|--reclaim-maxhosts Cantidad máxima de hosts ESXi que pueden emitir comandos unmap a un almacén de datos de VMFS6 para la recuperación de espacio automática.
    -p|--reclaim-priority Prioridad de la recuperación de espacio automática. Opciones admitidas:
    • none
    • baja
    • mediana
    • alta
    -l|--volume-label La etiqueta del volumen VMFS de destino.
    -u|--volume-uuid El UUID del volumen VMFS de destino.
    Puede utilizar los siguientes ejemplos.
    • Establezca el método de recuperación como fijo y la velocidad como 100 MB por segundo.
      esxcli storage vmfs reclaim config set --volume-label datastore_name --reclaim-method fixed -b 100
    • Desactive la recuperación de espacio automática de VMFS.
      esxcli storage vmfs reclaim config set --volume-label datastore_name --reclaim-priority none
    Nota: Si establece solo el parámetro -n|--reclaim-maxhosts sin ningún otro parámetro, puede omitir el paso 2. El valor actualizado del parámetro reclaim-maxhosts tarda alrededor de 30 minutos en surtir efecto en todos los hosts ESXi en los que se montó el almacén de datos de VMFS6.
  2. Desmonte el almacén de datos de VMFS6 de todos los demás hosts ESXi donde está montado el almacén de datos y vuelva a montarlo.
    1. Desmontar almacenes de datos.
    2. Montar almacenes de datos.
    Este paso garantiza que todos los hosts ESXi en los que se montó el almacén de datos de VMFS6 actualicen el método de recuperación del almacén de datos.

Comprobar la configuración de la recuperación de espacio automática en VMFS6

Después de configurar o editar los parámetros de recuperación de espacio para un almacén de datos de VMFS6, puede revisar la configuración.

Procedimiento

  1. En vSphere Client, desplácese al almacén de datos.
  2. Haga clic en la pestaña Configurar.
  3. Haga clic en General.
  4. En Recuperación de espacio, revise la configuración de prioridad de la recuperación de espacio.
    Si configuró algún valor mediante el comando esxcli, por ejemplo, una prioridad Media o Alta de recuperación de espacio, estos valores también aparecen en vSphere Client.

Resultados

La captura de pantalla muestra la configuración de recuperación de espacio.

Ejemplo: Obtención de parámetros para la recuperación de espacio de VMFS6

También puede utilizar el comando esxcli storage vmfs reclaim config get -l=VMFS_label|-u=VMFS_uuid para obtener información sobre la configuración de recuperación de espacio.
# 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

Recuperar manualmente espacio de almacenamiento acumulado en VMFS5

En los almacenes de datos VMFS que no admiten la recuperación de espacio automática, como VMFS5, puede utilizar el comando esxcli para recuperar manualmente el espacio de almacenamiento no utilizado.

Cuando utilice el comando, tenga en cuenta que puede enviar varias solicitudes de cancelación de asignación a la vez. Esta acción puede bloquear algunos de los recursos durante la operación. Cuando utilice el comando, tenga en cuenta que puede enviar varias solicitudes de cancelación de asignación a la vez. Esta acción puede bloquear algunos de los recursos durante la operación.

Requisitos previos

Instale ESXCLI. Consulte Introducción a ESXCLI. Para solucionar problemas, ejecute comandos esxcli en ESXi Shell.

Procedimiento

  1. Para recuperar bloques de almacenamiento no utilizados en el dispositivo con aprovisionamiento fino, ejecute el siguiente comando:
    esxcli storage vmfs unmap

    Este comando toma estas opciones:

    Opción Descripción
    -l|--volume-label=volume_label La etiqueta del volumen VMFS cuya asignación se desea anular. Un argumento obligatorio. Si especifica este argumento, no utilice -u|--volume-uuid=volume_uuid.
    -u|--volume-uuid=volume_uuid El UUID del volumen VMFS cuya asignación se desea anular. Un argumento obligatorio. Si especifica este argumento, no utilice -l|--volume-label=volume_label.
    -n|--reclaim-unit=number Cantidad de bloques VMFS cuya asignación se desea anular por iteración. Un argumento opcional. Si no se especifica, el comando utiliza el valor predeterminado de 200.
  2. Para comprobar si finalizó el proceso de cancelación de asignación, busque la cancelación de asignación en el archivo vmkernel.log.