GNU/Linux >> Tutoriels Linux >  >> Linux

Comment créer et gérer des machines virtuelles KVM via la ligne de commande

KVM (Kernel based Virtual Machine) est une technologie de virtualisation open source conçue pour les machines Linux. Il comprend un module de noyau - kvm.ko qui fournit la plate-forme de virtualisation principale et un module spécifique au processeur ( kvm-intel.ko pour les processeurs Intel ou kvm-amd.ko pour les processeurs AMD ).

Il existe deux manières de créer des machines virtuelles à l'aide de KVM. Vous pouvez tirer parti de l'outil virt-manager qui est un serveur X11 qui fournit une interface graphique pour créer des machines virtuelles. De plus, vous pouvez utiliser la ligne de commande pour créer une machine virtuelle en définissant divers paramètres associés à la machine virtuelle que vous souhaitez déployer.

Nous avons déjà un guide élaboré sur la façon d'installer des machines virtuelles KVM à l'aide de l'interface graphique sur Ubuntu. Dans ce guide, nous adoptons une approche différente et montrons comment vous pouvez créer une machine virtuelle KVM à partir de l'interface de ligne de commande. Nous utilisons Ubuntu 18.04, mais cela devrait fonctionner sur toutes les distributions Linux.

Étape 1) Vérifiez si la virtualisation est activée

Au début, nous devons vérifier si votre système prend en charge la technologie de virtualisation. Pour ce faire, exécutez la commande suivante.

$ egrep -c '(vmx|svm)' /proc/cpuinfo

Si votre système prend en charge la technologie de virtualisation, vous devriez obtenir une sortie supérieure à 0.

Ensuite, confirmez si votre système peut exécuter des machines virtuelles KVM.

$ kvm-ok

Si vous obtenez une erreur à l'écran, cela signifie que l'utilitaire kvm-ok n'est pas encore installé. Par conséquent, installez la commande suivante pour installer l'utilitaire kvm-ok.

$ sudo apt install -y cpu-checker

Exécutez maintenant la commande kvm-ok pour confirmer si la virtualisation KVM est prise en charge.

Étape 2) Installez KVM, Qemu, virt-manager et le démon libvirtd

L'étape suivante consiste à installer KVM et les packages associés. Alors, lancez la commande :

$ sudo apt install -y qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager

La commande installe les packages suivants.

  • qemu-kvm : il s'agit du package KVM principal qui fournit la prise en charge de la virtualisation.
  • libvirt :inclut le démon libvirtd qui prend en charge la création et la gestion de machines virtuelles.
  • libvirt-client :ce package fournit l'utilitaire virsh utilisé pour interagir avec les machines virtuelles.
  • virt-install - Un utilitaire qui vous aide à créer des machines virtuelles et à installer le système d'exploitation sur ces machines virtuelles à partir de la ligne de commande.
  • virt-viewer – Un utilitaire qui affiche la vue graphique de la machine virtuelle.

Une fois installé, nous devons confirmer si les modules kvm requis sont chargés. Par conséquent, exécutez la commande :

$ lsmod | grep kvm

De plus, confirmez que le démon libvirtd s'exécute comme suit.

$ sudo systemctl status libvirtd.service

Parfait! Tous les prérequis sont réunis. Continuons maintenant et installons une machine virtuelle.

Étape 3) Créer une machine virtuelle à partir de la ligne de commande

Nous allons installer une machine virtuelle Debian en utilisant une image iso Debian 11 située dans le dossier Téléchargements du répertoire personnel.

Pour créer la nouvelle machine virtuelle, nous allons exécuter la commande suivante.

$ sudo virt-install --name=debian-vm \
--os-type=Linux \
--os-variant=debian9 \
--vcpu=2 \
--ram=2048 \
--disk path=/var/lib/libvirt/images/Debian.img,size=15 \
--graphics spice \
--location=/home/james/Downloads/debian-11.1.0-amd64-DVD-1.iso \
--network bridge:virbr0

Prenons une minute et analysons cette commande :

  • L'attribut –name indique le nom de la machine virtuelle. N'hésitez pas à lui donner un nom arbitraire.
  • La directive –os-type spécifie le type de système d'exploitation, dans ce cas Linux.
  • L'option -os-variant spécifie les versions du système d'exploitation.

