Virtualisation: Quelle est la différence entre KVM et QEMU?


Réponse 1:

KVM est un hyperviseur de type 1 et Qemu est un hyperviseur de type 2. L'hyperviseur de type 1 est installé avec le système matériel tel que KVM sous Linux. KVM fournit une accélération matérielle pour les machines virtuelles, mais il a besoin de Qemu pour émuler n'importe quel système d'exploitation.

Qemu est un hypveriseur de type 2, il peut être installé sur un système d'exploitation et s'exécute en tant que processus indépendant et les instructions que nous donnons dans Quemu seront exécutées sur la machine hôte. Qemu peut fonctionner indépendamment sans KVM car c'est un émulateur mais les performances seront médiocres car Qemu ne fait aucune accélération matérielle

Un projet est en cours pour intégrer Qemu et KVM. Ce sera un hyperviseur de type 1. Nous aurons donc tous les avantages de Qemu en tant qu'émulateur et accélération matérielle KVM pour de meilleures performances.


Réponse 2:

KVM - réside dans le noyau Linux en tant que module chargeable. Une fois chargé, KVM convertit le noyau Linux en un hyperviseur de type 1, également appelé hyperviseur bare-metal. La virtualisation KVM utilise le noyau Linux comme hyperviseur (la VM est essentiellement un processus). Cependant, cela dépend des extensions de virtualisation Intel-VT et AMD-V sur Intel et AMD respectivement pour les assistances matérielles permettant une virtualisation robuste. Travaillant de concert avec ces extensions, KVM permet d'offrir une meilleure expérience de virtualisation avec un débit plus élevé de latence presque nulle. Ainsi, toutes les machines virtuelles (processus de lecture) peuvent s'exécuter sans impact sur les performances ou la compatibilité, comme si elles s'exécutaient en mode natif sur un processeur dédié. En outre, en raison des extensions susmentionnées, les machines virtuelles ont une meilleure connaissance des capacités de la plate-forme matérielle sous-jacente. Par conséquent, il est juste de dire que KVM offre la virtualisation matérielle dans sa forme la plus sincère et la meilleure.

QEMU - D'autre part réside dans l'espace utilisateur et fournit une émulation système, y compris le processeur et divers périphériques. En règle générale, QEMU est déployé avec KVM en tant qu'accélérateur dans le noyau où KVM exécute la plupart du code invité de manière native, tandis que QEMU émule le reste de la machine (périphériques) dont a besoin l'invité. Dans les endroits où la machine virtuelle doit parler à des périphériques externes, QEMU utilise le passthrough.

KVM et QEMU peuvent exister séparément, mais lorsqu'ils sont déployés conjointement, ils offrent une expérience de virtualisation plus riche. HTH