I - La virtualisation et le cloud computing
1) La virtualisation
Depuis quelques années, les entreprises s’intéressent de plus en plus aux technologies de virtualisation. Bien que ce concept ne soit pas nouveau, de nombreuses solutions sont actuellement mises en œuvre autour de la virtualisation.
a) Définition de la virtualisation
La virtualisation est un ensemble de techniques matérielles et/ou logicielles qui autorisent l’exécution de plusieurs applications indépendantes sur une même machine hôte. Grâce à la virtualisation, il est possible d’exécuter plusieurs systèmes d’exploitation (OS invité) sur un même serveur (Figure 1). Ainsi, il n’est plus nécessaire d’utiliser un serveur par application. On parle souvent d’environnement virtuel (Virtual Environment – VE) ou de serveur privé virtuel (Virtual Private Server – VPS) lorsqu’une machine exploite la virtualisation. Pour bénéficier de cette technologie, il suffit d’équiper une machine d’un logiciel de virtualisation permettant d’ajouter une couche de virtualisation, appelée hyperviseur. Cet hyperviseur masque les véritables ressources physiques de la machine afin de proposer des ressources différentes et spécifiques en fonction des applications qui tournent. Il y a donc une totale indépendance entre le matériel et les applications. Le logiciel de virtualisation simule autant de machines virtuelles que de systèmes d’exploitation souhaité. Chaque OS croit alors qu’il est installé seul sur une machine alors qu’en réalité, plusieurs OS peuvent fonctionner en parallèle en partageant les mêmes ressources.
Figure 1 : Les différentes couches d’un serveur virtualisé
![Figure 1](fig1.png)
b) Les différents types de virtualisation
Figure 2 : Les différents types de virtualisation (Source)
![Figure 2](fig2.png)
Le schéma (Figure 2) ci-dessus montre un aperçu des principaux types de virtualisation. La virtualisation système a pour rôle de virtualiser un système d’exploitation. On peut distinguer deux catégories :
- Les systèmes non-modifiés : c’est le type de virtualisation le plus utilisé aujourd’hui. VMware, VirtualPc, VirtualBox et bien d’autres appartiennent à cette catégorie. On distingue la virtualisation matérielle assistée de la virtualisation totale car cette dernière est améliorée grâce aux processeurs Intel-V et AMD-V qui implantent la virtualisation matérielle dans leurs produits.
- Les systèmes modifiés : la virtualisation nécessite de modifier et d’adapter le noyau d’un système (Linux, BSD, Solaris). On parle alors de paravirtualisation.
Contrairement à la virtualisation système, la virtualisation processus ne virtualise pas l’intégralité d’un système d’exploitation mais uniquement un programme particulier au sein de son environnement.
Enfin, il y a l’émulation qui est une imitation du comportement physique d’un matériel par un logiciel.
c) Evolution de la virtualisation
Le concept de virtualisation est apparu autour des années 1960 lorsque des entreprises telles que IBM ont souhaité partitionner les ressources des mainframes (un mainframe ou ordinateur central est un ordinateur de grande puissance de traitement).
La virtualisation a perdu tout son intérêt dans les années 1980 – 1990 bien que certains projets comme Amiga, SideCar ou encore Enplant ont essayé d’exploiter cette technologie. En effet, durant cette période, les systèmes client-serveur sont à la mode. Mais les problèmes de protection en cas de panne ainsi que le coût important de la maintenance des serveurs et des stations clientes seront des limites pour cette architecture à deux niveaux.
Au milieu des années 1990, les émulateurs connaissent un réel succès (ordinateurs Atari, Amiga ; consoles NES).
Ce n’est qu’au début des années 2000 que la virtualisation devient célèbre grâce à la société VMware qui développe des logiciels pour des serveurs de type x86.
En 2003 apparait la paravirtualisation avec Xen.
A partir de 2005, les fabricants de processeurs Intel et AMD implantent la virtualisation matérielle dans leurs produits.
En 2007, les machines virtuelles KVM (Kernel-based Virtual Machine) débarquent sur Linux.
Jusqu’alors, la virtualisation était utilisée pour tester des systèmes d’information avant leur déploiement.
A partir de 2007 arrive la virtualisation 2.0. Cette seconde génération a pour objectif de consolider les applications de production.
En 2008, Microsoft met sur le marché son logiciel de virtualisation Hyper-V.
Depuis peu, le monde informatique connait une nouvelle mutation avec la virtualisation 3.0, utilisée principalement dans les technologies liées au cloud computing et à la gestion automatisée des déploiements internes.
d) Les acteurs de la virtualisation
Actuellement, le leader mondial de la virtualisation est VMware avec plus de 65% de parts de marché grâce à ses solutions d’hyperviseurs comme ESX/ESXi et grâce à VSphere qui sert à déployer des infrastructures cloud de façon plus aisée. Le géant Microsoft ne se retrouve qu’en deuxième position, loin derrière VMware avec environ 27% de part de marché grâce à Hyper-V qui constitue sa solution de virtualisation intégrée de base à Windows server 2008 R2. Avec 6% de parts de marché, Citrix se place en troisième position derrière Microsoft, sa solution quant à elle est l’hyperviseur XenServer qui diffère des deux solutions suscitée car elle repose sur la technologie de la para-virtualisation au lieu de reposer sur la virtualisation totale. Il y a également d’autres acteurs comme Parallels ou Red Hat. Spécifions à présent les fonctionnalités des deux principaux acteurs en commençant par la solution de VMware.
VMware ESX/ESXi
Figure 4 : Comparaison des fonctionnalités des versions d'ESX (Source)
![Figure 4](fig4.png)
Microsoft Hyper-V R2
Figure 5 : Comparatif des fonctionnalités de virtualisation pour les différentes versions de Windows Server 2008 (Source)
![Figure 5](fig5.jpg)
e) Les objectifs de la virtualisation
L’un des objectifs clés de la virtualisation est la réduction des coûts. Cette réduction s’explique par la mutualisation des ressources qui permet de diminuer d’une part les besoins en matériel et de réduire d’autre part la consommation d’énergie électrique. De plus, le regroupement de plusieurs serveurs sur une même machine physique est sans perte de performance. En effet, la plupart des serveurs en entreprise n’exploitent qu’environ 10 à 15 % des ressources matérielles (Figure 6). La virtualisation offre également un déploiement et une migration facile des machines virtuelles d’une machine physique à une autre. L’administration des serveurs et des postes de travail devient aussi plus aisée.
Figure 6 : Taux d’utilisation des serveurs (Source)
![Figure 6](fig6.png)