Comment Créer des Machines Virtuelles sous Linux en Utilisant KVM (Kernel-based Virtual Machine) – Partie 1

Create Virtual Machines in Linux Using KVM – Part 1

Ce tutoriel discute de l’introduction à KVM, du déploiement et de comment l’utiliser pour créer des machines virtuelles sous les distributions basées sur RedHat telles que RHEL/CentOS7 et Fedora 21.

Qu’est-ce que KVM?

KVM ou (Kernel-based Virtual Machine) est une solution de virtualisation complète pour Linux sur du matériel Intel 64 et AMD 64 qui est incluse dans le noyau Linux principal depuis la version 2.6.20 et est stable et rapide pour la plupart des charges de travail.

Caractéristiques de KVM

Il existe de nombreuses fonctionnalités et avantages utiles que vous obtiendrez lorsque vous utiliserez KVM pour déployer votre plate-forme virtuelle. L’hyperviseur KVM prend en charge les fonctionnalités suivantes:

  1. Surallocation : Ce qui signifie allouer plus de processeurs ou de mémoire virtualisés que les ressources disponibles sur le système.
  2. Provisionnement mince : Ce qui permet l’allocation de stockage flexible et optimise l’espace disponible pour chaque machine virtuelle invitée.
  3. Régulation des E/S disque : Fournit la possibilité de définir une limite sur les demandes E/S disque envoyées depuis les machines virtuelles vers la machine hôte.
  4. Équilibrage automatique NUMA : Améliore les performances des applications s’exécutant sur des systèmes matériels NUMA.
  5. Capacité d’ajout à chaud de CPU virtuel : Fournit la possibilité d’augmenter la puissance de traitement au besoin sur des machines virtuelles en cours d’exécution, sans interruption.

Ceci est notre première série en cours sur KVM (Kernel-based Virtual Machine), nous couvrirons ici les articles suivants de manière progressive.

Part 1: How to Create Virtual Machines in Linux Using KVM (Kernel-based Virtual Machine)

Prérequis

Assurez-vous que votre système dispose des extensions de virtualisation matérielles. Pour les hôtes basés sur Intel, vérifiez que l’extension de virtualisation CPU [vmx] est disponible en utilisant la commande suivante.

[root@server ~]# grep -e 'vmx' /proc/cpuinfo
Check Virtualization Support

Pour les hôtes basés sur AMD, vérifiez que l’extension de virtualisation CPU [svm] est disponible.

[root@server ~]# grep -e 'svm' /proc/cpuinfo
Check CPU Virtualization Support

S’il n’y a pas de sortie, assurez-vous que les extensions de virtualisation sont activées dans le BIOS. Vérifiez que les modules KVM sont chargés dans le noyau, « ils devraient être chargés par défaut ».

[root@server ~]# lsmod | grep kvm

La sortie doit contenir kvm_intel pour les hôtes basés sur Intel ou kvm_amd pour les hôtes basés sur AMD.

Check KVM Kernel Module

Avant de commencer, vous aurez besoin du compte root ou d’un utilisateur non root avec des privilèges sudo configurés sur votre système et assurez-vous également que votre système est à jour.

[root@server ~]# yum update

Assurez-vous que Selinux soit en mode Permissive.

[root@server ~]# setenforce 0

Étape 1 : Installation et déploiement de KVM

1. Nous allons d’abord installer les paquets qemu-kvm et qemu-img. Ces paquets fournissent le KVM au niveau utilisateur et le gestionnaire d’image disque.

[root@server ~]# yum install qemu-kvm qemu-img

2. Maintenant, vous avez les exigences minimales pour déployer une plateforme virtuelle sur votre hôte, mais nous disposons également d’outils utiles pour administrer notre plateforme, tels que:

  1. virt-manager fournit un outil GUI pour administrer vos machines virtuelles.
  2. libvirt-client fournit un outil CL pour administrer votre environnement virtuel, cet outil est appelé virsh.
  3. virt-install fournit la commande « virt-install » pour créer vos machines virtuelles à partir de l’interface CLI.
  4. libvirt fournit les bibliothèques côté serveur et hôte pour interagir avec les hyperviseurs et les systèmes hôtes.

Installons ces outils ci-dessus en utilisant la commande suivante.

[root@server ~]# yum install virt-manager libvirt libvirt-python libvirt-client 

3. Pour les utilisateurs de RHEL/CentOS7, ayant également des groupes de paquets supplémentaires tels que : Client de virtualisation, Plateforme de virtualisation et Outils de virtualisation à installer.

[root@server ~]#yum groupinstall virtualization-client virtualization-platform virtualization-tools	

4. Le démon de virtualisation qui gère l’ensemble de la plateforme est « libvirtd« . redémarrons-le.

[root@server ~]#systemctl restart libvirtd

5. Après avoir redémarré le démon, vérifiez son état en exécutant la commande suivante.

[root@server ~]#systemctl status libvirtd  
Sortie d’exemple
libvirtd.service - Virtualization daemon 
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled) 
   Active: active (running) since Mon 2014-12-29 15:48:46 EET; 14s ago 
 Main PID: 25701 (libvirtd) 
Check Libvirtd Status

Maintenant, passons à la section suivante pour créer nos machines virtuelles.

Étape 2 : Créer des VMs en utilisant KVM

Comme mentionné précédemment, nous avons quelques outils utiles pour gérer notre plateforme virtuelle et créer des machines virtuelles. L’un de ces outils s’appelle [virt-manager] que nous utilisons dans la section suivante.

