System-Linux

Aller au contenu | Aller au menu | Aller à la recherche

Gentoo Linux: La virtualisation facile avec QEMU-KVM, libvirtd et Virt-Manager.

QEMU-KVM

La virtualisation libre et facile avec QEMU-KVM, c'est possible! c'est réalisable!

Cette article a pour but de présenter succinctement la virtualisation sous Gentoo Linux en utilisant la technologie QEMU-KVM. Nous ne rentrerons pas dans les détails concernant la configuration avancé des différents outils, le but étant d'avoir rapidement un environnement de virtualisation simple et le plus conviviale possible.

Prérequis pour l'installation

  1. Gentoo Linux (x86 / x86_64)
  2. Processeur compatible Intel-VT ou AMD-V
  3. Kernel => 2.6.20

Configuration noyau

Vérifier que votre kernel est compilé avec les modules suivants: (dans notre exemple nous disposons d'un processeur Intel)

[*] Virtualization  --->
<M>   Kernel-based Virtual Machine (KVM) support 
    <M>     KVM for Intel processors support

Device Drivers  ---> 
  <M>   Universal TUN/TAP device driver support

Chargement des modules

On automatise le chargement des modules au démarrage de la machine.

# echo "tun" >> /etc/modules.autoload.d/kernel-2.6
# echo "kvm-intel" >> /etc/modules.autoload.d/kernel-2.6

Puis on charge manuellement les modules

# modprobe tun
# modprobe kvm-intel (ou amd)

Si le module kvm refuse de se charger vérifiez que votre processeur supporte la virtualisation compatible KVM:

Pour Intel :

# grep vmx /proc/cpuinfo

Pour AMD:

# grep svm /proc/cpuinfo

Si vous disposez bien du flag associé à votre processeur et que module refuse quand même de se charger pensez à activer la virtualisation dans votre BIOS.

Installation de Virt-Manager, libvirtd, QEMU-KVM

Les paquets pour QEMU-KVM n'ont pas encore été stabilisé il faut donc les "Dé-keyworder": (~x86 à adapter selon votre profile)

# echo "app-emulation/virt-manager ~x86" >> /etc/portage/package.keywords
# echo "app-emulation/virtinst ~x86" >> /etc/portage/package.keywords
# echo "app-emulation/libvirt ~x86" >> /etc/portage/package.keywords
# echo "net-analyzer/netcat6 ~x86" >> /etc/portage/package.keywords
# echo "app-emulation/qemu-kvm ~x86" >> /etc/portage/package.keywords

On ajoute le USE flag qemu pour le paquet libvirt

# echo "app-emulation/libvirt qemu" >> /etc/portage/package.use

Enfin on installe Virt-Manager

# emerge -av app-emulation/virt-manager

Configuration de libvirtd

Libvirtd est un service qui va nous permettre de gérer facilement nos machines virtuelles.

Par défaut portage va créer le groupe "kvm" lors de l'installation du paquet qemu-kvm, nous allons utiliser ce groupe pour gérer les services lié à la virtualisation.

On édite /etc/libvirt/libvirtd.conf en dé-commentant et en adaptant les lignes suivantes:

unix_sock_group = "kvm"
unix_sock_ro_perms = "0777"
unix_sock_rw_perms = "0770"

auth_unix_ro = "none"
auth_unix_rw = "none"

Pour plus de sécurité vous pouvez bien-sûr adapter le fichier libvirtd.conf comme bon vous semble.

On démarre le service libvirtd:

# /etc/init.d/libvirtd start

On invite le service libvirtd à démarrer automatiquement au lancement de la machine.

# eselect rc add libvirtd default

Lancement de Virt-Manager

On oublie pas d'ajouter l'utilisateur de son choix dans le groupe "kvm"

# usermod -ag kvm $VOTRE_UTILISATEUR

Puis on lance "virt-manager" dans une console graphique.

Je vous laisse le plaisir de découvrir par vous même l'outil. La création d'une nouvelle machine virtuel se faisant en quelques clics.

Pour ceux qui désire voir a quoi ressemble Virt-Manager vous pouvez consulter quelques captures d'écran sur le site officiel du projet.

Amusez-vous bien!

Par GanGan | le vendredi, janvier 29 2010 08:00

Commentaires

1. GanGan

mardi, avril 27 2010 | 14:59

Si vous rencontrez ce message d'erreur :

erreur :Impossible de démarrer le domaine centos1
erreur :Failed to add tap interface to bridge 'virbr0': No such device

Faites ceci :

virsh net-autostart default
virsh net-start default
virsh list --all
virsh start centos1