KVM fait référence à la machine virtuelle basée sur le noyau qui permet d'exécuter plusieurs invités isolés Linux ou basés sur des fenêtres avec leur propre système d'exploitation et matériel virtuel dédié. Pour exécuter KVM, votre système doit être compatible avec les extensions de virtualisation matérielle, telles que AMD-V ou Intel-VT.
Le modèle de machine virtuelle est une copie de la machine virtuelle, y compris la configuration spécifique de la machine virtuelle ainsi que le système d'exploitation invité. Si vous avez besoin de déployer plusieurs machines virtuelles de la même instance, la création d'une machine virtuelle à l'aide d'un modèle est pratique, ce qui joue un rôle énorme dans le gain de temps et de stockage.
Ce didacticiel vous montre comment créer un modèle de machine virtuelle à partir de la machine virtuelle existante sur KVM. Dans cet article, l'installation de KVM et la création de modèles de système d'exploitation Linux sont effectuées sur le système Ubuntu 20.04. Avant de poursuivre le processus, vous êtes pré-demandé de préparer le système avec KVM installé dessus.
Création d'une machine virtuelle KVM
Tout d'abord, assurez-vous que le démon libvirtd est en cours d'exécution sur votre système. Sinon, utilisez la commande systemctl pour démarrer et activer le démon.
$ sudo systemctl start libvirtd
$ sudo systemctl enable libvirtd
Vérification de l'état du démon libvirtd,
$ sudo systemctl status libvirtd
Si votre système actuel est Ubuntu/Debian, activez le module noyau vhost-net à l'aide de la commande suivante.
$ sudo modprobe vhost_net
Pour créer le modèle, nous avions d'abord besoin d'avoir une instance d'installation sur le système. Nous allons créer des images KVM 15 G centos 8 à l'aide de la commande qemu-img indiquée ci-dessous.
$ sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos8.qcow2 15G
Ensuite, créez la machine virtuelle à l'aide de la commande virt-install mentionnée ci-dessous. J'utiliserai CentOS 8 pour le système d'exploitation invité, mais vous pouvez utiliser n'importe quelle autre distribution. Veillez simplement à ajuster le chemin de l'image ISO contenant le système d'exploitation à installer (/home/janak/Downloads/CentOS-8.4.2105-x86_64-boot.iso) pour qu'il corresponde au chemin du système d'exploitation que vous souhaitez installer. dans la machine virtuelle.
$ sudo virt-install --virt-type kvm --name centos8 --ram 2048 \ --disk /var/lib/libvirt/images/centos8.qcow2,format=qcow2 \ --network network=default \ --graphics vnc,listen=0.0.0.0 --noautoconsole \ --os-type=linux --os-variant=rhel7.0 \ --cdrom=/home/janak/Downloads/CentOS-8.4.2105-x86_64-boot.iso
Dans la commande ci-dessus, remplacez le paramètre de l'option –cdrom par votre image iso centos téléchargée. Ensuite, la commande installera et exécutera la machine virtuelle dans votre KVM, alors ouvrez votre KVM à l'aide de virt-manager.
$ sudo virt-manager
Une fois que vous avez ouvert le KVM, vous pouvez voir que votre VM est en cours d'exécution. Ouvrez donc la VM, le système commencera le processus de démarrage et vous pourrez voir la page de configuration initiale suivante des centos. Ensuite, suivez le processus de configuration et terminez la configuration.
Création d'un modèle de machine virtuelle dans KVM
Une fois la configuration terminée, connectez-vous à votre système, mettez à jour votre système et installez tous les packages de base et requis.
Pour mettre à jour les informations sur les packages dans le référentiel système, utilisez :
$ sudo yum update -y
Installez quelques packages de base que vous jugez nécessaires. Dans mon cas, j'ai installé les packages suivants.
$ sudo yum install curl epel-release unzip telnet wget -y
Ensuite, désactivez la route zeroconf. Zeroconf est la méthode de mise en réseau pour communiquer entre deux ordinateurs et leur permettre de partager les ressources de l'autre. Il utilise le protocole Internet (IP) pour établir la communication entre deux ordinateurs.
$ echo "NOZEROCONF=yes" | sudo tee -a /etc/sysconfig/network
Maintenant, éteignez votre machine virtuelle pour poursuivre le processus.
$ sudo poweroff
Dans votre terminal normal, exécutez la commande virt-sysprep suivante pour nettoyer l'instance. Le virt-sysprep est l'utilitaire de ligne de commande pour reconfigurer ou réinitialiser la machine virtuelle afin de la rendre clonable.
$ sudo virt-sysprep -d centos8
Dans la commande, centos8 fait référence au nom de votre machine virtuelle d'installation. Remplacez-le donc par le nom de votre machine virtuelle si vous en avez une autre. Si virt-sysprep n'est pas installé sur votre système, vous pouvez l'installer à l'aide de la commande ci-dessous.
$ sudo apt update
$ sudo apt install libguestfs-tools
Enfin, exécutez la commande virsh undefined domain suivante pour supprimer la configuration de la machine virtuelle invitée.
$ sudo virsh undefine centos8
Félicitations, votre modèle a été créé. Vous pouvez maintenant cloner et déployer de nombreuses instances multiples de celui-ci.
Conclusion
Merci d'avoir lu cet article. Dans cet article, nous créons la machine virtuelle et apprenons comment créer le modèle pour en créer plusieurs instances et le déployer.