Назад | Перейти на главную страницу

Параметры кэша виртуального диска Windows Server

В Windows под Azure или Hyper-V параметры кэша записи политики диска для виртуального диска всегда будут отображаться включенными из конфигурации сервера, независимо от фактического состояния параметров кеширования записи в базовой дисковой системе. Однако есть второй параметр, связанный с первым, для которого его влияние неясно в этом случае виртуальных дисков, где первый отмечен / включен в настройке, но фактически отключен на аппаратном обеспечении виртуального диска. Настройки диска выглядят так:

[x] Enable Write Caching on the device
    [ ] Turn off Windows write-cache buffer flushing on the device 

Интуитивно я бы предположил, что нет причин для включения этого, поскольку кэширование записи на самом деле НЕ включено для устройства, и если бы это был физический диск, этот параметр был бы отключен. Но Эта статья предполагает, что его включение освободит ОС и оборудование от бессмысленной работы, улучшая производительность при сохранении той же целостности данных, в этом случае, когда кэширование записи включено в настройке, но фактически отключено на оборудовании:

... поскольку виртуальный жесткий диск на самом деле вовсе не диск, этот параметр не имеет значения для виртуальных дисков. Но второй параметр отличается и имеет значение, поскольку он управляет настройками включения / выключения очистки кеша для диска. Когда вы выбираете второй параметр, очистка кеша будет, по сути, успешной - по крайней мере, на уровне программного стека. ... когда вы выбираете этот параметр в гостевой ОС для виртуального жесткого диска на виртуальной машине, вы можете увидеть некоторое улучшение производительности приложений, работающих на виртуальной машине. Но всегда помните, что настройки кэша диска хоста являются важными с точки зрения целостности данных.

Может ли кто-нибудь подтвердить, является ли это утверждение верным и безопасным для обеспечения целостности данных WRT?

Я думаю, что эти настройки не имеют никакого смысла, если ваши диски данных изначально были настроены с кешем Read / None. это статья заявляет, что это больше вопрос кэширования хоста, которое можно изменить с помощью API управления службами или команд Powershell.

Я бы посоветовал использовать виртуальную машину с включенной опцией «Отключить сброс буфера кэша записи Windows на устройстве» только в том случае, если у вас есть избыточность на уровнях питания / ИБП или системы хранения. Вы должны учитывать потерю данных в случае отключения электроэнергии или сбоя оборудования, если вы включите эту опцию. Я могу предложить использовать S2D, StarWind или HPE VSA в качестве программно определяемого хранилища, которое может обеспечить избыточность на уровне узла, чтобы вы могли использовать функцию кэширования записи на локальных виртуальных машинах.

В этом случае опция «Отключить сброс буфера кэша записи Windows на устройстве» повысит общую производительность системы виртуальной машины: ОЗУ используется в качестве источника горячих данных, а сброс данных на устройство выполняется только при заполнении ОЗУ.

Я бы предложил отключить кэширование записи, если вы используете автономный хост Hyper-V с подключением блока питания к одной линии.

Эти предположения верны только для локальных виртуализированных хостов. У поставщиков облачных услуг есть собственные функции для обеспечения избыточности для своих экземпляров, поэтому я использую функцию кэширования записи только для своих виртуальных машин Amazon.

РЕДАКТИРОВАТЬ: точка особенность - уменьшение задержки при выполнении операций ввода-вывода.

  • После отключения кэша WB запросы ввода-вывода направляются непосредственно в базовое хранилище, что приводит к максимальной задержке.
  • Если включен параметр «Включить кэширование записи на устройстве», операции ввода-вывода сначала отправляются в ОЗУ, как только данные становятся «холодными», ОС Windows сбрасывает их в хранилище. Для случая это уменьшает задержку.
  • А когда отмечены оба параметра WB, вы можете столкнуться с минимальной задержкой из-за того, что горячие и холодные данные находятся в ОЗУ. Данные сбрасываются в хранилище только после заполнения ОЗУ.