Chap 1 Virtualisation PDF
Chap 1 Virtualisation PDF
Chap 1 Virtualisation PDF
1. Préambule
Un serveur est un ordinateur utilisé à distance depuis différents postes de travail, ou autres serveurs. Il
possède des ressources matérielles, principalement CPU, mémoire, disques et interfaces réseau. Ces
ressources sont utilisées par des applications, non pas de manière directe, mais en s’appuyant sur un
système d’exploitation. La virtualisation de serveurs est un ensemble de techniques et d’outils
permettant de faire tourner plusieurs systèmes d’exploitation sur un même serveur physique. Le
principe de la virtualisation est donc un principe de partage : les différents systèmes d’exploitation se
partagent les ressources du serveur. Pour être utile de manière opérationnelle, la virtualisation doit
respecter deux principes fondamentaux :
La transparence implique la compatibilité: toutes les applications peuvent tourner sur un système
virtualisé, et leur fonctionnement n’est en rien modifié. Pour ce qui est du cloisonnement, il existe bien
sûr une interférence passive liée à la concurrence dans le partage des ressources. Mais nous verrons
que ce partage peut être parfaitement contrôlé.
1.2 Historique
La virtualisation est « l’ensemble des technologies matérielles et/ou logicielles qui permettent
de faire fonctionner sur une seule machine plusieurs systèmes d’exploitation et/ou plusieurs
applications, séparément les uns des autres, comme s’ils fonctionnaient sur des machines
physiques distinctes ». La virtualisation consiste à intercaler une couche d’abstraction entre un
client et un fournisseur au sens large du terme. Pour mieux comprendre les architectures de
virtualisation dans le contexte d’un système d’information, il est intéressant d’en connaître
l’historique.
Le besoin de partager les ressources physiques pour une utilisation optimale est bien sûr
d’autant plus fort que ces ressources sont coûteuses, et c’était donc un domaine de recherche
important dès les débuts de l’informatique transactionnelle. La capacité à gérer plusieurs
utilisateurs simultanément, en séparant leurs contextes de travail, est apparue dès les années
70, et s’est généralisée dans les années 80 avec les grands moniteurs transactionnels, tels que
CICS.
Chaque utilisateur dialogue avec le serveur de manière indépendante, comme s’il était seul, et
utilise donc une petite part des ressources du serveur, selon son besoin. Néanmoins, cette
séparation de contextes utilisateurs, que l’on retrouve bien sûr aujourd’hui avec les serveurs
HTTP et les outils serveurs d’application du web, n’est pas appelée virtualisation. En effet, si
le contexte applicatif est propre à chaque utilisateur, le contexte logiciel est au contraire
parfaitement homogène.
IBM figure parmi les pionniers de ces technologies avec l’hyperviseur CM/CMS utilisé dès
les années 60, qui fut le père de VM/CMS dans les années 70, devenu aujourd’hui z/VM, qui
permet de faire tourner y compris AIX ou Linux au sein d’une machine virtuelle sur
mainframe. Dans la seconde moitié des années 1990, le monde de la micro-informatique
découvre les émulateurs. La puissance des machines x86 leur permet d'émuler les générations
précédentes de machines.
Il devient alors possible d'émuler des machines Atari, Amiga, Amstrad ainsi que de
nombreuses consoles. A la fin des années 1990 la société VMware développe et popularise le
produit du même nom, système propriétaire de virtualisation logicielle des architectures de
type Intel x86, ouvrant la possibilité de mettre en place n'importe quel environnement x86 à
des fins de tests ou de développement sans avoir besoin d'acheter une nouvelle machine.
Contrairement aux émulateurs cités précédemment, il est enfin possible de faire tourner les
applications professionnelles destinées aux processeurs x86 dans une machine virtuelle. Il faut
citer aussi aux rangs des précurseurs, Qemu, créé par Fabrice Bellard, qui a ouvert la voie et
sur lequel se sont appuyées la plupart des solutions open source. Viennent ensuite les logiciels
libres comme Xen, KVM, et OpenVZ, que nous décrirons plus en détail dans ce document. Et
pour finir les logiciels orientés poste de travail comme VMware Player ou VirtualBox ont
achevé la popularisation de la virtualisation dans le monde x86.
2 Un hyperviseur
L’hyperviseur est la couche logicielle qui s’insère entre le matériel et les différents systèmes
d’exploitation. C’est bien un composant clé, que l'on retrouve dans la plupart des technologies
de virtualisation de bas niveau. Ainsi, par rapport au schéma de base d’un serveur distinguant
le matériel, le système d’exploitation, et ses applications :
Le gros avantage de ce type d'hyperviseur, c'est qu'il permet d'allouer la quasi-totalité des
ressources disponibles aux machines virtuelles, car celui-ci est directement relié à la couche
matérielle. Cela est très utile lorsqu'il s'agit de virtualiser de gros serveurs (type Exchange)
demandant de conséquentes ressources pour fonctionner correctement.
A contrario, un seul hyperviseur de ce type peut être installé sur une machine physique. Ainsi,
si vous décidez de virtualiser beaucoup de machines, ou des machines demandant un nombre
de ressources conséquents, il faudra disposer d'une machine physique disposant d'une
puissance équivalente à l'intégralité des machines virtualisées, ou prévoir plusieurs machines
physiques avec d'autres hyperviseurs.
La plupart du temps, les hyperviseurs de type 2 sont utilisés pour virtualiser des OS afin de
procéder à des tests de compatibilité et/ou de sécurité.
A contrario, celui-ci n'étant pas relié directement au matériel mais s'exécutant sur un OS déjà
présent sur la machine physique (qui consomme donc déjà des ressources), la quantité de
ressources pouvant être allouée aux machines virtualisées est moindre que sur un hyperviseur
de type 1.
OS hôte, OS invité
Dans le cas d'un hyperviseur de type 2, on appelle « OS hôte » ou Host OS, l’OS sous-jacent,
sur lequel s’appuie l’hyperviseur. On appelle « OS invité » ou Guest OS, les OS des machines
virtuelles.
Notons que cette technologie consiste en quelque sorte à généraliser la notion de "contexte"
Unix : ce dernier isole les processus (mémoire, accès aux ressources), on ajoute alors : une
isolation des périphériques (c'est le rôle de l'isolateur), voire leur partage, les systèmes de
fichiers donc les fichiers eux-mêmes et leurs accès.
Cette solution est très performante, du fait du peu d'overhead (chute de performance
conséquente de l'ajout des couches de virtualisation), mais les environnements virtualisés ne
sont pas complètement isolés, ils partagent en particulier le code du noyau. Cette solution est
aussi remarquablement économique en mémoire par conséquence de la dernière remarque.
On voit bien que l’isolation ne peut être utilisée pour virtualiser tout un système
d’exploitation, mais en contre partie, il offre des performances supérieures. Autre limitation :
les isolateurs sont surtout disponibles pour les systèmes linux. Quelques isolateurs :
Dans cette situation, un noyau tourne comme une application dans l’espace utilisateur, ce qui
lui donne son propre espace mémoire à gérer et lui permet le contrôle des applications. Cette
méthode de virtualisation n’est pas très performante du fait que le système invité n’est pas
tout à fait indépendant du système hôte. D’autre part, les deux noyaux empilés dans un même
système physique ce qui rend les deux systèmes fortement dépendants.
Un hyperviseur de type 1 est comme un noyau système très léger et optimisé pour gérer les
accès des noyaux d'OS invités à l'architecture matérielle sous-jacente. Si les OS invités
fonctionnent en ayant conscience d'être virtualisés et sont optimisés pour ce fait, on parle
alors de para-virtualisation (méthode indispensable sur Hyper-V de Microsoft et qui augmente
les performances sur ESX de VMware par exemple).
Les solutions qui se partagent le marché sont (en ordre décroissant de taux de pénétration du
marché) :
VMware ESX : c’est un produit mature qui fait partie d’une offre globale visant à
virtualiser les moyens informatique de l’entreprise. C’est un hyperviseur pour
plateforme x86.
Xen : hyperviseur initialement développé par l’université de Cambridge, il a été acheté
par Citrix. Xen utilise un noyau léger supportant des noyaux linux, plan9,
NetBSD…etc.
Microsoft Hyper-V : intégré à Windows Server 2008 (version 64 bits uniquement)
3.5 Matériel
Dans ces architectures matérielles, le support de la virtualisation est intégré au processeur ou
bien est assisté par ce dernier. Ceci permet de gagner en performances en minimisant la partie
logiciel de la virtualisation.
Les exemples les plus connus du marché :
Hyperviseur IBM Power & Micro-partitionnement AIX
Mainframes : VM/CMS
Sun E10k/E15k
HP Superdome
AMD-V (Assistance à la virtualisation de AMD, anciennement Pacifica)
Intel VT (Assistance à la virtualisation de Intel, anciennement Vanderpool)
4 Les domaines d’application
Regrouper plusieurs serveurs physiques sous-employés sur un seul hôte qui exécute
des systèmes virtuels ;
Réduire la surface au sol, la consommation électrique, le besoin de climatisation et le
nombre d'administrateurs ;
Réaliser des économies (locaux, consommation électrique, personnel).
Figure 1.8 : Virtualisation des serveurs
La virtualisation des postes de travail est l’évolution logique de la virtualisation des serveurs.
Le poste de travail se résume à une machine virtuelle disponible sur un serveur localisé au
sein du centre de données. Les utilisateurs ne font que de se connecter à cette machine
virtuelle, généralement via des terminaux légers.
La figure 4.2, illustre le concept décrit ci-dessus. Nous pouvons distinguer, au centre, un
poste de travail virtuel situé au sein du centre de données. L’utilisateur peut accéder à cette
station par le biais de tout type de client. La station de travail contient, quant à elle, tant les
applications que les données, mais également les paramétrages propres à l’utilisateur.
De manière générale, la virtualisation des réseaux consiste à partager une même infrastructure
physique (débit des liens, ressources CPU des routeurs,...) au profit de plusieurs réseaux
virtuels isolés. Un VLAN (Virtual Local Area Network) est un réseau local regroupant un
ensemble de machines de façon logique et non physique. Puisqu’un VLAN est une entité
logique, sa création et sa configuration sont réalisées de manière logicielle et non matérielle.
Les réseaux virtuels de niveau 1, appelés réseaux virtuels par port (port-based VLAN):
ils définissent un réseau virtuel en fonction des ports de raccordement sur le
commutateur (switch). Ainsi, chaque port du commutateur est associé à un réseau
virtuel, indépendamment de la machine qui y est physiquement raccordée. Le principal
inconvénient d’un VLAN de niveau 1 est sa rigidité : si une station se raccorde
physiquement au réseau par l’intermédiaire d’un autre port du commutateur, alors il
est nécessaire de reconfigurer ce commutateur afin de réintégrer la station dans le bon
réseau virtuel.
Les réseaux virtuels de niveau 2, appelés réseaux virtuels par adresse MAC (MAC
address-based VLAN) : ils consistent à définir un réseau virtuel sur base des adresses
MAC des stations. Une adresse MAC est un identifiant unique implémenté dans
chaque adaptateur réseau. Ce type de VLAN est beaucoup plus souple que le
précédent car il est indépendant de la localisation de la machine.
Les réseaux virtuels de niveau 3.
On distingue
principalement deux types de VLAN de niveau3 :
Les réseaux virtuels par adresse de sous-réseau (Network address-based VLAN) : ils
déterminent les réseaux virtuels sur base de l’adresse IP source des segments. Ce type de
réseau virtuel est très flexible puisque les commutateurs adaptent automatiquement leur
configuration lorsqu’une station est déplacée.
Dans ce cas, les réseaux virtuels sont créés sur base des protocoles utilisés (TCP/IP, IPX,...) et
les stations sont regroupées en réseaux virtuels suivant le protocole qu’elles utilisent.
Une réduction du traffic de diffusion, puisque celui-ci est à présent contenu au sein de
chaque réseau virtuel ;
Une sécurité accrue puisque l’information est encapsulée dans une couche
supplémentaire ;
Une meilleure flexibilité puisqu’une modification de la structure des réseaux peut être
réalisée en modifiant la configuration du commutateur.
L’arrivée des serveurs haute performance a soulevé un problème fondamental avec le modèle “une
application par serveur” : son inefficacité. Dédier un serveur moderne à une application unique risque
d'impliquer la sous-utilisation de ce serveur. En réalité, beaucoup de sociétés pensent que leurs
serveurs utilisent entre 5 % et 25 % de leur capacité totale. Par conséquent, une quantité importante
des ressources informatiques est inexploitée.
Les ressources d’un serveur physique pouvant être partagées entre plusieurs VM, les serveurs peuvent
être conçus de manière à optimiser leur capacité : un serveur qui fonctionnait à seulement 10 % de sa
capacité peut fonctionner à 85 % de sa capacité s'il est virtualisé. En outre, la virtualisation permet
également aux PME de simplifier leurs infrastructures. Les anciennes et nouvelles applications qui se
basent sur différents systèmes d’exploitation peuvent toutes être exécutées sur le même matériel
physique. Combinés, ces facteurs apportent aux sociétés un grand nombre d’avantages substantiels,
tels que :
la réduction des coûts de l’énergie : la consolidation des charges de travail signifie qu’un
nombre réduit de serveurs devra être alimenté. Cela peut donner lieu à une réduction des
coûts d’une valeur située entre 300 $ et 600 $ par an pour chaque serveur retiré de
l’infrastructure, frais de refroidissement inclus.
la réduction des coûts immobiliers : la virtualisation permettant de réduire la base du serveur
installé, l’encombrement sera également réduit.
la réduction des frais de gestion : la virtualisation permet aux entreprises de reconsidérer et
restructurer radicalement leurs opérations informatiques. Le temps qui, auparavant, était
consacré à des tâches de routine, telles que l’approvisionnement et la maintenance, peut-être
redirigé vers d’autres domaines, ce qui permet aux équipes informatiques de se concentrer sur
des problématiques commerciales.
l'amélioration de la flexibilité et de la réactivité : le déploiement d’un serveur physique prend
du temps : le serveur doit être commandé, connecté au réseau, et l’ensemble logiciel
nécessaire doit être installé et configuré. La connexion d’un serveur virtuel à Internet est
néanmoins un processus beaucoup plus simple et plus rapide, qui peut être accompli en
quelques minutes seulement, ce qui permet au service informatique de répondre aux besoins
commerciaux beaucoup plus rapidement.
l'amélioration de la disponibilité et de la continuité d’activité : étant donné que les VM
peuvent être connectées à Internet en quelques minutes seulement et être déplacées d’un
serveur physique à un autre sans temps d’arrêt, la virtualisation peut pratiquement supprimer
le besoin de maintenance des fenêtres et le temps d’arrêt imprévu, assurant la pleine
disponibilité des applications clés qui pilotent une activité. Bien que la consolidation du
serveur soit souvent considérée comme le principal moteur et avantage de la virtualisation,
l’amélioration de la disponibilité est néanmoins tout aussi importante.
Chapitre 2: La Virtualisation de Stockage
Ce qu’il faut retenir de ce système de stockage est qu’il n’utilise pas un réseau de stockage.
En effet, sur le schéma précédent, on peut apercevoir que le serveur est connecté directement
avec la baie de stockage par le biais d’un adaptateur de stockage.
JBOD est l’abréviation de « juste un paquet de disques ». En d’autres termes, les disques sont
présentés à un serveur comme s’ils étaient directement attachés afin d’augmenter la capacité
de stockage. Les boîtiers JBOD sont généralement des boîtiers externes relativement simples
à utiliser et connectés à un ou plusieurs serveurs via des connexions SAS ou eSATA.
Il est alors possible de combiner les disques physiques du serveur avec les baies JBOD afin
de créer un pool de stockage dans lequel on pourra former un ou plusieurs disques virtuels qui
seront par la suite présentés aux hôtes qui verront cet espace de stockage comme leur propre
disque.
Figure 2.2 – Fonctionnement JBOD
Le stockage en réseau (NAS) est un type de périphérique de stockage de fichiers dédié qui
fournit aux nœuds de réseau local (LAN) un stockage partagé basé sur des fichiers via une
connexion Ethernet standard. Un avantage important du NAS est sa capacité à fournir
plusieurs clients sur le réseau l’accès aux mêmes fichiers. Avant l’arrivée du NAS, les
entreprises disposaient généralement de centaines, voire de milliers de serveurs de fichiers
distincts devant être configurés et gérés séparément.
Les périphériques NAS sont généralement dépourvus de clavier ou d’écran, ils sont
configurés et gérés avec un programme utilitaire basé sur un navigateur. Chaque NAS réside
sur le réseau local en tant que nœud de réseau indépendant et possède sa propre adresse IP.
Les périphériques NAS intègrent le support de multiples systèmes de fichiers réseau, tels que
Common Internet File System (CIFS) protocole de partage de Microsoft et de Samba,
Network File System (NFS) qui est un protocole de partage de fichiers Unix, ou encore AFP
(AppleShare File Protocol) qui est l’équivalent pour la technologie Apple.
L’accès au NAS se fait alors en mode fichier à travers les systèmes de fichiers en masquant
les dépendances vis-à-vis de l’emplacement où les données sont physiquement stockées.
Un réseau de stockage (SAN) est un réseau dédié permettant de mutualiser les ressources de
stockage. Il se différencie des autres systèmes de stockage tels que le NAS par un accès aux
disques en mode bloc. Dans le cas du SAN, les baies de stockage n’apparaissent pas comme
des volumes partagés sur le réseau : en effet, elles sont directement accessibles en mode bloc
par le système de fichiers des serveurs en introduisant un niveau d’abstraction entre le serveur
et le système de stockage, ce qui donne plus de flexibilité aux administrateurs. En clair,
chaque serveur voit l’espace disque d’une baie SAN auquel il a accès comme son propre
disque dur. Il faut ainsi définir très précisément les LUNs, le masking et ler zoning pour qu’un
serveur Windows n’accède pas aux mêmes ressources qu’un serveur Unix utilisant un
système de fichiers différent. L’un des avantages du SAN est l’évolutivité de l’espace de
stockage. L’espace disque n’est plus limité par les caractéristiques des serveurs, et est évolutif
à volonté par l’ajout de disques ou de baies de stockage sur le SAN. L’espace de stockage
physique mutualisé pour les serveurs permet ainsi d’optimiser la gestion des disques. Des
protocoles sont utilisés pour le transit des données sur le réseau SAN. Les plus courants étant
Fibre Channel, iSCSI et Fibre Channel sur Ethernet (FCoE).
Les débits sur un réseau SAN en technologie Fibre Channel peuvent atteindre 32Gbit/s
(précédemment 1Gbit/s, 2, 4, 8 et 16) par lien en fibre optique, et assure le fait que la requête
envoyée par un serveur a bien été reçue et prise en compte par les systèmes de stockage. Un
autre avantage du SAN est qu’il peut également assurer la redondance du stockage, c’est-à-
dire l’accessibilité au système de stockage en cas de panne de l’un de ses éléments, en
doublant au minimum chacun des éléments du système (haute disponibilité). De plus, il peut
fonctionner dans un environnement complètement hétérogène et donc le système
d’exploitation des serveurs n’a aucune importance.
Figure 2.5 – Exemple d’accès de deux serveurs à une baie de disque par deux fabrics
3.2.1 iSCSI (Internet Small Computer System Interface) iSCSI est un protocole de stockage
en réseau basé sur leprotocole IP destiné à relier les installations de stockage de données. Le
protocole iSCSI encapsule des commandes SCSI dans des paquets TCP, puis les transmet sur
le réseau Ethernet aux périphériques de stockage. Celui-ci permet aux clients (appelés
initiateurs) d’envoyer des commandes SCSI (CDB) à des périphériques de stockage SCSI
(cibles) sur des serveurs distants. Il s’agit d’un protocole utilisé sur les réseaux SAN qui
permet de rassembler les ressources de stockage dans un centre de données tout en donnant
l’illusion que le stockage est local. Contrairement au Fibre Channel qui nécessite une
infrastructure matérielle dédiée, iSCSI peut s’utiliser en conservant une infrastructure
existante.
Fibre Channel est un autre protocole de stockage correspondant à la couche de transport sous-
jacente que les SAN utilisent pour transmettre des données. C’est le langage utilisé par les
HBA (Host Bus Adapter), les switchs et les contrôleurs d’une baie de stockage à l’intérieur
d’un SAN pour communiquer entre eux. Le protocole Fibre Channel est un langage de bas
niveau, ce qui signifie qu’il est simplement utilisé comme un langage entre le matériel réel et
non les applications qui s’exécutent dessus. De plus, il peut fonctionner sur de la paire
torsadée, du câble coaxial ou de la fibre optique, l’interconnexion entre les types de support
étant réalisée par des modules standardisés dits « GLM » (Global Link Module). Trois
topologies différentes sont utilisées pour le Fibre Channel :
en boucle (Arbitrated LoopouFC-AL) : Ici, tous les périphériques sont reliés pour
former une boucle, ce qui permet de relier davantage d’objets entre eux, il est
également possible de doubler la boucle voire d’y ajouter un ou plusieurs hub, pour
pallier la défaillance d’un périphérique ;
« switchée » ou « commutée » (fabric) : Dans cette architecture, on utilise un switch
Fibre Channel, dont le principe de fonctionnement est similaire au switch Ethernet.
Le terme Fabric désigne ici l’ensemble des switchs.
RAID signifiant regroupement redondant de disques indépendants est une technologie utilisée
pour augmenter les performances et/ou la fiabilité du stockage de données. Un système RAID
est constitué de deux ou plusieurs disques fonctionnant en parallèle. Ces disques peuvent être
des disques mécaniques (SATA, SAS), ou flash comme les SSD (Solid State Drive) qui
offrent des performances de vitesse de lecture et d’écriture accrue mais un cycle de vie
inférieur comparé à un disque dur mécanique. Il existe différents niveaux RAID, chacun
optimisé pour une situation spécifique. Le logiciel permettant d’exécuter la fonctionnalité
RAID et de contrôler les disques peut soit tout simplement être un pilote propre au système
d’exploitation, ou soit se trouver sur une carte contrôleur séparée (un contrôleur RAID
matériel). Les contrôleurs RAID matériels coûtent plus cher que les logiciels RAID qui sont
généralement gratuits et intégrés aux OS, mais ils offrent également de meilleures
performances. Les systèmes RAID peuvent de plus être utilisés avec un certain nombre
d’interfaces, notamment SCSI, SATA ou FC (Fibre Channel). Seront présentés 3 niveaux de
RAID les plus populaires :
2.3.1 RAID 0
Dans un système RAID 0, les données sont divisées en blocs et sont écrites sur tous les
disques de la baie. En utilisant plusieurs disques (au minimum 2) en même temps, cela offre
des performances d’écriture et de lecture supérieures. La capacité totale est égale à celle du
disque le plus petit * le nombre de disque, il est donc conseillé d’utiliser des disques de même
capacité.
Figure 2.7 – RAID 0
Les avantages du RAID 0 sont ainsi les meilleures performances à la fois lecture et écriture.
Toute la capacité de stockage est utilisée pour obtenir de meilleurs résultats et cette
technologie est facile à mettre en œuvre. 20 Cependant, le RAID 0 n’est pas tolérant aux
pannes. Si un disque tombe en panne, toutes les données des disques en RAID 0 sont perdues.
Il ne devrait pas être utilisé pour des systèmes critiques.
2.3.2 RAID 1
Ce niveau de RAID requiert 2 disques et repose sur un simple système de mirroring. Les
données d’un disque sont recopiées en intégralité sur un second disque qui assure une copie
complète de ses données en cas de panne du premier disque. Pour que le RAID 1 puisse être
mis en place, il faut que le second disque ait une capacité au minimum équivalente à celle du
premier disque.
Le RAID 1 offre donc une vitesse de lecture et d’écriture comparable à celle d’un seul
disque. En cas de panne d’un disque, il n’est pas nécessaire de reconstruire les données, il
suffit de les copier sur le disque de remplacement. Le principal inconvénient est que la
capacité de stockage effective ne représente que la moitié de la capacité totale du disque car
toutes les données sont écrites deux fois. Les solutions logicielles RAID 1 ne permettent pas
toujours un remplacement à chaud (hot swap) d’un disque défectueux. Cela signifie que le
disque défectueux ne peut être remplacé qu’après la mise hors tension de l’ordinateur auquel
il est attaché. Pour les serveurs utilisés simultanément par de nombreuses personnes, cela peut
s’avérer compliqué. C’est pourquoi ces systèmes utilisent généralement des contrôleurs
matériels prenant en charge le remplacement à chaud.
2.3.3 RAID 5
RAID 5 est le niveau RAID sécurisé le plus courant. Il requiert au moins 3 disques, mais
peut-être utilisé jusqu’à 16.
Les blocs de données sont répartis sur les disques et, sur un des disques, une somme de parité
de toutes les données du bloc est écrite. Les données de parité ne sont pas écrites sur un
disque fixe, mais sont plutôt réparties sur tous les disques, comme le montre le schéma ci-
dessous. En utilisant les données de parité, il est alors possible de recalculer les données de
l’un des autres blocs de données si elles ne sont plus disponibles. Cela signifie qu’une
configuration en RAID 5 peut supporter une seule panne de disque sans perte de données.
Bien qu’il est possible de configurer des disques en RAID 5 au niveau logiciel, un contrôleur
matériel est recommandé. Souvent, la mémoire cache supplémentaire est utilisée sur ces
contrôleurs pour améliorer les performances d’écriture.
2.3.1 La Réplication
Une condition sine qua non à la mise en place d’une synchronisation adéquate des données
consiste à connaître parfaitement ces dernières, en particulier leur volume et leur taux de
changement. Il convient également de sélectionner convenablement de système de stockage.
Les solutions de réplication peuvent en effet être intégrées au contrôleur d’une baie mais
peuvent également se présenter sous forme logicielle.
Ce type de réplication est prévu pour faire en sorte que la correspondance entre les données
présentes sur la première baie (source) et la seconde (cible) soient parfaite, et ce, à tout
moment. Il s’agit donc d’une réplication « en temps réel ».
Ce mode de réplication ne transmet pas les données en temps réel mais à intervalle régulier, se
contentant dès lors d’une bande passante moins importante.
2.2 La Déduplication
Les snapshots, ou instantanés, sont des copies en lecture seule correspondant à l’état d’un
système (des données y relatives) à un instant précis. Par état, nous entendons un état
consistant des données à un instant T. Il ne s’agit pas d’une sauvegarde à part entière puisque
les données initiales sont nécessaires pour restaurer un système à partir d’un instantané. Ce
cliché peut toutefois être restauré à un autre emplacement que celui d’origine, ce qui peut
s’avérer intéressant pour créer un clone d’une machine virtuelle ou pour effectuer des tests
applicatifs. L’instantané est un excellent moyen de sécuriser les données et constitue
d’ailleurs la base de certaines stratégies de sauvegarde. En effet, il est tout à fait possible de
prendre des instantanés à intervalle régulier durant la journée et de les externaliser sur un support de
stockage distant (un NAS, par exemple).