Работа с QEMU и KVM
Введение
Зачем это нужно, если уже есть ряд фронтендов разного уровня (libvirt, Proxmox, RHEV итд)? В любом случае фронтенды вынуждены вызывать qemu с множеством опций, поэтому в некоторых случаях (тестирование новых возможностей, отладка, развлечение) намного приятней и понятней работать непосредственно с qemu. Кроме того знания полезны для общего развития и понимания работы систем.
Как связаны qemu и технология KVM? Qemu - эмулятор, который может работать и без KVM, но использование аппаратной виртуализации значительно ускоряет работу гостевых систем, поэтому KVM является предпочтительным вариантом.
Создание файла образа
Для начала стоит проверить, поддерживается ли аппаратная виртуализация вашим процессором. Для этого стоит убедиться что в параметрах камня имеется флаг vmx или svm (В зависимости от производителя Intel/AMD.)
cat /proc/cpuinfo | grep -E "vmx|svm"
У вас будет что-то типа этого:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms
В этом списке будет отмечено vmx либо svm.
Кроме того необходимо включить поддержку виртуализации в BIOS. На некоторых ноутбуках эта возможность может быть отключена производителем и потребуется перепрошивка BIOSа.
Устанавливаем QEMU:
urpmi qemu
После установки следует перезагрузить компьютер, чтобы система подключила модули ядра kvm и kvm_intel (kvm_amd). После перезагрузки проверим, подключены ли модули ядра:
[root@localhost pastordi]# lsmod | grep kvm kvm_intel 137021 0 kvm 448299 1 kvm_intel [root@localhost pastordi]#
Если нет желания перегружаться, можно в самим подключить эти модули:
modprobe kvm modprobe kvm_intel #Для процессоров AMD подключаем kvm_amd
Далее, если все хорошо, то создаем файл для образа нашей системы.
qemu-img create -f qcow2 RELS1.qcow2 8G
Где:
-f = укахывает на формат файла, лучше использовать формат qcow2 родной для QEMU, он поддерживает сжатие. RELS1.qcow2 = имя нашего файла образа 8G = размер файла для образа, в данном примере 8 Гигабайт.
После вполнения данной команды у вас будет такое сообщение:
[pastordi@localhost ~]$ qemu-img create -f qcow2 RELS1.qcow2 8G Formatting 'RELS1.qcow2', fmt=qcow2 size=8589934592 encryption=off cluster_size=65536 lazy_refcounts=off [pastordi@localhost ~]$