QEMU je open-source emulátor a virtualizátor s širokým spektrem funkcí. Na rozdíl od čistých hypervisorů dokáže QEMU emulovat kompletní hardwarovou architekturu (např. ARM, MIPS, PowerPC) na odlišném hostitelském procesoru (např. x86_64).
V moderním cloudu se nejčastěji používá ve spojení s KVM, kde QEMU zajišťuje emulaci vstupně-výstupních (I/O) zařízení, zatímco KVM se stará o rychlé provádění instrukcí procesoru.
QEMU může pracovat ve dvou základních režimech:
QEMU emuluje celý počítač včetně procesoru a všech periferií.
Pokud hostitel i host sdílejí stejnou architekturu (např. oba x86_64), QEMU využije KVM k přímému spouštění kódu na procesoru.
QEMU definovalo jeden z nejpopulárnějších formátů virtuálních disků – .qcow2 (QEMU Copy-On-Write).
QEMU poskytuje virtuálnímu stroji standardizovaný hardware:
Jedná se o standard pro tzv. paravirtualizované ovladače. Místo aby QEMU složitě emulovalo starou reálnou síťovou kartu, domluví se s operačním systémem hosta na „zkratce“, která výrazně zrychluje přenos dat mezi virtuálním strojem a fyzickým hardwarem.
QEMU je nízkoúrovňový nástroj a jeho příkazová řádka je velmi komplexní. Proto se málokdy spouští přímo. Většinou je ovládáno nadřazenými nástroji:
Bez QEMU by KVM bylo pouze „mozkem“ bez „rukou a nohou“. Zatímco KVM poskytuje výpočetní sílu, QEMU dodává virtuálnímu stroji vše, co potřebuje k interakci s okolním světem – od pevných disků až po síťové připojení.
— Související termíny: KVM, Hypervisor, Virtio, Libvirt, IaaS.