Внедрение управления качеством обслуживания для Hyper-V

Опубликовано: 15 Апреля, 2023
Внедрение управления качеством обслуживания для Hyper-V

Одной из больших проблем, с которой иногда сталкиваются администраторы виртуализации, является так называемый синдром шумного соседа. Идея заключается в том, что виртуальная машина может потреблять непропорциональную долю системных ресурсов до такой степени, что она начинает снижать производительность других виртуальных машин, работающих на хосте. Это, как правило, особенно верно для IOPS хранилища. Microsoft Hyper-V включает функцию под названием «Управление качеством обслуживания» (ранее известную как «Качество обслуживания хранилища» или «QoS хранилища»), которую можно использовать для ограничения количества операций ввода-вывода в хранилище, которое может потреблять виртуальная машина.

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

Чтобы показать вам, как работает управление качеством обслуживания, я настроил виртуальную машину Hyper-V и установил чистую копию Windows 10. После того, как Windows была запущена и запущена на виртуальной машине, я загрузил и установил утилиту под названием My HDD Speed.. Как следует из названия, My HDD Speed — это утилита для измерения производительности жесткого диска. Вы можете скачать My HDD Speed бесплатно здесь.

Когда вы запустите My HDD Speed, откроется окно, позволяющее отслеживать производительность чтения и записи жесткого диска практически в режиме реального времени. Окно показывает вам как максимальную скорость диска, так и его среднюю скорость. Однако для этой статьи я решил провести тест скорости жесткого диска. Как вы можете видеть на изображении ниже, запуск теста скорости приводит к тому, что утилита записывает 1 ГБ данных на жесткий диск системы.

Изображение 14262
В некотором смысле утилита My HDD Speed не является идеальным инструментом для демонстрации того, как работает управление качеством обслуживания, поскольку эта утилита измеряет производительность диска в MBPS или KBPS. Напротив, функция управления качеством обслуживания Hyper-V предназначена для ограничения производительности диска на основе IOPS, а не пропускной способности. Тем не менее, есть способ сопоставить пропускную способность данных с IOPS. По данным Microsoft, 8 КБ данных считаются одной операцией IOPS.

Любой конкретный жесткий диск будет иметь максимальное количество операций ввода-вывода в секунду, которое он может обработать. Это число зависит от марки, модели и типа диска, а также от некоторых других факторов. Согласно LUNAVI, HDD обычно обеспечивает скорость от 55 до 180 операций ввода-вывода в секунду, а твердотельный накопитель — от 3000 до 40 000 операций ввода-вывода в секунду.

Ради демонстрации я решил сравнить производительность моей виртуальной машины с Windows 10 с включенным управлением качеством обслуживания и без него. До включения управления качеством обслуживания инструмент скорости моего жесткого диска сообщал о скорости чтения 538,1 МБ/с и скорости записи 67,1 МБ/с. Вы можете увидеть эти измерения на изображении ниже.

Изображение 14263
Выполнив этот первоначальный тест, я установил управление качеством обслуживания, чтобы ограничить жесткий диск виртуальной машины до 500 операций ввода-вывода в секунду, что намного меньше, чем то, что доступно виртуальной машине, когда производительность ее хранилища не ограничена. На этот раз, когда я запускал тест, Quality of Service Management сообщил, что скорость чтения виртуальной машины составляет 0,3 МБ/с, а скорость записи — 18,8 МБ/с. Вы можете увидеть эти результаты на изображении ниже.

Изображение 14264
Итак, теперь, когда я показал, что происходит, когда вы включаете управление качеством обслуживания, давайте посмотрим, как использовать эту функцию. Вы можете включить управление качеством обслуживания непосредственно через диспетчер Hyper-V. Для этого щелкните правой кнопкой мыши свою виртуальную машину и выберите команду «Настройки» в контекстном меню. Это заставит Windows отобразить настройки виртуальной машины, как показано на следующем изображении.

Изображение 14265
Когда вы посмотрите на изображение выше, вы заметите, что я выбрал виртуальный жесткий диск виртуальной машины. Если вы посмотрите на дерево консоли в левой части экрана, вы увидите значок плюса на вкладке «Жесткий диск». Если щелкнуть этот значок плюса, он развернет вкладку «Жесткий диск», открыв подвкладку с надписью «Качество обслуживания». Здесь вам нужно будет перейти к настройке управления качеством обслуживания. Вы можете увидеть настройки управления качеством обслуживания на следующем изображении.

Изображение 14266
Ранее я упоминал, что ограничил скорость виртуального жесткого диска виртуальной машины до 500 операций ввода-вывода в секунду. Как вы можете видеть на изображении выше, я сделал это, установив флажок «Включить управление качеством обслуживания» и введя 500 в качестве максимального количества операций ввода-вывода в секунду.

Я уверен, что вы заметили на предыдущем изображении, что функция управления качеством обслуживания также позволяет указать минимальное значение. В то время как максимальное значение эффективно ограничивает потребление пропускной способности хранилища, минимальное значение действует как резервирование пропускной способности хранилища. Это полезно, если у вас есть рабочая нагрузка, чувствительная к вводу-выводу, и вам необходимо убедиться, что она получает по крайней мере определенное количество операций ввода-вывода в секунду. Стоит отметить, однако, что такие оговорки делаются на основе максимальных усилий. Другими словами, Hyper-V сделает все возможное, чтобы выполнить резервирование IOPS для хранилища, но не может на 100 % гарантировать, что резервирование всегда будет выполняться. Если вы попытаетесь зарезервировать большую пропускную способность хранилища, чем может предоставить ваша система, Hyper-V не сможет предоставить вам зарезервированный объем пропускной способности хранилища. Если Hyper-V не сможет обеспечить минимальную пропускную способность, запрашиваемую для виртуального жесткого диска, он создаст уведомление на основе события.

Как видите, Quality of Service Management может быть эффективным инструментом для максимально эффективного использования доступной полосы пропускания хранилища. Вы можете использовать максимальные значения для регулирования пропускной способности хранилища для некоторых виртуальных жестких дисков, а минимальные значения — для резервирования пропускной способности хранилища для других дисков.