Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
kvm [Le 26/04/2013, 16:05]
84.37.115.146 [Astuces] Arrêter proprement une VM Windows
kvm [Le 26/03/2023, 16:35] (Version actuelle)
37.170.97.105 [Mise en place]
Ligne 1: Ligne 1:
-{{tag>feisty lucid maverick ​virtualisation BROUILLON}}+{{tag>Precise ​virtualisation BROUILLON}}
  
  
Ligne 9: Ligne 9:
  
 Néanmoins, **KVM** est complètement libre, performant et très facile à installer et à utiliser. L'​interface graphique **[[virt-manager]]** pourra aider les néophytes à paramétrer KVM et pourra rendre la vie plus simple aux administrateurs réseaux. Néanmoins, **KVM** est complètement libre, performant et très facile à installer et à utiliser. L'​interface graphique **[[virt-manager]]** pourra aider les néophytes à paramétrer KVM et pourra rendre la vie plus simple aux administrateurs réseaux.
 +
 +De plus, il est possible d'​isoler une deuxième carte graphique dédiée à la virtualisation afin d'​obtenir une accélération 3D. La méthode dite du "GPU passthrough"​.
  
 <note important>​Vous ne pouvez pas utiliser **KVM** en même temps que **VirtualBox**. Il faudra en effet [[#​suppression_de_kvm|fermer KVM]] pour utiliser VirtualBox et vice versa. Ou désactiver le support de la virtualisation processeur dans VirtualBox.</​note>​ <note important>​Vous ne pouvez pas utiliser **KVM** en même temps que **VirtualBox**. Il faudra en effet [[#​suppression_de_kvm|fermer KVM]] pour utiliser VirtualBox et vice versa. Ou désactiver le support de la virtualisation processeur dans VirtualBox.</​note>​
- 
-<note important>​ 
-Attention: Vous ne pouvez pas installer kvm et virtualbox en même temps, cela va entrainer des problèmes, installation défectueuse,​ gel de la machine!!!! Donc si vous faites l'​essai et tout part en vrille, vous savez pourquoi!!! 
-</​note>​ 
  
 <note tip>​apparemment on peut désormais(test effectué sur ubuntu 12.04 amd64) installer kvm et virtualbox sans problème et il n'y a plus besoin de recharger les modules pour passer de l'un à l'​autre,​ Simplement si vous lancez virtualbox alors que kvm tourne, virtualbox plantera, si vous lancez kvm alors que virtualbox tourne, qemu  démarrera en mode tcg accelerator(avec des performance très faibles) <note tip>​apparemment on peut désormais(test effectué sur ubuntu 12.04 amd64) installer kvm et virtualbox sans problème et il n'y a plus besoin de recharger les modules pour passer de l'un à l'​autre,​ Simplement si vous lancez virtualbox alors que kvm tourne, virtualbox plantera, si vous lancez kvm alors que virtualbox tourne, qemu  démarrera en mode tcg accelerator(avec des performance très faibles)
-voir ce post [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=917021]]+voir ce post [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=917021]]
 </​note>​ </​note>​
  
Ligne 26: Ligne 24:
 Si un résultat s'​affiche,​ c'est que le processeur supporte la virtualisation. Si un résultat s'​affiche,​ c'est que le processeur supporte la virtualisation.
  
