Serveur de virtualisation KVM avec CentOS et console graphique distante : #1 Installation
Rédigé par Xavier - -
Les habitués de VMware et compagnie sont habitués à faire tourner des serveurs dédiés à la virtualisation et à utiliser une console graphique depuis une autre machine. KVM, qui est la solution de virtualisation la plus avancée dans le monde Linux et grandement développée par Red Hat, permet de faire cela aussi.

L'objectif de cet article sera de présenter les différentes couches utilisées, ainsi que la mise en place de notre serveur et de sa console distante en environnement CentOS.
Prérequis
Matériel :
- 1 serveur disposant d'un processeur compatible 64 bits disposant des instructions de virtualisation (VT-x ou AMD-v).
- Un deuxième ordinateur qui servira de console distante
- Une mise en réseau fonctionnelle
Compétences requises :
- Savoir installer CentOS
- Savoir configurer le réseau sur CentOS (se reporter éventuellement à cet article)
Présentation des logiciels
CentOS : Le système d'exploitation GNU/Linux populaire en entreprise, copie conforme de RHEL : RedHat Enterprise Linux. Son succès s'explique tout d'abord par ses origines (RedHat), sa durée de support (10 ans), la stabilité/fiabilité et la possibilité d'avoir des applications certifiées sur RHEL.
KVM/qemu : KVM est basé sur QEMU et en pratique les différences sont importantes mais peu nombreuses. Selon les distributions, KVM peut être considéré comme un composant de QEMU ou comme un logiciel à part entière. Les deux sont des machines virtuelles mais KVM permet d'utiliser les instructions de virtualisation VT-x et AMD-v mais aussi de recourir à la paravirtualisation (VirtIO). QEMU se défend en proposant d'émuler des architectures "exotiques" comme l'ARM mais cela n'offre aucun intérêt dans notre cas.
libvirt : Toutes les machines virtuelles (qemu, virtualbox...) fonctionnent différemment mais libvirt est une API qui permet d'utiliser des commandes standardisées.
virt-manager : C'est une surcouche graphique pour libvirt. Cela permet de gérer nos machines virtuelles en quelques clics mais aussi et surtout la configuration du réseau.

Installation de CentOS côté serveur
A l'écran de sélection des jeux de logiciels, vous pouvez sélectionner "Virtual Host", ce qui installera tous les paquets nécessaires.

Une fois l'installation finalisée, il ne vous reste qu'à booter et configurer le réseau. Vous pouvez éventuellement mettre à jour le système avec la commande :
# yum update
Installation de CentOS côté console
Cette fois, le jeu de logiciels à sélectionner est "Minimal Desktop". Cela vous permettra d'avoir l'interface graphique.

Après avoir booté vous remplirez un petit formulaire pour créer un compte utilisateur. En arrivant sur le bureau (Gnome 2) ne manquez pas de configurer le réseau à l'aide de l'applet Network-Manager. Là aussi vous pouvez mettre le système à jour en utilisant yum dans un terminal ou en attendant que packagekit le propose.
Configuration côté Serveur
Il n'y a rien à faire, tout est installé et libvirt se lance par défaut au démarrage (on peut le vérifier avec la commande chkconfig).
Configuration côté console
Ouvrez le terminal (Applications > Outils système > Terminal) puis installez libvirt et virt-manager :
# yum install libvirt virt-manager # chkconfig --level 3 libvirtd on # chkconfig --level 5 libvirtd on # service libvirtd start
Ouvrez ensuite virt-manager (Applications > Outils système > Gestionnaire de machines virtuelles). Au premier démarrage, l'application va prendre un peu de temps et vous dire que Qemu/KVM n'est pas installé en local. Ce n'est pas grave, n'en demandez pas l'installation.

Allez dans le menu Fichier > Ajouter une Connexion.
- Hyperviseur: QEMU/KVM
- Connexion: Tunnel distant à travers SSH
- Nom de l'hôte: IP du SERVEUR
- Connexion automatique: à voir.
Au bout de quelques secondes, le mot de passe root du serveur vous sera demandé, il suffit de l'entrer. Il peut se dérouler plusieurs secondes pendant lesquelles la console affiche "Connecting".

Lorsque "Connecting" disparaît et qu'aucun message d'erreur ne vient s'afficher, la connexion est effective.

L'installation est terminée, rendez-vous un peu plus tard pour la découverte de virt-manager et la mise en place d'une machine virtuelle.