6. Bien que virt-manager soit un outil basé sur une interface graphique, nous pouvons également le lancer/démarrer depuis le terminal ainsi que depuis l’interface graphique.

[root@server ~]#virt-manager
Utilisation de GNOME
Start Virtual Manager in GNOME
Utilisation de GNOME Classic
Start Virtual Manager in GNOME Classic

7. Après avoir démarré l’outil, cette fenêtre apparaîtra.

Start Virtual Manager Window

8. Par défaut, vous constaterez que le gestionnaire est connecté directement à localhost, heureusement vous pouvez utiliser le même outil pour gérer un autre hôte à distance. Dans l’onglet “Fichier”, sélectionnez simplement “Ajouter une connexion” et cette fenêtre apparaîtra.

Add Connection

Cochez l’option « Se connecter à l’hôte distant » puis fournissez le nom d’hôte/adresse IP du serveur distant. Si vous avez besoin d’établir une connexion à l’hôte distant à chaque démarrage du gestionnaire, cochez simplement l’option « Connexion automatique« .

9. Revenons à notre hôte local, avant de créer une nouvelle machine virtuelle, vous devez décider où seront stockés les fichiers?! En d’autres termes, vous devez créer le Volume Disque (Disque virtuel / Image disque) pour votre machine virtuelle.

En faisant un clic droit sur l’hôte local et en sélectionnant « Détails« , puis sélectionnez l’onglet « Stockage« .

VM Storage Details
VM Storage Volume

10. Ensuite, appuyez sur le bouton « Nouveau Volume« , puis saisissez le nom de votre nouveau disque virtuel (Volume Disque) et saisissez la taille que vous souhaitez/dont vous avez besoin dans la section « Capacité maximale« .

Create VM Storage Disk

La taille d’allocation est la taille réelle de votre disque qui sera allouée immédiatement à partir de votre disque physique après avoir terminé les étapes.

Note: Ceci est une technologie importante dans le domaine de l’administration du stockage appelée « provisionnement mince« . Elle est utilisée pour allouer uniquement la taille de stockage utilisée, PAS toute la taille disponible.

Par exemple, vous avez créé un disque virtuel de taille 60G, mais vous n’avez réellement utilisé que 20G, en utilisant cette technologie, la taille allouée à partir de votre disque dur physique sera de 20G et non de 60G.

En d’autres termes, la taille physique allouée sera allouée de manière dynamique en fonction de la taille réellement utilisée. Vous pouvez trouver plus d’informations en détail sur VMWare vStorage Thin Provisioning.

11. Vous remarquerez qu’une étiquette du nouveau disque de volume est apparue dans la liste.

VM Storage Label

Vous devriez également remarquer le chemin de l’image du nouveau disque (Volume Disk), par défaut il se trouvera sous /var/lib/libvirt/images, vous pouvez le vérifier en utilisant la commande suivante.

[root@server Downloads]# ls -l /var/lib/libvirt/images
-rw-------. 1 root root 10737418240 Jan  3 16:47 vm1Storage.img

12. Maintenant, nous sommes prêts à créer notre machine virtuelle. Appuyons sur le bouton « VM » dans la fenêtre principale, cette fenêtre d’assistant apparaîtra.

Create New Virtual Machine

Sélectionnez la méthode d’installation que vous utiliserez pour créer la machine virtuelle. Pour l’instant, nous utiliserons le support d’installation local, nous discuterons des autres méthodes plus tard.

13. Il est maintenant temps de spécifier quel support d’installation local doit être utilisé, nous avons deux options:

  1. À partir du [CDROM/DVD] physique.
  2. À partir de l’image ISO.

Pour notre tutoriel, utilisons la méthode de l’image ISO, vous devez donc fournir le chemin de votre image ISO.

Select Installation Media

Important: Malheureusement, il y a un bug vraiment stupide pour ceux qui utilisent RHEL/CentOS7. Ce bug vous empêche d’installer en utilisant le [CDROM/DVD] physique, vous verrez que l’option est grisée comme ceci.

Disabled CD DVD Rom in KVM

Et si vous maintenez votre curseur dessus, ce message d’erreur apparaîtra.

CD DVD Not Supported in KVM

Jusqu’à présent, il n’y a pas de solution officielle/directe pour ce bogue, vous pouvez trouver plus d’informations à ce sujet sur https://bugzilla.redhat.com.

14. Le stockage est revenu, nous utiliserons le disque virtuel que nous avons créé précédemment pour installer la machine virtuelle dessus. Ce sera comme indiqué.

Enable Storage for Virtual Machine

15. La dernière étape vous demande le nom de votre machine virtuelle et d’autres options avancées dont nous parlerons plus tard.

Enter Name of Virtual Machine

Si vous souhaitez modifier certaines configurations ou effectuer des personnalisations, cochez l’option « Personnaliser la configuration avant l’installation« . Ensuite, cliquez sur terminer et attendez quelques secondes, la console de contrôle apparaîtra pour votre système d’exploitation invité afin de le gérer

Virtual Machine Installation

Conclusion

Maintenant, vous avez appris ce qu’est KVM, comment gérer votre plateforme virtuelle à l’aide d’outils graphiques, comment déployer une machine virtuelle avec celui-ci et d’autres choses impressionnantes.

Bien que ce ne soit pas la fin de l’article, dans nos prochains articles, nous discuterons d’autres sujets importants liés à KVM. Mettez vos mains dans le cambouis en utilisant les connaissances précédentes et soyez prêt pour la prochaine partie…

Source:
https://www.tecmint.com/install-and-configure-kvm-in-linux/