-On peut aussi taper la commande : +On peut aussi taper la commande ​(fournie par le paquet **[[apt://​cpu-checker|cpu-checker]]**)
-  kvm-ok+  ​sudo kvm-ok
 On obtient soit : On obtient soit :
   INFO: Your CPU supports KVM extensions   INFO: Your CPU supports KVM extensions
Ligne 37: Ligne 35:
  
 Il suffit ensuite d'​[[apt|installer]] le paquet **[[apt://​qemu-kvm|qemu-kvm]]** Il suffit ensuite d'​[[apt|installer]] le paquet **[[apt://​qemu-kvm|qemu-kvm]]**
 +
 +Si la réponse indique que le paquet est virtuel, il est possible de procéder en ligne de commande.
 +<code bash>​sudo apt install qemu-kvm
 +Lecture des listes de paquets... Fait
 +Construction de l'​arbre des dépendances... Fait
 +Lecture des informations d'​état... Fait      ​
 +Note : sélection de « qemu-system-x86 » au lieu de « qemu-kvm »
 +.........</​code>​
  
  
Ligne 63: Ligne 69:
 Vous pouvez également utiliser une image ISO sans la graver : Vous pouvez également utiliser une image ISO sans la graver :
 <​code>​kvm -m 256 -cdrom emplacement/​de/​l_image.iso -boot d emplacement/​du/​fichier_image.img</​code>​ <​code>​kvm -m 256 -cdrom emplacement/​de/​l_image.iso -boot d emplacement/​du/​fichier_image.img</​code>​
 +
 +Ou bien tester une clé LiveUSB de la maniere suivante (en supposant que la clé USB est relié au device **''/​dev/​sdb''​**) :
 +<​code>​kvm -m 512 -hdb /​dev/​sdb</​code>​
  
 Pour quitter la fenêtre de virtualisation,​ il vous faut utiliser les combinaisons de touches "''​CTRL-ALT''"​ Pour quitter la fenêtre de virtualisation,​ il vous faut utiliser les combinaisons de touches "''​CTRL-ALT''"​
Ligne 120: Ligne 129:
 Vous devez avoir au préalable déjà préparé un VG qui contiendra les data pour vos VM (ici appelé "​vg_data"​). (cf:​[[:​lvm|Doc Ubuntu]]) Vous devez avoir au préalable déjà préparé un VG qui contiendra les data pour vos VM (ici appelé "​vg_data"​). (cf:​[[:​lvm|Doc Ubuntu]])
  
-  * Vérifier que le VG dispose de la place nécessaire  +  * Vérifier que le VG dispose de la place nécessaire 
-  * Création du LV "​lv_VmName"​ sur le VG "​vg_data"​ : +  * Création du LV "​lv_VmName"​ sur le VG "​vg_data"​ :
 <​code>​lvcreate -L80G -n lv_v-VmName vg_data</​code>​ <​code>​lvcreate -L80G -n lv_v-VmName vg_data</​code>​
 * Arrêt de votre VM * Arrêt de votre VM
Ligne 134: Ligne 143:
   * Pour les disques :   * Pour les disques :
     * à partir de Linux 2.6.25 (sur l'​invité) on peut utiliser le bus virtio de manière transparente. Les disques apparaissent comme des périphériques /dev/vdX sur l'​invité     * à partir de Linux 2.6.25 (sur l'​invité) on peut utiliser le bus virtio de manière transparente. Les disques apparaissent comme des périphériques /dev/vdX sur l'​invité
-    * sous Windows, télécharger l'[[http://alt.fedoraproject.org/​pub/alt/​virtio-win/​latest/​images/​bin/​|iso des pilotes]] (comme indiqué [[http://​www.linux-kvm.org/​page/​WindowsGuestDrivers/​Download_Drivers|ici]]) puis installer les pilotes.\\ Windows ne permet pas d'​installer les pilotes si un disque dur n'​utilise pas le bus virtio, d'où l'​[[http://​www.linux-kvm.com/​content/​redhat-54-windows-virtio-drivers-part-2-block-drivers|astuce suivante]] pour installer le pilote :+    * sous Windows, télécharger l'iso ici -> [[https://​fedoraproject.org/​wiki/Windows_Virtio_Drivers#​Direct_download]] (comme indiqué [[http://​www.linux-kvm.org/​page/​WindowsGuestDrivers/​Download_Drivers|ici]]) puis installer les pilotes.\\ Windows ne permet pas d'​installer les pilotes si un disque dur n'​utilise pas le bus virtio, d'où l'​[[http://​www.linux-kvm.com/​content/​redhat-54-windows-virtio-drivers-part-2-block-drivers|astuce suivante]] pour installer le pilote :
       - démarrer l'​invité normalement (disque dur sur bus ide par exemple)       - démarrer l'​invité normalement (disque dur sur bus ide par exemple)
       - ajouter un second disque dur (cette fois sur le bus virtio ; le disque dur n'a pas besoin de contenir de données)       - ajouter un second disque dur (cette fois sur le bus virtio ; le disque dur n'a pas besoin de contenir de données)
Ligne 142: Ligne 151:
       - ajouter le premier disque dur sur bus virtio       - ajouter le premier disque dur sur bus virtio
       - redémarrer l'​invité       - redémarrer l'​invité
-  * Pour le réseau : les idées précédentes sont applicables pour le réseau ​+  * Pour le réseau : les idées précédentes sont applicables pour le réseau
  
 === Autres === === Autres ===
  
   * Améliorer les accès disques: passez le mode de cache de vos disques dur en mode "​writeback"​   * Améliorer les accès disques: passez le mode de cache de vos disques dur en mode "​writeback"​
-  * Pour les guests Linux sans Virtio : //gestion par l'​hôte de l'​ordonnancement d'​accès au fichier//​. ​ Sur la ligne de commande Linux du grub de la machine virtuelle, passer le paramètre **elevator=noop** (procédure détaillée en anglais [[http://​blog.bodhizazen.net/​linux/​improve-kvm-performance/​|ici]])+  * Pour les guests Linux sans Virtio : //gestion par l'​hôte de l'​ordonnancement d'​accès au fichier//​. ​ Sur la ligne de commande Linux du grub de la machine virtuelle, passer le paramètre **elevator=noop** (procédure détaillée en anglais ​<del>[[http://​blog.bodhizazen.net/​linux/​improve-kvm-performance/​|ici]](Lien mort)</​del>​ Equivalent RedHAT : [[https://​access.redhat.com/​solutions/​5427/|ici]])
  
 ===== Astuces ===== ===== Astuces =====
Ligne 153: Ligne 162:
 ==== Arrêter proprement une VM Windows ==== ==== Arrêter proprement une VM Windows ====
  
-  * Si vous avez des connexions RDP sur votre VM, celle-ci empêche l'​arrêt de la VM par la méthode ACPI si les sessions Windows ne sont pas fermées (mais juste verrouillées par exemple). Pour supprimer la fenêtre de confirmation "Des utilisateurs ont ouvert une session sur cet ordinateur. La fermeture de Windows peut provoquer la perte de données",​ il faut ajouter une clef registre : voir [[http://​mindref.blogspot.fr/​2011/​04/​kvm-shutdown-windows-guest-gracefullly.html|ici]] ou [[http://​ethertubes.com/​unattended-acpi-shutdown-of-windows-server/​|là]].+  * Si vous avez des connexions RDP sur votre VM, celle-ci empêche l'​arrêt de la VM par la méthode ACPI si les sessions Windows ne sont pas fermées (mais juste verrouillées par exemple). Pour supprimer la fenêtre de confirmation "Des utilisateurs ont ouvert une session sur cet ordinateur. La fermeture de Windows peut provoquer la perte de données",​ il faut ajouter une clef registre : voir [[http://​mindref.blogspot.fr/​2011/​04/​kvm-shutdown-windows-guest-gracefullly.html|ici]] ou [[http://​ethertubes.com/​unattended-acpi-shutdown-of-windows-server/​|là]]. ​Pour XP, voir [[https://​forums.virtualbox.org/​viewtopic.php?​f=8&​t=24719#​p215403|là]]. 
 + 
 +==== Réduire l'​usage CPU ==== 
 + 
 +De manière générale, il est important d'​avoir une couche kvm récente pour bénéficier des corrections de bugs et en particulier ceux liés à la performance. Il faut également avoir l'​accélération matérielle du CPU pour la virtualisation (VT chez Intel, et AMD-V pour AMD). 
 + 
 +Si votre VM ne fait rien, l'​usage CPU de l'​hôte ne devrait pas dépasser 3%. Voici quelques causes pouvant entraîner un usage CPU trop élevé (20% par exemple) : 
 +  * utilisation d'une carte virtio sur un système invité trop « ancien » : tester en passant à e1000 
 +  * FreeBSD 
 +    * utilisation d'un pointeur « Tablette graphique USB » (constaté avec FreeBSD 9) 
 +    * FreeBSD jusqu'​à la 8 : diminuter le paramètre kern.hz en ajoutant la ligne suivante au fichier /​boot/​loader.conf:​ kern.hz=100
 ===== Autres outils permettant d'​administrer les machines virtuelles gérées par kvm ===== ===== Autres outils permettant d'​administrer les machines virtuelles gérées par kvm =====
 ==== Outils Graphiques ==== ==== Outils Graphiques ====
   *[[virt-manager]]   *[[virt-manager]]
-  *[[http://​sourceforge.net/​projects/​aqemu/​|aqemu]] est une  interface graphique en [[wpfr>​Qt#​Qt4|Qt4]] de gestion de [[:qemu]] et kvm. ( [[apt://​aqemu|aqemu]] )+  *[[https://​sourceforge.net/​projects/​aqemu/​|aqemu]] est une  interface graphique en [[wpfr>​Qt#​Qt4|Qt4]] de gestion de [[:qemu]] et kvm. ( [[apt://​aqemu|aqemu]] )
   *qemu-launcher interface graphique en [[wpfr>​GTK%2B|Gtk]] de gestion de [[:qemu]] et kvm. ( [[apt://​qemu-launcher|qemu-launcher]] )   *qemu-launcher interface graphique en [[wpfr>​GTK%2B|Gtk]] de gestion de [[:qemu]] et kvm. ( [[apt://​qemu-launcher|qemu-launcher]] )
  
 ==== Outils en ligne de commande ==== ==== Outils en ligne de commande ====
-  *  [[http://​linux.die.net/​man/​1/​virsh|Virsh]] est une interface en ligne de commande qui permet au travers de [[http://​www.libvirt.org/​virshcmdref.html#​description|libvirt]] la création et la gestion de vos machines virtuelles. ​ \\+  *  [[https://​linux.die.net/​man/​1/​virsh|Virsh]] est une interface en ligne de commande qui permet au travers de [[http://​www.libvirt.org/​virshcmdref.html#​description|libvirt]] la création et la gestion de vos machines virtuelles. ​ \\
 (cf: [[https://​help.ubuntu.com/​community/​KVM/​Virsh|KVM virsh sur help ubuntu]]) (cf: [[https://​help.ubuntu.com/​community/​KVM/​Virsh|KVM virsh sur help ubuntu]])
  
 ===== Ressources externes ===== ===== Ressources externes =====
  
-  * [[http://​fr.wikipedia.org/​wiki/​Kernel-based_Virtual_Machine|Article wikipedia]]+  * [[wpfr>Kernel-based_Virtual_Machine|Article wikipedia]]
   * [[:qemu]]   * [[:qemu]]
-  * [[https://​help.ubuntu.com/​community/​KVM|Article sur le wiki anglophone]]+  * [[https://​help.ubuntu.com/​community/​KVM|Article sur le wiki Ubuntu ​anglophone]]
   * Amélioration des performances des disques virtuels [[http://​blog.bodhizazen.net/​linux/​improve-kvm-performance/​|ici (en)]].   * Amélioration des performances des disques virtuels [[http://​blog.bodhizazen.net/​linux/​improve-kvm-performance/​|ici (en)]].
   * [[http://​www.linux-kvm.com/​content/​be-more-productive-base-images-part-3|Manipulation des images disque dur avec image de "​base"​]] (utilisée par des images "​cow"​ : copy on write). Voir aussi les "part 1" et "​2"​. (Remarque : pour chaîner plus d'une fois l'​image,​ voir [[https://​bugs.launchpad.net/​ubuntu-release-notes/​+bug/​656173|l'​aspect sécurité présenté sur Launchpad]]).   * [[http://​www.linux-kvm.com/​content/​be-more-productive-base-images-part-3|Manipulation des images disque dur avec image de "​base"​]] (utilisée par des images "​cow"​ : copy on write). Voir aussi les "part 1" et "​2"​. (Remarque : pour chaîner plus d'une fois l'​image,​ voir [[https://​bugs.launchpad.net/​ubuntu-release-notes/​+bug/​656173|l'​aspect sécurité présenté sur Launchpad]]).
Ligne 175: Ligne 194:
  
   * [[http://​xenman.sourceforge.net/​index.html]] ConVirt un Gui pour la virtualisation (simple et efficace)   * [[http://​xenman.sourceforge.net/​index.html]] ConVirt un Gui pour la virtualisation (simple et efficace)
 +  * [[https://​blog.zerosector.io/​2018/​07/​28/​kvm-qemu-windows-10-gpu-passthrough/​]] mise en place d'une carte graphique dédiée à la machine virtuelle(accélération 3D !)
 + <​note>​ ce logiciel semble devenu commercial ? 8-O </​note>​
  
-  * [[http://​www.ubuntu-party.org/​party-files/​FR/​20090516/​audios/​E4_Virtualisation-avec-KVM.ogg|Virtualisation avec KVM]] : conférence audio réalisée par Nicolas Barcet durant la Ubuntu party du 17 mai 2009. 
-  * [[http://​thegeekcorner.pagesperso-orange.fr/​fr/​tutoriel/​kvm_linux.html|tuto généraliste kvm en français]] 
   *  * Une liste d'​outils de gestion de VM KVM [[http://​www.linux-kvm.org/​page/​Management_Tools]]   *  * Une liste d'​outils de gestion de VM KVM [[http://​www.linux-kvm.org/​page/​Management_Tools]]
  • kvm.1366985118.txt.gz
  • Dernière modification: Le 26/04/2013, 16:05
  • par 84.37.115.146