KVM¶
Pré-requis¶
- kvm/prepare-wsl.sh prépare l'installation dans WSL (testé avec Ubuntu-24.04) :
# ATTENTION : snap sera désactivé
curl -sS https://mborne.github.io/outils/kvm/prepare-wsl.sh | bash
# NB : il faudra rebooter avec wsl --shutdown && wsl
Installation¶
- kvm/install.sh assure l'installation de libvirt :
# ATTENTION : snap sera désactivé
curl -sS https://mborne.github.io/outils/kvm/install.sh | bash
Utilisation¶
Avec une IHM¶
sudo apt install virt-manager
virt-manager &
En ligne de commande¶
Voir blog.programster.org - KVM Cheatsheet pour utilisation du CLI virsh :
# afficher l'aide
virsh help
# lister les VM
virsh list
# lister les réseaux
virsh net-list
# lister les pools de stockage
virsh pool-list
Création d'une VM¶
Warning
- genisoimage et mkpasswd sont installés s'ils sont absent
- Le dossier
/var/lib/libvirt/disksest créé et utilisé pour le stockage des disques.
Le script kvm/create-ubuntu-server.sh illustre :
- Le téléchargement d'une image ubuntu cloud
- La copie sous forme d'un disque redimensionné avec qemu-img
- La génération d'un disque cloud-init au format ISO avec genisoimage
- Le démarrage de la VM à l'aide de virt-install
# Créer une VM node-1
curl -sS https://mborne.github.io/outils/kvm/create-ubuntu-server.sh | UBUNTU_PASSWORD=ChangeIt VM_NAME=node-1 bash
# Vérifier qu'elle est démarrée
virsh list
# Inspecter les fichiers
virsh vol-list disks --details
# Se connecter
virsh console node-1
# Pour supprimer la VM :
virsh destroy node-1
virsh undefine node-1
# Pour supprimer ses données :
rm -rf /var/lib/libvirt/disks/node-1.*