REMARQUE :  KVM fournit des options –os-variant prédéfinies et vous ne pouvez tout simplement pas créer les vôtres. Pour vérifier les différentes variantes prises en charge, exécutez la commande osinfo-query os. Cela répertorie tous les systèmes d'exploitation possibles et les variantes prises en charge. Notez également que les variantes ne coïncident pas avec votre dernière version de Linux. Dans ce cas, j'utilise debian9 au lieu de debian11, car cette dernière n'est pas fournie par KVM parmi les options de variante.

  • Ensuite, le paramètre –vcpu spécifie le nombre de cœurs de processeur à allouer à la machine virtuelle.
  • L'option –ram spécifie la quantité de RAM en mégaoctets à allouer.
  • L'option –disk path définit le chemin de l'image de la machine virtuelle. La directive –disk correspond à l'espace disque de la machine virtuelle en gigaoctets.
  • L'option –graphics spécifie l'outil graphique pour l'installation interactive, dans cet exemple, nous utilisons Spice.
  • L'option –location pointe vers l'emplacement de l'image ISO
  • Enfin, la directive –network bridge spécifie l'interface à utiliser par la machine virtuelle.

Si tout se passe bien, vous devriez obtenir une sortie comme indiqué dans l'image ci-dessus, suivie d'une fenêtre contextuelle de visionneuse virt de la machine virtuelle en attente d'installation.

Dans notre cas, nous installons Debian 11 et ceci est l'écran d'installation initial. Nous avons procédé à l'installation jusqu'à la toute fin.

Étape 4) Interagir avec les machines virtuelles

L'utilitaire virsh est un composant utilisé pour interagir avec les machines virtuelles sur la ligne de commande. Par exemple, pour afficher les machines virtuelles en cours d'exécution, exécutez la commande :

$ virsh list

Pour répertorier toutes les machines virtuelles, y compris celles qui sont hors tension, ajoutez l'option –all.

$ virsh list --all

Pour arrêter une machine virtuelle, utilisez la syntaxe :

$ sudo virsh shutdown vm_name

Par exemple, pour éteindre notre machine virtuelle, la commande sera :

$ sudo virsh shutdown debian-vm

Pour démarrer ou allumer la machine virtuelle, exécutez :

$ sudo virsh start debian-vm

Pour redémarrer la machine, exécutez la commande :

$ sudo virsh reboot debian-vm

Pour détruire ou éteindre de force une machine virtuelle, exécutez :

$ sudo virsh destroy debian-vm

Pour supprimer ou supprimer une machine virtuelle avec son fichier de disque, exécutez

a)   Arrêtez d'abord la machine virtuelle

b)   Supprimez la machine virtuelle ainsi que son fichier de stockage associé, exécutez

$ sudo virsh undefine –domain –remove-all-storage

Exemple :

$ sudo virsh undefine --domain debian-vm --remove-all-storage

Réflexions finales :

Il s'agissait d'un guide expliquant comment installer une machine virtuelle à l'aide de KVM sur la ligne de commande. Nous avons mis en évidence certaines des principales options à spécifier pour garantir le succès du déploiement de la machine virtuelle. Nous sommes également allés plus loin et avons montré comment interagir avec la machine virtuelle en ligne de commande à l'aide de l'utilitaire virsh. Ce n'étaient que quelques options, il y en a plusieurs.


Linux
  1. Comment créer un fichier sous Linux à l'aide d'un terminal/ligne de commande

  2. Comment créer un instantané de machine virtuelle KVM avec la commande Virsh

  3. Comment modifier les autorisations et les propriétaires via la ligne de commande

  4. Comment créer une base de données dans MySQL à l'aide de la ligne de commande

  5. Comment créer un alias et utiliser la commande Alias ​​sous Linux

Comment exporter et importer des machines virtuelles VirtualBox

Comment installer KVM et créer des machines virtuelles sur Ubuntu 16.04 LTS

Comment créer des machines virtuelles dans KVM à l'aide de Virt-Manager

Comment gérer les machines virtuelles dans KVM à l'aide de Virt-Manager

Comment créer et gérer des machines virtuelles dans KVM

Comment créer et gérer de nouveaux utilisateurs sous Linux