Сжатие диска VHD
VHD Disk Compaction — это процесс, который выполняется каждый раз, когда пользователь выходит из системы. Процесс сжатия предназначен для автоматического уменьшения объема хранилища контейнера пользователя в зависимости от предопределенного порогового значения. На этапе выхода FSLogix оценивает диск, чтобы определить, следует ли выполнять сжатие диска.
Примечание.
Сжатие диска VHD влияет на контейнеры профилей и ODFC (включая конфигурации облачного кэша )
VHD Disk Compaction по умолчанию включен. Если вы хотите отключить его, см. раздел "Отключить сжатие диска VHD".
Процесс сжатия зависит от службы "Оптимизация дисков" (defragsvc). Эта служба определяет минимальный поддерживаемый размер, запрашивая API MSFT_Partition , используя параметр SizeMin из метода GetSupportedSize . Эта операция учитывает расположение неподвижных файлов (т. е. файлов, которые не могут быть перемещены). Дополнительные сведения см. в методе GetSupportedSize класса MSFT_Partition.
Важно!
Если параметр StartupType службы "Оптимизация дисков " (defragsvc) имеет значение "Отключено", VHD Disk Compaction не сможет запрашивать минимальный поддерживаемый размер, и процесс не будет выполняться. Параметр StartupType службы должен иметь значение "Вручную" или "Автоматически", независимо от того, выполняется ли состояние службы или остановлено.
Необходимо использовать динамически расширяющиеся виртуальные жесткие диски; Не удается уплотнить виртуальные жесткие диски фиксированного размера.
Определение того, когда выполняется сжатие диска VHD
FSLogix определяет, следует ли запускать процесс сжатия при каждом выходе пользователя. Если выполнены следующие критерии, VHD Disk Compaction выполняется:
- Размер контейнера должен превышать 1 ГБ (размер на диске).
- Разница (C) между используемым размером на диске (A) и запрошенным минимальным размером (B). Разница должна быть больше или равна 20 % используемого размера в контейнере (A).<
Разница вычисляется следующим образом:
- A - B = C
- Если C ≥ (A x 0.2) выполняется сжатие.
- Если C < (A x 0.2), сжатие не выполняется.
Пример сценариев
Вот несколько примеров.
Пример 1. Используемый размер контейнера составляет 6 ГБ. При вызове GetSupportedSize результирующий минимальный размер составляет 2,5 ГБ:
- 6 – 2,5 = 3,5 ГБ
- 20% от 6 ГБ = 1,2 ГБ
- 3,5 ГБ больше 1,2 ГБ, выполняется сжатие.
Пример 2. Используемый размер контейнера составляет 12 ГБ. При вызове GetSupportedSize результирующий минимальный размер составляет 10 ГБ:
- 12 – 10 = 2 ГБ
- 20 % от 12 ГБ = 2,4 ГБ
- 2 ГБ меньше 2,4 ГБ, сжатие не выполняется.
Пример таблицы:
Контейнер | Исправлено или динамическое | Настроенный размер | Потребляемый размер | Поддерживаемый размер | Уилл Компакт? |
---|---|---|---|---|---|
<username> profile_.vhdx |
Динамический | 30 ГБ | 6 ГБ | 2.5 ГБ | Да |
<username> profile_.vhdx |
Динамический | 30 ГБ | 12 ГБ | 10 ГБ | No |
<username> profile_.vhdx |
Фиксированный | 30 ГБ | 30 ГБ | Н/П | No |
Взаимодействие с пользователем
При выполнении сжатия пользователи видят сообщение "Ожидание служб FSLogix Apps Services " в течение некоторого времени. В зависимости от места для восстановления процесс сжатия должен занять в среднем 20 –30 секунд. Первая компактная операция является самой длинной и основана на восстанавливаемом пространстве и других факторах вычислительных ресурсов.
Каждый последующий выход должен быть быстрее, так как объем данных для сжатия должен уменьшаться. Сжатие диска VHD может выполняться не более 5 минут. Если достигнуто это максимальное значение, операция завершается, а выход продолжается. Во время следующего выхода операция возобновляется из предыдущего состояния.
События Winlogon
VHD Disk Compaction работает при выходе пользователя, который является частью Winlogon
процесса. Процесс Winlogon
создает событие предупреждения в любой момент, когда процесс приводит к превышению времени выхода в течение 60 секунд. Эти предупреждения являются нормальными и ожидаемыми. Процесс сжатия может превышать 60 секунд в зависимости от размера VHD(x) и пространства для восстановления. Пороговое Winlogon
значение является фиксированным значением и не может быть изменено.
Сведения о количестве операций, превышающих 60-секундное пороговое значение и их продолжительность, см. в статье "Предупреждения о задержке" для запроса Log Analytics (выход).