La virtualisation est un processus qui permet une utilisation plus efficace du matériel informatique et qui pose les bases du cloud computing.
Le logiciel de virtualisation crée une couche d'abstraction sur le matériel informatique qui permet aux composants matériels d'un ordinateur (processeurs, mémoire, archivage et plus encore) d'être divisés en plusieurs ordinateurs virtuels, souvent appelés machines virtuelles (VM). Chaque machine virtuelle exécute son propre système d'exploitation et fonctionne comme un ordinateur indépendant, même si elle s'exécute sur la partie matérielle sous-jacente d'un ordinateur.
Il s'ensuit que la virtualisation permet une utilisation plus efficace du matériel informatique physique et permet un meilleur retour sur l'investissement matériel d'une organisation.
Aujourd'hui, la virtualisation est une pratique courante dans l'architecture informatique des entreprises. Il s'agit également de la technologie qui pilote le modèle économique du cloud computing. La virtualisation permet aux fournisseurs de cloud de servir les utilisateurs avec leur matériel informatique existant ; elle permet aux utilisateurs du cloud d'acheter uniquement les ressources informatiques nécessaires au moment où ils en ont besoin, et de faire évoluer ces ressources de manière rentable au fur et à mesure que leur charge de travail augmente.
Pour une présentation exhaustive du fonctionnement de la virtualisation, regardez notre vidéo « La virtualisation expliquée » :
La virtualisation apporte plusieurs avantages aux opérateurs de centre de données et aux prestataires de services :
Pour une présentation plus détaillée des avantages potentiels, voir « Les 5 avantages de la virtualisation. »
Plusieurs entreprises offrent des solutions de virtualisation couvrant des tâches caractéristiques des centres de données ou des scénarios de virtualisation de bureau orientés utilisateur final. Parmi les exemples les plus connus, citons VMware, qui se spécialise dans la virtualisation de serveurs, de bureaux, de réseaux et de systèmes de stockage ; Citrix, qui se spécialise dans la virtualisation d'applications mais propose également des solutions de virtualisation de serveurs et de bureaux ; et Microsoft, dont la solution de virtualisation Hyper-V est fournie avec Windows et se concentre sur les versions virtuelles de serveurs et de bureaux.
Les machines virtuelles (VM) sont des environnements virtuels qui simulent un ordinateur physique sous la forme d'un logiciel. Elles comprennent normalement plusieurs fichiers contenant la configuration de la machine virtuelle, le stockage du disque dur virtuel, et quelques instantanés de la machine virtuelle qui maintiennent son état à un point de cohérence.
Pour une présentation exhaustive des machines virtuelles, voir « Qu'est-ce qu'une machine virtuelle ? »
Un hyperviseur est la couche logicielle qui coordonne les machines virtuelles. Il sert d'interface entre la machine virtuelle et le matériel physique sous-jacent, garantissant que chacun a accès aux ressources physiques dont il a besoin pour s'exécuter. Il garantit également que les VM n'interfèrent pas les unes avec les autres en empiétant sur leur espace mémoire ou cycle de calcul respectifs.
Il existe deux types d'hyperviseurs :
La page « Hyperviseurs : un guide complet » offre une présentation complète de tout ce qui concerne les hyperviseurs.
Jusqu'à présent, nous avons passé en revue la virtualisation de serveur, mais de nombreux autres éléments d'infrastructure informatique peuvent être virtualisés pour offrir des avantages significatifs aux responsables informatiques, en particulier, et à l'entreprise, dans son ensemble. Dans cette section, nous allons couvrir les types de virtualisation suivants :
La virtualisation de bureau vous permet d'exécuter plusieurs systèmes d'exploitation, chacun sur sa propre machine virtuelle, sur le même ordinateur.
Il existe deux types de virtualisation de bureau :
Pour plus d'informations sur les bureaux virtuels, voir « Bureau en tant que service ».
La virtualisation du réseau utilise un logiciel pour créer une « vue » du réseau qu'un administrateur peut utiliser pour gérer le réseau à partir d'une console unique. Elle extrait les éléments et les fonctions du matériel (par exemple, les connexions, les commutateurs, les routeurs, etc.) et les transforme en logiciels fonctionnant sur un hyperviseur. L'administrateur de réseau peut modifier et contrôler ces éléments sans toucher aux composants physiques sous-jacents, ce qui simplifie considérablement la gestion du réseau.
Les types de virtualisation du réseau incluent la mise en réseau définie par logiciel (SDN), qui virtualise le matériel qui contrôle l'acheminement du trafic réseau (appelé plan de contrôle), et la virtualisation de la fonction réseau (NFV), qui virtualise un ou plusieurs dispositifs matériels qui offrent une fonction réseau spécifique (par exemple, un pare-feu, un équilibreur de charge, ou un analyseur de trafic), ce qui simplifie la configuration, l'approvisionnement et la gestion de ces appareils.
La virtualisation du stockage permet d'accéder à tous les dispositifs de stockage du réseau, qu'ils soient installés sur des serveurs individuels ou sur des unités de stockage autonomes, et d'y accéder ou de les gérer comme un périphérique de stockage unique. Plus précisément, la virtualisation du stockage regroupe tous les blocs de stockage en un seul pool partagé à partir duquel ils peuvent être affectés à n'importe quelle machine virtuelle sur le réseau, selon les besoins. La virtualisation du stockage facilite la mise à disposition du stockage pour les machines virtuelles et permet d'utiliser tout le stockage disponible sur le réseau.
Pour un examen plus approfondi de la virtualisation du stockage, voir « Qu'est-ce que le stockage cloud ? »
Les entreprises modernes stockent des données qui proviennent de plusieurs applications, sous différents formats, à plusieurs endroits, allant du cloud aux systèmes matériels et logiciels sur site. La virtualisation de données permet à toute application d'accéder à l'ensemble des données, quels que soient leur source, leur format ou leur emplacement.
Les outils de virtualisation de données créent une couche logicielle entre les applications qui accèdent aux données et les systèmes qui les stockent. La couche traduit la demande ou la requête de données d'une application selon les besoins et renvoie des résultats qui peuvent couvrir plusieurs systèmes. La virtualisation de données peut permettre de briser les silos de données lorsque d'autres types d'intégration ne sont pas réalisables, souhaitables ni abordables.
La virtualisation d'applications permet d'exécuter les applications logicielles sans les installer directement sur le système d'exploitation de l'utilisateur. Cette méthode diffère de la virtualisation de bureau complète (mentionnée ci-dessus), car l'application est la seule à s'exécuter dans un environnement virtuel. Le fonctionnement du système d'exploitation de l'appareil de l'utilisateur final restant inchangé. Il existe trois types de virtualisation d'applications :
La virtualisation du centre de données transforme la plus grande partie du matériel d'un centre de données en logiciel, ce qui permet effectivement à un administrateur de diviser un centre de données physique unique en plusieurs centres de données virtuels pour différents clients.
Chaque client peut accéder à sa propre infrastructure en tant que service (IaaS), qui s'exécute sur le même matériel physique sous-jacent. Les centres de données virtuels offrent une rampe d'accès facile au cloud computing, en permettant à une entreprise de mettre rapidement en place un environnement de centre de données complet sans acheter de matériel d'infrastructure.
La virtualisation des processeurs est la technologie fondamentale qui matérialise les hyperviseurs, les machines virtuelles et les systèmes d'exploitation possibles. Elle permet à un processeur unique d'être divisé en plusieurs processeurs pour être utilisé par plusieurs machines virtuelles.
Au début, la virtualisation de processeurs était entièrement définie par logiciel, mais de nombreux processeurs actuels incluent des jeux d'instruction détaillés qui prennent en charge la virtualisation des processeurs, ce qui améliore les performances des machines virtuelles.
Une unité de traitement graphique (GPU) est un processeur multicœur spécial qui améliore les performances de calcul globales en prenant en charge le traitement complexe d'éléments graphiques ou mathématiques. La virtualisation des GPU permet à plusieurs machines virtuelles d'utiliser tout ou une partie de la puissance de traitement d'une unité de traitement graphique pour accélérer la vidéo, l'intelligence artificielle (IA) et d'autres applications à fort contenu graphique ou mathématique.
Linux inclut son propre hyperviseur, appelé machine virtuelle multinoyau (KVM), qui prend en charge les extensions de processeur de virtualisation d'Intel et de AMD, de sorte que vous pouvez créer des machines virtuelles basées sur x86 à partir d'un système d'exploitation hôte Linux.
En tant que système d'exploitation open source, Linux est hautement personnalisable. Vous pouvez créer des machines virtuelles exécutant des versions de Linux adaptées à des charges de travail spécifiques ou des versions à sécurité renforcée pour certaines applications plus sensibles.
Comme indiqué ci-dessus, le modèle de cloud computing repose sur la virtualisation. En virtualisant les serveurs, le stockage et d'autres ressources physiques du centre de données, les fournisseurs de cloud computing peuvent offrir tout un éventail de services à leurs clients, dont les suivants :
Si vous souhaitez en savoir plus à propos de ces modèles de services cloud, consultez notre guide : « Différence entre l'IaaS, la PaaS et le SaaS ».
La virtualisation de serveur reproduit un ordinateur matériel dans son ensemble, qui exécute ensuite tout un système d'exploitation complet. Le système d'exploitation exécute une seule application. Cette solution est plus efficace que l'absence totale de virtualisation, mais elle duplique le code et les services inutiles pour chaque application que vous souhaitez exécuter.
Les conteneurs adoptent une approche différente. Ils partagent un noyau du système d'exploitation sous-jacent, exécutant uniquement l'application et les éléments dont elle dépend, comme les bibliothèques logicielles ou les variables d'environnement. Par conséquent, les conteneurs sont plus petits et plus rapides à déployer.
Pour une analyse approfondie sur les conteneurs et la conteneurisation, consultez les pages Conteneurs : un guide complet et Conteneurisation : un guide complet.
Lisez l'article de blogue « Différence entre les conteneurs et les machines virtuelles » pour une comparaison plus précise.
Dans la vidéo suivante, Sai Vennam explique les bases de la conteneurisation et la compare à l'utilisation de machines virtuelles :
VMware crée un logiciel de virtualisation. VMware a commencé par proposer la virtualisation de serveurs uniquement. Son hyperviseur ESX (aujourd'hui ESXi) a été l'un des premiers produits de virtualisation à connaître un succès commercial. Aujourd'hui, VMware propose également des solutions de virtualisation de réseau, de stockage et de bureau.
Pour une analyse détaillée de tout ce qui concerne VMware, voir « VMware : Un guide complet ».
La virtualisation offre certains avantages en matière de sécurité. Par exemple, les machines virtuelles infectées par des logiciels malveillants peuvent être ramenées à un moment (appelé instantané) où elles n'étaient pas infectées et étaient stables. Elles sont également plus faciles à supprimer et à recréer. Il n'est pas toujours possible de désinfecter un système d'exploitation non virtualisé, car le logiciel malveillant est souvent profondément intégré dans les composants de base du système d'exploitation et persistant au-delà des restaurations du système.
La virtualisation présente également des défis de sécurité. Si un attaquant compromet un hyperviseur, il possède potentiellement toutes les machines virtuelles et systèmes d'exploitation invités. Parce que les hyperviseurs peuvent aussi autoriser les machines virtuelles à communiquer entre elles sans toucher au réseau physique, il peut être difficile d'afficher leur trafic et donc de détecter des activités suspectes.
Un hyperviseur de type 2 sur un système d'exploitation hôte est également susceptible d'héberger le logiciel malveillant installé sur le système d'exploitation hôte.
Le marché offre une gamme de produits pour sécuriser la virtualisation qui permettent de parcourir les machines virtuelles et d'apporter des correctifs aux logiciels malveillants, chiffrer entièrement les disques virtuels des machines virtuelles, et contrôler et effectuer un audit de l'accès aux machines virtuelles.
Modernisez en toute transparence vos charges de travail et vos applications VMware avec IBM Cloud.
Bénéficiez d'une vue unique sur des données disparates sans aucun transfert de données. Gérez les données avec moins de complexité et un faible risque d'erreur.
Simplifiez votre cloud hybride grâce à la virtualisation du stockage. Centralisez les ressources de stockage, étendez les services de données et augmentez la mobilité des données, sans mettre vos données en danger.
Une machine virtuelle est une représentation virtuelle, ou émulation, d'un ordinateur physique. La virtualisation permet de créer plusieurs machines virtuelles sur un seul ordinateur physique.
Les hyperviseurs rendent la virtualisation possible en permettant à plusieurs instances de système d'exploitation de s'exécuter côte à côte sur les mêmes ressources informatiques physiques.
Le cloud computing transforme l'infrastructure informatique en un utilitaire, vous permettant de vous connecter aux ressources informatiques et aux applications sur Internet, sans avoir à les installer et les entretenir sur site.