• Aucun résultat trouvé

B´ en´ efices pour les entreprises

2.2 Isolation par la virtualisation

2.2.3 B´ en´ efices pour les entreprises

Malgr´e le surcoˆut d’ex´ecution induit (3%[27]) par les syst`emes de virtualisation actuels, la virtualisation offre plusieurs avantages aux entreprises qui en font l’usage. Nous remarquons dans la litt´erature, qu’il existe un amalgame entre les apports tech- nologiques de la virtualisation et les cons´equences de ces apports dans une entreprise. Dans cette section, nous ´evitons de faire cet amalgame.

Le tour est vite fait lorsqu’il s’agit de trouver les apports techniques de la virtua- lisation dans le domaine des syst`emes (en tant que domaine de recherche) : il s’agit essentiellement de l’isolation. Pr´esent´e de cette fa¸con, d’aucuns compareront cette isolation `a celle d´ej`a propos´ee par les syst`emes d’exploitation pour les processus. En r´ealit´e, le v´eritable apport est la capacit´e `a isoler l’ex´ecution de plusieurs syst`emes d’exploitation (et non processus) dans le mˆeme syst`eme d’exploitation. En raison du rapprochement avec certains objectifs du CC, l’isolation propos´ee par la virtualisa- tion se d´ecline ´egalement sous plusieurs formes identiques au CC (voir la section4.1

pour leurs descriptions).

Les atouts de la virtualisation peuvent se traduire sous plusieurs formes en en- treprise. Les b´en´efices possibles sont les suivants :

R´eduction des coˆuts. Au lieu d’acqu´erir plusieurs serveurs mat´eriels pour l’ex´e- cution de logiciels incapables de cohabiter, l’entreprise utilise des machines virtuelles afin d’isoler chaque logiciel. Pour les mˆemes raisons que le CC, cette ex´ecution re- group´ee permet ´egalement de r´eduire les coˆuts en consommation ´electrique, ou encore en superficie des locaux qui abritent les serveurs. Un atout concerne les d´eveloppeurs de syst`emes d’exploitation. Au lieu de d´edier une machine pour la r´ealisation des tests, les d´eveloppeurs peuvent se servir des machines virtuelles.

Unit´e de facturation. Dans un centre d’h´ebergement, au lieu d’utiliser une machine enti`ere comme unit´e d’allocation, la virtualisation permet d’allouer une fraction de machine aux clients. Cet atout est notamment exploit´e dans certaines plateformes de cloud.

Sauvegarde de services. Dans certaines applications, la robustesse fait partie des premiers crit`eres d’´evaluation. Elle se caract´erise par la capacit´e du syst`eme `a reprendre son activit´e dans un ´etat proche de la normale (c-`a-d avant la panne) en cas de panne d’un des serveurs. La virtualisation permet de sauvegarder p´eriodique- ment l’´etat d’ex´ecution d’une VM et de la red´emarrer en cas de n´ecessit´e `a partir d’un point de sauvegarde. Cette op´eration est appel´ee checkpointing dans le jargon de la virtualisation.

Transfert de services. Nous entendons par transfert de services la possibilit´e de d´eplacer l’ex´ecution d’un service d’une machine r´eelle `a une autre sans inter- ruption. Cette caract´eristique est permise dans la virtualisation via des op´erations de ”migration `a chaud”. Elle permet d’exploiter les ressources d’une machine r´eelle sous-utilis´ee par un service en cours d’ex´ecution sur une machine r´eelle sur-utilis´ee. Inversement, elle permet de consolider sur un nombre r´eduit de machines, des ser- vices en cours d’ex´ecution sur plusieurs machines sous utilis´ees. Notons que tous Syst`eme d’administration autonome adaptable : application au Cloud

