Même si sur le plan technique (reportez vous aux liens en bas de page), cela n'a pas beaucoup de sens, j'aime distinguer 2 cas de figure qui expliquent que l'on peut avoir recours à la virtualisation :
  • La virtualisation destinée aux postes de de travail.
  • La virtualisation destinée aux serveurs.

Postes de travail :

Sur une machine de bureau, il est souvent utile de pouvoir virtualiser une machine.
Cela permet par exemple, sans avoir à rebooter la machine, d'accéder à plusieurs systèmes d'exploitation.
A priori, il n'y a que la puissance et la capacité de votre machine (processeur(s), RAM, disques) qui peuvent limiter la quantité de machines lancées simultanément.
Le système hôte (le 1er système lancée lors du démarrage de la machine) permet de lancer les systèmes invités un peu comme on lance une application classique (sauf que l'application est un OS tout entier : Windows XP par exemple).
Par exemple :
  • Un utilisateur Linux peut lancer Windows XP (ou vice-versa).
  • Un utilisateur Windows Vista peut utiliser une machine virtuelle avec Windows XP.
  • Enfin avec l'arrivée des Mac dans le monde des processeurs Intel, un utilisateur Mac peut lancer une machine Windows.
Mais me direz-vous: « Pourquoi faire ? »
Les raisons peuvent être nombreuses. En voici simplement quelques-unes :
  • Avoir besoin de lancer une application spécifique à un système donné. Ex : je suis sous Mac et je veux lancer Microsoft Office pour travailler sur mon traitement de texte.
  • Pour les Webmestres, on peut vérifier si l'affichage des pages Web se fait correctement dans d'autres navigateurs (IE6, IE7, Firefox, Safari ...)
  • Avoir envie de tester le nouveau Windows 7 (en telechargement gratuit sur le net au moment ou j'écris ces lignes) ou la dernière version d'Ubuntu.

Mon expérience en ce domaine (qui s'étale sur plusieurs années d'utilisation) m'autorise à vous donner mon avis sur quelques solutions, classées par ordre croissant de préférence : VMware Server (gratuit), VMware Workstation (payant) et VirtualBox (gratuit).
J'ai trouvé ces 2 dernières solutions particulièrement performantes et j'utilise aujourd'hui encore régulièrement, à titre personnel et professionnel VirtualBox

Serveurs :

Sur une machine destinée à offrir des services, l'intérêt d'utiliser la virtualisation est, je pense, un peu différent, même s'il s'agit, là encore, de lancer sur la même machine physique, plusieurs OS (différents ou pas).
A mon sens, l'intérêt peut se ressentir de plusieurs manières :
  • Pouvoir cloisonner les services sur différentes machines et les isoler (en théorie complètement) les unes des autres.
  • Utiliser la puissance des machines actuelles pour faire tourner plusieurs systèmes.
  • Diminuer le nombre de machines physiques. Si une seule machine physique peut virtualiser convenablement plusieurs serveurs, quel est l'intérêt de conserver une flopée de serveurs en salle machine ? Les problèmes matériels sont divisés (moins de machines), on réalise des économies électriques ...
  • On peut utiliser plusieurs machines : une pour la production, une autre destinée aux tests ... et l'on peut facilement passer de l'une aux autres en quelques modifs.

Dans ce cas, mon expérience (plus modeste) me permet de vous conseiller 2 solutions gratuites :
  • Xen: la solution que je connais le mieux. Très performante. Une administration plutôt accessible à travers la ligne de commande. Une administration via une console est aussi, parait-il, disponible. A priori, destinée plus spécifiquement (au moins avant l'arrivée des extensions matérielles des processeurs) aux systèmes Linux.
  • VMware ESXi: la solution du numéro 1 de la virtualisation : VMware. Rendue gratuite récemment dans sa version ESXi. Une interface graphique complète et compréhensible est accessible. La stabilité mais aussi les performances ont l'air d'être au rendez-vous, même si je manque encore un peu de recul sur ce dernier point. L'utilisation de cette solution basée sur un Linux très dépouillée (peu de commandes ou services disponibles sur l'hote) est probablement un gage de sécurité. Cependant le travail d'administration du serveur s'en trouve compliqué ... sauf évidemment à utiliser des services associés, généralement payants. Enfin la liste de matériel compatible est à étudier de près avant de se lancer sur du ESXi.


Un peu de lecture :
  • Wikipédia qui explique les différentes techniques de virtualisation.
  • Misc magazine 42 de mars/avril 2009 : un périodique très intéressant qui traite de « la virtualisation : vecteur de vulnérabilité ou de sécurité ? »