Virtualisation (KVM / QEMU)
Prérequis (Support matériel)
Avant l'installation, vérifiez que votre processeur supporte la virtualisation matérielle :
Abstract
Si le résultat est 0, il est possible que la virtualisation soit désactivée dans votre BIOS/UEFI.
Installation (Debian / Ubuntu)
Utilisez apt pour installer l'hyperviseur et les outils de gestion :
sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager
Attribution des permissions
Pour gérer les machines virtuelles sans utiliser sudo, ajoutez votre utilisateur aux groupes libvirt et kvm :
Note
Vous devrez vous déconnecter puis vous reconnecter (ou redémarrer la session) pour que ces modifications soient effectives.
Gestion des Machines Virtuelles
Virt-manager (Interface graphique)
C'est l'outil le plus simple pour débuter. Lancement :
Virsh (Ligne de commande)
virsh est l'outil principal pour gérer les domaines (VMs) en CLI.
| Commande | Description |
|---|---|
virsh list --all |
Liste toutes les VMs (actives ou non) |
virsh start <vm> |
Démarre une VM |
virsh shutdown <vm> |
Arrête proprement une VM |
virsh destroy <vm> |
Force l'arrêt immédiat (équivalent débrancher la prise) |
virsh autostart <vm> |
Définit le démarrage automatique au boot de l'hôte |
virsh edit <vm> |
Édite le fichier XML de configuration de la VM |
virsh undefine <vm> |
Supprime la configuration d'une VM (attention au stockage) |
Gestion des disques (qemu-img)
qemu-img est l'outil en ligne de commande pour manipuler les images de disque (création, conversion, redimensionnement).
Informations sur une image
Création d'un disque vide
Redimensionnement d'un disque
Warning
Après avoir redimensionné le fichier, il faut également agrandir la partition à l'intérieur de la VM (avec gparted ou resize2fs).
Conversion de format
# Convertit un disque VMDK (VMware) vers QCOW2 (KVM)
qemu-img convert -f vmdk -O qcow2 disque.vmdk disque.qcow2
Stockage et Réseau
Réseau
Par défaut, KVM utilise un réseau NAT (default) permettant aux VMs d'accéder à internet mais pas l'inverse.
Pour un accès direct depuis le réseau local, il est préférable de configurer une carte bridge ou macvtap.
Warning
Il faut bien installer le paquet (sur Debian/Ubuntu) bridge-utils.
Format de disque (QCOW2)
Le format recommandé est .qcow2. Il supporte le "Thin Provisioning" (le fichier grossit selon l'usage réel) et les snapshots.
- Prendre un snapshot :
virsh snapshot-create-as <vm> <nom_snapshot> - Restaurer un snapshot :
virsh snapshot-revert <vm> <nom_snapshot>
Vérification du système
Pour vérifier que tout est correctement configuré pour l'hyperviseur :