Virtualisering: Hvad er forskellen mellem KVM og QEMU?


Svar 1:

KVM er en type 1 hypervisor og Qemu er en type 2 hypervisor. Type 1 hypervisor leveres installeret med hardwaresystemet som KVM i Linux. KVM leverer hardwareacceleration til virtuelle maskiner, men det har brug for Qemu for at efterligne ethvert operativsystem.

Qemu er en Type 2-hypverisor, den kan installeres på et operativsystem, og den kører som en uafhængig proces, og instruktionerne, vi giver i Quemu, udføres på værtsmaskinen. Qemu kan køre uafhængigt uden KVM, da det er en emulator, men ydelsen vil være dårlig, da Qemu ikke gør nogen hardwareacceleration

Der er et projekt, der pågår for at integrere Qemu og KVM. Dette vil være en type 1 hypervisor. Så vi vil have alle fordelene ved Qemu som emulator og KVM-hardwareacceleration for bedre ydelse.


Svar 2:

KVM - findes i Linux-kernen som et indlæst modul. Når KVM er indlæst, konverterer Linux-kernen til en type-1 hypervisor alias bare metal hypervisor. KVM-virtualisering bruger Linux-kernen som sin hypervisor (VM er i det væsentlige en proces). Det afhænger dog af Intel-VT- og AMD-V-virtualiseringsudvidelserne på henholdsvis Intel og AMD for hardwareassists for at muliggøre robust virtualisering. KVM arbejder sammen med disse udvidelser og hjælper med at levere en bedre virtualiseringsoplevelse med højere gennemstrømning af næsten nul-latenstid. Således kan alle VM'er (læseprocesser) køre uden nogen ydelse eller kompatibilitet, som om de kører naturligt på en dedikeret CPU. På grund af de ovennævnte udvidelser har VM'erne også en større opmærksomhed om kapaciteten i den underliggende hardwareplatform. Derfor er det rimeligt at sige, at KVM tilbyder hardwarevirtualisering i sin oprigtige og bedste form.

QEMU - på den anden side bor i brugerrummet og tilvejebringer systememulering inklusive processor og forskellige perifere enheder. Typisk distribueres QEMU sammen med KVM som en in-kernel-accelerator, hvor KVM udfører det meste af gæstekoden nativt, mens QEMU emulerer resten af ​​maskinen (perifere enheder), som gæsten har brug for. På steder, hvor VM skal tale med eksterne enheder, bruger QEMU gennemgang.

KVM og QEMU kan eksistere separat, men når de implementeres i fællesskab, giver de en rigere virtualiseringsoplevelse. HTH