qemu Жесткий диск медленный доступ (>10 секунд)

Вопрос или проблема

Я пытаюсь настроить несколько виртуальных машин Windows на сервере с Linux, используя KVM / qemu, и получаю ужасные показатели времени чтения и записи на диск. Диспетчер задач Windows 11 на одной из машин сообщает, что среднее время доступа к диску составляет до 21000 мс (да, 21 секунда), когда запущены только Thunderbird (который сообщает, что он в бездействии) и антивирусная проверка. Образ диска представляет собой разреженный файл img размером 3 ТБ, преобразованный из qcow2 с помощью qemu-img convert – я наблюдал аналогичное время с использованием файловой системы qcow2 и думал, что переход на img может ускорить процессы. Основываясь на древних запросах здесь, я изменил кэш файла на write-through, что, похоже, ухудшило ситуацию.

На хосте версия qemu — 8.2.0-11.e19_4.6, работающая на Alma Linux 9.4. Процессор — один Intel i7-12700KH со всеми включенными ядрами; хост-система имеет 128 ГБ оперативной памяти, SSD на 2 ТБ и жесткий диск на 8 ТБ. Виртуальные жесткие диски находятся на жестком диске на 8 ТБ, который отформатирован в xfs. Конкретная виртуальная машина Win11, о которой я здесь сообщаю, имеет 8 виртуальных ядер процессора с прямым доступом, 32 ГБ памяти и 3 ТБ виртуального диска. Также работают две виртуальные машины Server 2022 (один контроллер домена AD, один сервер-член с включенными терминальными службами) и одна виртуальная машина Windows 10, но все они, в основном, находятся в состоянии бездействия, насколько это возможно для любой системы Windows.

Я предполагаю, что если доступ к диску так плох для всех, qemu не был бы все еще востребован, так что я, должно быть, делаю что-то не так. Буду очень признателен за любые предложения, куда мне стоит заглянуть.

Ответ или решение

Проблема медленного доступа к диску в QEMU на Linux

Введение

Медленная работа с диском, которую вы наблюдаете на виртуальной машине Windows 11, может быть результатом нескольких факторов. В данной статье мы рассмотрим возможные причины и решения проблемы медленного доступа к жесткому диску QEMU в KVM-среде.

1. Структура хранилища и настройки виртуальной машины

Первым шагом в решении вашей проблемы является анализ конфигурации и характеристик используемого хранилища.

1.1. Формат изображения диска

  • Вы упомянули, что использовали команду qemu-img convert для преобразования образа из формата QCOW2 в IMG. Однако формат QCOW2 предоставляет дополнительные преимущества, такие как сжатие и возможность создания мгновенных снимков. Хотя IMG может быть более стабильным, он не поддерживает эти особенности. Попробуйте протестировать производительность с QCOW2.

1.2. Спарсные файлы

  • Убедитесь, что ваш образ диска действительно является спарсным и не заполнен пустыми блоками, которые могут замедлять работу. Вы можете проверить это с помощью команды qemu-img info.

2. Кэширование

Кэширование имеет значительное влияние на производительность диска. Вы упомянули изменение режима кэширования на write-through, который, как правило, замедляет работу, так как данные записываются на диск немедленно.

Рекомендации:

  • Измените параметры кэширования на none или используйте режим writeback, что позволит увеличить скорость записи за счет временного хранения данных в памяти.

3. Параметры виртуализации

3.1. Прямое подключение CPU

  • Вы назначили 8 виртуальных ядер процессора (vCPU) для Windows 11. Проверьте, действительно ли они используются эффективно. Пересмотрите параметры CPU и политику управления ресурсами.

4. Настройки хранилища

4.1. Тип файловой системы

  • Ваш диск XFS может не быть оптимальным для работы с виртуальными машинами. Попробуйте использовать EXT4, так как она может предложить лучшую производительность для определенных сценариев использования виртуальных машин.

5. Аппаратные ограничения

5.1. Использование SSD

  • Учтите, что многократный доступ к данным на HDD может существенно замедлять работу VM. Если возможно, перенесите образы виртуальных машин на SSD диск для ускорения доступа к данным.

6. Мониторинг производительности

6.1. Использование инструментов мониторинга

  • Запустите инструменты, такие как iostat или vmstat, для мониторинга нагрузки на диски и CPU. Анализ этих данных поможет понять, где узкие места в вашей системе.

Заключение

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

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

Оцените материал
Добавить комментарий

Капча загружается...