Blog ENI : Toute la veille numérique !
Jusqu'à ce soir ! : -25€ dès 75€ sur les livres en ligne, vidéos... code FUSEE25. J'en profite !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici

Présentation des concepts de virtualisation

Introduction

Dans ce chapitre, nous commencerons par donner une définition générale de la virtualisation, puis nous esquisserons un bref historique de cette technologie pour mieux comprendre les problèmes qui ont mené à son développement. Étant donné que le terme « virtualisation » est utilisé dans des contextes très variés et qu’il recouvre plusieurs significations, cette rétrospective nous aidera à mieux nous situer à travers les différents domaines d’application de la virtualisation.

Après cette mise en contexte, nous présenterons les principaux types de virtualisation rencontrés aujourd’hui et nous verrons en quoi ils se distinguent de la virtualisation des serveurs qui nous intéressera spécifiquement dans cet ouvrage.

Comme l’hyperviseur et les machines virtuelles sont les deux principaux composants de la virtualisation des serveurs, nous commencerons par en donner une première définition, mais ils feront l’objet de chapitres dédiés qui nous permettront de les approfondir et d’en faire l’installation dans un environnement VMware.

Avant de donner une première définition de la virtualisation, examinons d’abord en quoi consiste le principe derrière cette technologie.

Le principe derrière la virtualisation

De la réalité virtuelle à la virtualisation

Pour comprendre le principe de la virtualisation, débutons notre parcours par une analogie qui vous est sans doute familière. Nous connaissons tous la réalité virtuelle, que ce soit pour en avoir vu une représentation fictive dans un film ou pour l’avoir expérimentée avec des casques VR.

La réalité virtuelle désigne l’ensemble des technologies qui permettent l’immersion d’un utilisateur dans un monde artificiel créé par logiciel. En d’autres termes, la réalité virtuelle « fait croire » à son utilisateur qu’il se trouve dans un monde réel.

Nous pourrions tout aussi bien nommer « virtualisation de la réalité » ces techniques qui rendent possible la simulation de la présence physique d’un utilisateur dans un environnement numérique.

Dans un film comme Matrix, par exemple, la simulation est telle qu’il devient quasiment impossible de différencier la réalité de sa forme virtuelle…

C’est le même principe qui est à l’œuvre dans la virtualisation des serveurs, mais cette fois il s’agit de créer un environnement matériel artificiel - une machine virtuelle...

Définir la virtualisation

1. Qu’est-ce que la virtualisation ?

En informatique, la virtualisation consiste à faire l’abstraction d’un composant physique sous une forme logicielle. La couche d’abstraction qui en résulte libère le composant de ses dépendances matérielles et en dissimule la complexité.

La notion d’abstraction recouvre plusieurs significations en informatique, mais dans le contexte de la virtualisation, elle désigne une représentation abstraite d’objets permettant d’unifier et de simplifier leur manipulation.

Le fait de virtualiser une ressource informatique permet d’en optimiser l’utilisation et de lui conférer de nouvelles fonctionnalités qui peuvent être définies par logiciel. Par exemple, la virtualisation appliquée à la mémoire vive, au réseau ou au stockage permet de simplifier la gestion de ces ressources et rend possibles la mutualisation et le partage de celles-ci. Nous reviendrons plus loin sur ces notions lorsque nous aborderons les hyperviseurs.

2. Trois exemples de virtualisation

Pour illustrer le concept de virtualisation, examinons de plus près trois exemples couramment utilisés :

  • la mémoire virtuelle

  • le VLAN

  • la technologie RAID

a. La mémoire virtuelle

La mémoire virtuelle (virtual memory) est une technique qui permet à un système d’exploitation d’utiliser une portion d’un support de stockage de masse tel qu’un...

La virtualisation des serveurs

Avant d’approfondir la virtualisation des serveurs, prenons un instant pour définir ce qu’est un serveur dans le contexte du présent ouvrage. Un serveur est un ordinateur (physique ou virtuel) qui fournit des services à un ou plusieurs clients. Ceux-ci peuvent être d’autres ordinateurs ou serveurs, des tablettes, des smartphones ou tout autre appareil pouvant fonctionner en réseau. 

