Эмуляция SSD в libvirt

топ 100 блогов klink0v12.08.2024

Вот здесь я писал как переполз с VirtualBox на Virt-Manager / LibVirt, ибо первый замотал меня своей кривизной. Пускаю под ним в основном Windows 10, ибо некоторые заказчики для доступа в свой контур предалагают только %&учий Checkpoint VPN, который больше ни под чем не работает (посылаю очередные лучи поноса в сторону Checkpoint, чтоб он сдох).

Со временем выявилась некая беда-печалька с этим qemu/libvirt: он(а) "из коробки" не умеет рапортовать гостю, что тот имеет дело с SSD. Если гость линуксовый, то это мало кого заботит: всегда можно подрихтовать параметр "/sys/block/блаблабла/rotational" и/или поиграться опциями монтирования файловой системы на предмет trim. А вот форточка, особенно десктопная, рьяно жаждет дефрагментировать диск, забивая при этом CPU почем зря. Вроде бы такое поведение тоже можно как-то отключить, но корректнее всё-таки объяснить ей что она запущена с SSD, чтобы не страдала фигней.

К сожалению, "штатного" параметра переключения HDD / SSD в libvirt не предусмотрено. Но есть костыль, при этом играет роль версия. Для версий ниже чем 8.2 это делается через "commandline -set",  для версии 8.2 или свежее — через "override frontend".

Пример:

В моём примере виртуальный диск называется "scsi0-0-0-0". Следует обратить внимание на два момента.


  1. Редактировать XML-ник нужно не напрямую, а командой "virsh edit бла-бла-бла". Или через графический интерфейс Virt-Manager, если ему разрешено редактировать XML-описания.
  2. Нужно проверить наличие строки "xmlns:qemu=бла-бла-бла", иначе будет ругаться на якобы неверный синтаксис конфига.

Результат своих трудов можно проверить командой "virsh qemu-monitor-command БлаБлаБла --hmp "info qtree" | grep -A 20 scsi0-0-0-0" с хоста при запущенной виртуалке и изнутри гостя PowerShell-командой "Get-PhysicalDisk | Format-Table -AutoSize". Если всё получилось, то гость должен в графе "MediaType" отобразить слово "SSD".

Больше информации есть по ссылке. Там чувак даже не поленился залезть в исходные коды QEMU чтобы найти работающее решение. Номер тикета (issue) на GitHub-е доставляет отдельно. Интересно, они специально так подгадали что ли?

Всем дьявольски работающих SSD в гостевых форточках.

Оставить комментарий

Предыдущие записи блогера :
Архив записей в блогах:
Роботы наступают! И это уже не виртуальная фраза из фантастического кинофильма. Роботы сегодня освобождают людей от тяжелой физической нагрузки, роботы выполняют невыполнимые задания, а в 2020 году роботы будут атаковать Луну. И это не ...
...
02. 03. 04. 05. 06. 07. 08. 09. 10. 11. 12. 13. ...
:.. Вашингтон не планирует поставлять ядерное оружие Украине. Российская газета Белый дом обратился к зампреду Совбеза РФ Дмитрию Медведеву и обозначил, что США не планируют передавать Украине ядерное оружие для борьбы с Россией. URA.Ru О том, что некоторые американские ...
. Иномарка, в салоне которой находятся выходцы с Кавказа, мчится по улицам Москвы, выскакивая на встречную полосу и подрезая другие машины. Внимание! Ненормативная лексика! ...