Comment créer des machines virtuelles sous Linux à l’aide de KVM (Kernel-based Virtual Machine) - Partie 1
Ce tutoriel traite de l’introduction et du déploiement de KVM et de la façon de l’utiliser pour créer des machines virtuelles sous des 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 qui est stable et rapide pour la plupart des charges de travail.
KVM Feautres
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 :
- Sur-engagement : Ce qui signifie allouer plus de processeurs ou de mémoire virtualisés que les ressources disponibles sur le système.
- Thin provisioning : qui permet d’allouer un stockage flexible et d’optimiser l’espace disponible pour chaque machine virtuelle invitée.
- Limitation des E/S de disque : permet de définir une limite sur les demandes d’E/S de disque envoyées par les machines virtuelles à la machine hôte.
- Équilibrage automatique NUMA : Améliore les performances des applications exécutées sur les systèmes matériels NUMA.
- Capacité d’ajout à chaud de processeur virtuel : permet d’augmenter la puissance de traitement selon les besoins sur les machines virtuelles en cours d’exécution, sans temps d’arrêt.
Il s’agit de notre première série KVM (Kernel-based Virtual Machine) en cours, nous allons couvrir ici les articles suivants en partie par exemple.
Conditions préalables
Assurez-vous que votre système dispose des extensions de virtualisation matérielle : pour les hôtes Intel, vérifiez que l’extension de virtualisation du processeur [vmx] est disponible à l’aide de la commande suivante.
[root@server ~]# grep -e 'vmx' /proc/cpuinfo
Pour les hôtes AMD, vérifiez que l’extension de virtualisation du processeur [svm] est disponible.
[root@server ~]# grep -e 'svm' /proc/cpuinfo
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 « il doit être chargé par défaut ».
[root@server ~]# lsmod | grep kvm
La sortie doit contenir kvm_intel pour les hôtes Intel ou kvm_amd pour les hôtes basés sur amd.
Avant de commencer, vous aurez besoin du compte root ou de l’utilisateur non root avec les 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 est en mode permissif.
[root@server ~]# setenforce 0
Étape 1 : Installation et déploiement de KVM
1. Nous installerons d’abord les packages qemu-kvm et qemu-img. Ces packages fournissent le KVM au niveau de l’utilisateur et le gestionnaire d’images disque.
[root@server ~]# yum install qemu-kvm qemu-img
2. Maintenant, vous avez la configuration minimale requise pour déployer une plateforme virtuelle sur votre hébergeur, mais nous avons également toujours des outils utiles pour administrer notre plateforme tels que :
- virt-manager fournit un outil d’interface graphique pour administrer vos machines virtuelles.
- libvirt-client fournit un outil CL pour administrer votre environnement virtuel, cet outil appelé virsh.
- virt-install fournit la commande « virt-install » pour créer vos machines virtuelles à partir de l’interface de ligne de commande.
- 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 à l’aide de la commande suivante.
[root@server ~]# yum install virt-manager libvirt libvirt-python libvirt-client
3. Pour les utilisateurs de RHEL/CentOS7, ils ont également toujours des groupes de packages supplémentaires tels que : Client de virtualisation, Plate-forme 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
Exemple de sortie
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)
Passons maintenant à la section suivante pour créer nos machines virtuelles.
Étape 2 : Créer des machines virtuelles à l’aide de KVM
Comme nous l’avons mentionné au début, nous disposons d’outils utiles pour gérer notre plateforme virtuelle et créer des machines virtuelles. L’un de ces outils appelé [virt-manager] que nous utilisons dans la section suivante.
6. Bien que virt-manager soit un outil basé sur l’interface graphique, nous pourrions également le lancer/démarrer à partir du terminal ainsi que de l’interface graphique.
[root@server ~]#virt-manager
Utilisation de GNOME
Utilisation de GNOME Classic
7. Après avoir démarré l’outil, cette fenêtre apparaîtra.
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.
Cochez l’option « Se connecter à l’hôte distant » puis indiquez le nom d’hôte/IP du serveur distant. Si vous avez besoin d’établir une connexion à l’hôte distant à chaque fois que le gestionnaire démarre, il suffit de cocher l’option « Connexion automatique ».
9. Revenons à notre localhost, avant de créer une nouvelle machine virtuelle, vous devez décider où les fichiers seront stockés ?! en d’autres termes, vous devez créer le disque de volume (disque virtuel/image disque ) pour votre machine virtuelle.
En faisant un clic droit sur localhost et en sélectionnant « Détails », puis sélectionnez l’onglet « Stockage ».
10. Ensuite, appuyez sur le bouton « Nouveau volume », puis entrez le nom de votre nouveau disque virtuel (Volume Disk) et entrez la taille que vous voulez/avez besoin dans la section « Capacité maximale ».
La taille d’allocation est la taille réelle de votre disque qui sera alloué immédiatement à partir de votre disque physique une fois les étapes terminées.
Remarque : Il s’agit d’une technologie importante dans le domaine de l’administration du stockage appelée « thin provision « . Auparavant, il allouait uniquement la taille de stockage utilisée, et non la totalité de la taille disponible.
Par exemple, vous avez créé un disque virtuel avec une taille de 60G, mais vous n’avez en fait 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 dynamiquement en fonction de la taille réelle utilisée. Vous trouverez 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.
Vous devriez également remarquer le chemin de la nouvelle image disque (Volume Disk), par défaut il sera sous /var/lib/libvirt/images, vous pouvez le vérifier à l’aide de 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.
Sélectionnez la méthode d’installation que vous utiliserez pour créer la machine virtuelle. Pour l’instant, nous utiliserons un support d’installation local, plus tard nous discuterons des méthodes restantes.
13. Il est maintenant temps de spécifier quel support d’installation local utiliser :
- À partir d’un [CD-ROM/DVD] physique.
- À 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.
Important : Malheureusement, il y a un bug vraiment stupide pour qui utilise RHEL/CentOS7. Ce bogue vous empêche d’installer à l’aide d’un [CDROM/DVD] physique, vous constaterez que l’option est grisée comme ceci.
Et si vous maintenez votre curseur dessus, ce message d’erreur apparaîtra.
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 de retour, nous utiliserons le disque virtuel que nous avons créé tôt pour installer la machine virtuelle dessus. Ce sera comme indiqué.
15. La dernière étape qui vous interroge sur le nom de votre machine virtuelle et une autre option avancée permet d’en reparler plus tard.
Si vous souhaitez modifier une configuration ou faire une personnalisation, il vous suffit de cocher l’option « Personnaliser la configuration avant l’installation ». Cliquez ensuite sur terminer et attendez quelques secondes, la console de contrôle apparaîtra pour que votre système d’exploitation invité puisse le gérer
Conclusion
Vous avez maintenant appris ce qu’est KVM, comment gérer votre plate-forme virtuelle à l’aide d’outils GUI, comment déployer une machine virtuelle à l’aide de celui-ci et d’autres choses impressionnantes.
Bien que ce ne soit pas la fin de l’article, dans nos prochains articles, nous aborderons d’autres sujets importants liés à KVM. Mettez-vous les mains dans le cambouis en utilisant les connaissances précédentes et soyez prêt pour la prochaine partie.....



















