
У меня установлен стандартный (не модифицированный) KVM+libvirtd на чистой машине Centos 6 с 8 ГБ ОЗУ и 8-ядерным процессором.
Когда я пытаюсь установить гостевой Centos 6 с помощью virt-manager, установка занимает уйму времени. Я дал ему 2 ядра и 3 ГБ ОЗУ, и я вижу на вкладке производительности, что он использует все 3 ГБ ОЗУ постоянно.
В чем проблема?
решение1
У меня была эта проблема с KVM (CentOS EL 6.4), поэтому я запустил бенчмарк, чтобы выяснить, что происходит. Оказалось, что моя гостевая VM работала всего на 15% быстрее хоста (bare metal OS). Я проверил предварительные требования kvm и убедился, что мой процессор Intel имеет VT-x (vmx) [AMD называет его svm].
cat /proc/cpuinfo | grep vmx
Почему же тогда медленная производительность?? Оказывается, мне нужно было включить VT-x в BIOS системы (старая машина примерно 2006 года). Чтобы убедиться, что проблема в этом, я проверил, kvm_intel
запущен ли модуль ядра:
lsmod | grep kvm
Оказалось, что он не работал с kvm_intel
. Когда я устанавливал свою виртуальную машину, libvirt определил domain type
как qemu
. Но это должен быть тип kvm
. Вы можете проверить:
virsh edit your_vm_guest_domain
... проверьте строку вверху ...
<domain type='qemu'>
Это libvirt сообщил мне, что не обнаружил его kvm_intel
присутствия в моей системе и по умолчанию перешел на простую эмуляцию QEMU.
Когда я включил VT-x в BIOS, я обнаружил, что могу загрузить модуль kvm_intel
, а затем изменить <domain type='kvm'>
. Я снова выполнил тот же тест и не обнаружил практически никакой разницы в скорости между гостевой виртуальной машиной и хостовой ОС.
решение2
Режим кэширования диска по умолчанию — сквозная запись, которая очень медленная. Переключите диски в режимобратная записьрежиме, и вы ощутите значительный прирост производительности ввода-вывода.
Прежде чем кто-то начнет жаловаться: с относительно недавними (CentOS 6+) версиями libvirt/qemu/kvm,диски обратной записи безопасныесли только гостевая ОС не поддерживает/не активирует барьеры записи (которые поддерживаются и включаются любой современной гостевой ОС, которую я могу вспомнить).