Share via


Compactación de disco VHD

VHD Disk Compaction es un proceso que se ejecuta cada vez que un usuario cierra la sesión. El proceso de compactación está diseñado para reducir automáticamente la cantidad de almacenamiento del contenedor de un usuario, en función de un umbral predefinido. Durante la fase de cierre de sesión, FSLogix evalúa el disco para determinar si se debe ejecutar la compactación de disco.

Nota:

La compactación de disco VHD afecta a los contenedores de Perfil y ODFC (incluidas las configuraciones de caché en la nube)

La compactación de disco VHD está habilitada de forma predeterminada. Si desea deshabilitarlo, consulte Deshabilitar la compactación de disco VHD.

El proceso de compactación se basa en el servicio Optimize Drives (defragsvc). Este servicio determina el tamaño mínimo admitido consultando la API de MSFT_Partition mediante el parámetro SizeMin del método GetSupportedSize . Esta operación tiene en cuenta la ubicación de los archivos inamovibles (es decir, los archivos que no se pueden mover). Para obtener más información, vea Método GetSupportedSize de la clase MSFT_Partition.

Importante

  • Si startupType del servicio Optimize Drives (defragsvc) está establecido en Deshabilitado, la compactación de disco VHD no podrá consultar el tamaño mínimo admitido y el proceso no se ejecutará. El valor de StartupType del servicio debe establecerse en Manual o Automático, independientemente de si el estado del servicio es En ejecución o Detenido.

  • Debe usar la expansión dinámica de discos duros virtuales; Los discos duros virtuales de tamaño fijo no se pueden compactar.

Determinar cuándo se ejecuta la compactación de disco duro virtual

FSLogix determina si se debe ejecutar el proceso de compactación cada vez que un usuario cierra la sesión. Si se cumplen los criterios siguientes, VHD Disk Compaction se ejecuta:

  • El tamaño del contenedor debe ser mayor que 1 GB (tamaño en disco).
  • Diferencia(C) entre el tamaño consumido en el disco (A) y el tamaño mínimo consultado (B). La diferencia debe ser mayor o igual que el 20 % del tamaño consumido dentro del contenedor (A).

La diferencia se calcula de la siguiente manera:

  • A - B = C
    • Si C ≥ (A x 0.2), se ejecuta la compactación.
    • Si C < (A x 0.2), la compactación no se ejecuta.

Escenarios de ejemplo

Estos son algunos ejemplos:

  • Ejemplo 1: el tamaño consumido de un contenedor es de 6 GB. Cuando llamamos a GetSupportedSize, el tamaño mínimo resultante es de 2,5 GB:

    • 6 - 2,5 = 3,5 GB
    • 20 % de 6 GB = 1,2 GB
    • 3,5 GB es mayor que 1,2 GB, ejecuciones de compactación.
  • Ejemplo 2: el tamaño consumido de un contenedor es de 12 GB. Cuando llamamos a GetSupportedSize, el tamaño mínimo resultante es de 10 GB:

    • 12 - 10 = 2 GB
    • 20 % de 12 GB = 2,4 GB
    • 2 GB es inferior a 2,4 GB, la compactación no se ejecuta.

Tabla de ejemplo:

Contenedor Fijo o dinámico Tamaño configurado Tamaño consumido Tamaño admitido ¿Compactará?
<username>profile_.vhdx Dinámica 30 GB 6 GB 2.5 GB
<username>profile_.vhdx Dinámica 30 GB 12 GB 10 GB No
<username>profile_.vhdx Fijo 30 GB 30 GB N/D No

Experiencia del usuario

Cuando se ejecuta la compactación, los usuarios ven el mensaje En espera de FSLogix Apps Services durante algún tiempo. Dependiendo del espacio que se va a recuperar, el proceso de compactación debe tardar un promedio de 20 a 30 segundos. La primera operación compacta es la más larga y se basa en el espacio recuperable y en otros factores de recursos de proceso.

Cada cierre de sesión posterior debe ser más rápido, ya que la cantidad de datos que se van a compactar debe disminuir. VHD Disk Compaction se puede ejecutar durante un máximo de 5 minutos. Si se alcanza este máximo, finaliza la operación y continúa el cierre de sesión. Durante el siguiente cierre de sesión, la operación se reanudará desde el estado anterior.

Eventos de Winlogon

VHD Disk Compaction funciona en el cierre de sesión del usuario, que forma parte del Winlogon proceso. El Winlogon proceso crea un evento de advertencia cada vez que un proceso hace que el tiempo de cierre de sesión supere los 60 segundos. Estas advertencias son normales y esperadas. El proceso de compactación podría superar los 60 segundos en función del tamaño del VHD(x) y del espacio que se va a recuperar. El Winlogon umbral es un valor fijo y no se puede cambiar.

Consulte Advertencias de retraso de Winlogon (cierre de sesión) para ver una consulta de Log Analytics para mostrar el número de operaciones que superan el umbral de 60 segundos y sus duraciones.

Pasos siguientes