Un serveur exécute une ou plusieurs applications pour lesquelles il reçoit des requêtes de clients qu’il peut traiter lui-même ou déléguer à d’autres serveurs. Lorsque ces demandes ont été prises en charge, le serveur retourne la réponse ou les ressources appropriées aux clients.

Ce mode de transaction se nomme « client-serveur ». Dans sa plus simple expression, ce mode consiste simplement en ce qu’un équipement ayant le rôle de « serveur » attende des requêtes d’une entité ayant le rôle de « client » et y réponde. Pour s’acquitter de ses tâches, le serveur dispose généralement de ressources de traitement supérieures à celles des clients.

Dans le contexte de la virtualisation, la notion de serveur s’applique à deux entités que nous allons détailler sous peu : les machines virtuelles et l’hyperviseur. 

1. Une représentation logicielle d’un serveur physique

La virtualisation des serveurs désigne l’ensemble des technologies qui permettent de créer une représentation logicielle (ou abstraction) des ressources matérielles d’un serveur physique (processeur, mémoire, stockage, réseau) pour rendre possible l’exécution simultanée de plusieurs machines virtuelles (Virtual Machine ou VM) sur un même serveur physique.

Une machine virtuelle est donc une représentation logicielle d’un ordinateur physique et de ses composants.

images/01EI07.png

Représentation logicielle d’un serveur physique

Dans le contexte de la virtualisation des serveurs, le système d’exploitation et les applications d’une machine virtuelle fonctionnent dans un environnement qui leur apparaît comme...

Historique de la virtualisation des serveurs

Avant de décrire les principaux types de virtualisation, une incursion dans le passé nous permettra de mieux comprendre les problèmes qui ont justifié le développement de cette technologie.

1. De la fin des années 1950 aux années 1970

a. Mainframes et mémoire virtuelle

Les technologies de virtualisation commencent à émerger à la fin des années 1950 pour résoudre un certain nombre de problèmes occasionnés par le manque de flexibilité des superordinateurs et surtout des mainframes qui domineront le marché dans les années 1960 et 1970.

En effet, les mainframes, ces ordinateurs centraux, rares et coûteux, étaient principalement déployés dans les universités, les centres de recherche ou les installations militaires.

Les mainframes présentaient deux inconvénients majeurs : en plus de disposer d’une puissance de traitement extrêmement limitée (du moins, selon les standards d’aujourd’hui), celle-ci était également sous-utilisée. Du fait de leur architecture centralisée, ils étaient très contraignants et posaient des défis complexes lorsqu’ils devaient être utilisés dans un contexte à utilisateurs multiples souhaitant exécuter plusieurs tâches simultanément.

La nécessité de développer des solutions multiutilisateurs et multitâches est au cœur de la réflexion qui a mené à l’invention de la virtualisation.

b. Des ordinateurs centraux à tâche unique

Pour se remettre dans le contexte de l’époque, imaginez-vous un instant au début des années 1960 dans un institut scientifique composé de centaines d’employés qui ne disposent que d’un seul mainframe pour traiter les programmes de tous les chercheurs.

N’oublions pas que les PC auxquels nous sommes habitués ne seront disponibles que vingt ans plus tard. En tant qu’ordinateurs individuels disposant de leurs propres ressources de traitement, les PC (Personal Computers) étaient révolutionnaires à une époque où l’informatique reposait sur un modèle...

Conclusion

La virtualisation des serveurs est une technologie de rupture qui a redéfini le mode de provisionnement des services informatiques depuis déjà plusieurs décennies. L’hyperviseur est devenu le composant central des centres de données des entreprises, mais aussi le moteur du cloud computing.

Jusqu’ici, nous avons limité notre parcours à la virtualisation des serveurs, mais nous avons déjà pu constater à quel point son fonctionnement dépend ou implique d’autres formes de virtualisation. Ces dernières se sont développés dans le sillage de la virtualisation des serveurs que nous proposons d’examiner dans le chapitre Les différents types de virtualisation.