2.2. ISOLATION PAR LA VIRTUALISATION 19 les syst`emes de virtualisation ne fournissent pas ce service. De plus leur efficacit´e d´epend de la technique d’impl´ementation utilis´ee.

2.2.4

Classification

Face `a la difficult´e de mise en œuvre du mod`ele de virtualisation propos´e ini- tialement (virtualisation compl`ete du mat´eriel), `a cause de la non compatibilit´e des drivers mat´eriels, plusieurs techniques de virtualisation se sont d´evelopp´ees. Am´elio- r´ees au fil des ann´ees, les techniques d’impl´ementation de syst`emes virtuels peuvent ˆetre regroup´ees en diff´erentes cat´egories selon le rapprochement/´eloignement entre la VM et le mat´eriel. La figure2.4 recense les cat´egories majeures que nous pr´esentons bri`evement dans cette section. Le sens des fl`eches dans cette figure repr´esente cette ´evolution chronologique. La pr´esentation que nous donnons dans cette section suit ´egalement cet ordre. Ainsi le d´eveloppement des syst`emes les plus r´ecents se justi- fie par les inconv´enients des pr´ed´ecesseurs. Notons que certains termes employ´es ici peuvent se retrouver dans la litt´erature avec des descriptions diff´erentes.

Virtualisation du syst`eme de fichiers (figure 2.4(a)). C’est une m´ethode qui repose sur un syst`eme d’exploitation pr´e-install´e (syst`eme hˆote). Ce dernier permet de construire des espaces utilisateurs (d´esignation de la VM ici) dont les sys- t`emes de fichiers sont compl`etement isol´es. Chaque VM dispose d’une arborescence de syst`eme de fichiers `a exclusif qui lui est propre. Les autres ressources telles que la m´emoire, les cartes r´eseaux, le processeur sont directement accessibles par les VM. Il n’existe aucune isolation pour ces ressources. On retrouve dans cette cat´egorie des outils chroot ou UML (User Mode Linux) [uml].

L’´emulation (figure 2.4(b)). La cat´egorie pr´ec´edente ne permettant pas l’ins- tallation d’OS, il s’est d´evelopp´e une technologie bas´ee sur l’´emulation. Cette tech- nique propose une application (le virtualisateur) qui s’ex´ecute au-dessus du syst`eme hˆote, dans l’espace utilisateur. Cette application (qui correspond `a la VMM) a pour mission d’´emuler le mat´eriel et permet ainsi de d´emarrer plusieurs syst`emes d’ex- ploitation r´eels dans l’espace utilisateur. Cette technique de virtualisation induit un surcoˆut consid´erable dans l’ex´ecution des machines virtuelles. En effet, chaque op´e- ration effectu´ee dans la VM est intercept´ee et interpr´et´ee par la VMM. Le syst`eme de virtualisation VirtualBox [VirtualBox.org] est bas´e sur cette technique.

Paravirtualisation (figure 2.4(c)). La paravirtualisation a ´et´e d´evelopp´ee pour r´esoudre les probl`emes de la cat´egorie pr´ec´edente. Elle consiste `a modifier les OS des VM afin qu’ils soient au courant de leur statut (de VM). Ainsi, le mat´eriel est mapp´e dans la VM et donc accessible directement sous le contrˆole de la VMM (hyperviseur sur la figure2.4(c)). Cette derni`ere s’ex´ecute directement au-dessus du mat´eriel. Elle remplace l’OS hˆote, qui est consid´er´e comme une VM. La contrainte de modification d’OS des VM est une limite `a cette technique. En effet, elle ne permet pas l’ex´ecution de VM munies d’OS propri´etaires (comme Windows). La plateforme

2.2. ISOLATION PAR LA VIRTUALISATION 20 Xen [23] est le syst`eme de paravirtualisation le plus r´epandu grˆace au niveau de performance qu’il offre [27]. Les travaux de cette th`ese sont notamment bas´es sur ce syst`eme.

Virtualisation assist´ee par le mat´eriel (figure2.4(d)). L’´evolution actuelle des drivers mat´eriels et des processeurs (technologie Intel VT [Corporation]) vers la prise en compte de la virtualisation permet de d´evelopper une nouvelle technique de virtualisation. Ainsi, l’intervention de la VMM sur les actions des VM est limit´ee et celles-ci n’ont plus besoin d’ˆetre modifi´ees. Les nouvelles impl´ementations de Xen ou VMware [VMware.org] permettent d’utiliser cette technique lorsque le mat´eriel le supporte.

Figure 2.4 – Techniques de virtualisation