Qu'est-ce qu'une machine virtuelle ?

Les machines virtuelles (MV) sont des ordinateurs qui fonctionnent à l'intérieur d'autres ordinateurs en recourant à un processus connu sous le nom de virtualisation.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Définition de la machine virtuelle
  • Comprendre le fonctionnement de la virtualisation et du matériel virtuel
  • Décrire plusieurs cas d'utilisation de machines virtuelles

Copier le lien de l'article

Qu'est-ce qu'une machine virtuelle ?

Une machine virtuelle (MV) est un ordinateur basé sur un logiciel qui existe dans le système d'exploitation d'un autre ordinateur, souvent utilisé pour tester, sauvegarder des données ou exécuter des applications SaaS. Pour bien comprendre le fonctionnement des MV, il est important de comprendre d'abord comment les logiciels et le matériel informatique sont généralement intégrés par un système d'exploitation.

Qu'est-ce qu'un système d'exploitation ?

Les ordinateurs traditionnels sont construits à partir de matériel physique, notamment des disques durs, des puces de processeur, des RAM, etc. Afin d'utiliser ce matériel, les ordinateurs s'appuient sur un type de logiciel appelé système d'exploitation (OS). Les systèmes d'exploitation les plus courants sont Mac OSX, Microsoft Windows, Linux et Android.

Le système d'exploitation est ce qui gère le matériel de l'ordinateur de manière à ce qu'il soit utile à l'utilisateur. Par exemple, si l'utilisateur veut accéder à Internet, le système d'exploitation demande à la carte d'interface réseau d'établir la connexion. Si l'utilisateur veut télécharger un fichier, le système d'exploitation partitionne l'espace du disque dur pour ce fichier. Le système d'exploitation exécute et gère également d'autres logiciels. Par exemple, il peut faire fonctionner un navigateur Web et lui fournir suffisamment de mémoire vive (RAM) pour qu'il fonctionne correctement.

En général, les systèmes d'exploitation existent au sein d'un ordinateur physique dans un rapport de un à un. Pour chaque machine, un seul système d'exploitation gère ses ressources physiques.

Peut-on avoir deux ou plusieurs systèmes d'exploitation sur un même ordinateur ?

Il est possible d'exécuter plusieurs systèmes d'exploitation sur un seul ordinateur. Cela est possible grâce à un processus appelé virtualisation. Dans la virtualisation, un logiciel se comporte comme s'il s'agissait d'un ordinateur indépendant. Ce logiciel s'appelle une machine virtuelle, également connue sous le nom d'ordinateur "invité". (L'ordinateur sur lequel la machine virtuelle fonctionne est appelé "hôte".) L'invité possède un système d'exploitation ainsi que son propre matériel virtuel.

Le terme "matériel virtuel" peut sembler être un oxymore. En effet, le "disque dur" d'une machine virtuelle n'est en réalité qu'un fichier sur le disque dur de l'ordinateur hôte. Cependant, un disque dur virtuel remplit la même fonction qu'un disque dur physique.

Le nombre de VM pouvant fonctionner sur un hôte n'est limité que par les ressources disponibles de l'hôte. L'utilisateur peut exécuter le système d'exploitation d'une VM dans une fenêtre comme n'importe quel autre programme, ou il peut l'exécuter en plein écran pour qu'il ressemble à un véritable système d'exploitation hôte.

À quoi servent les machines virtuelles ?

Les cas d'utilisation courants des machines virtuelles sur des ordinateurs uniques sont les suivants :

  • Test - Les développeurs de logiciels souhaitent souvent tester leurs applications dans différents environnements. Ils peuvent utiliser des machines virtuelles pour exécuter leurs applications dans différents systèmes d'exploitation sur un seul ordinateur. C'est plus simple et plus rentable que de tester sur plusieurs machines physiques différentes.
  • Exécution de logiciels conçus pour d'autres SE - Bien que certaines applications logicielles ne soient disponibles que pour une seule plateforme, une MV peut exécuter des logiciels conçus pour un SE différent. Par exemple, un utilisateur de Mac qui souhaite exécuter un logiciel conçu pour Windows peut exécuter une MV Windows sur son hôte Mac.
  • Exécution de logiciels obsolètes - Certains logiciels anciens ne peuvent pas être exécutés dans des systèmes d'exploitation modernes. Les utilisateurs qui souhaitent exécuter ces applications peuvent exécuter un ancien SE sur une machine virtuelle.
  • Isolation du navigateur - L'isolation du navigateur consiste à "isoler" l'activité du navigateur Web du reste du système d'exploitation d'un ordinateur pour empêcher les logiciels malveillants d'affecter les autres fichiers et programmes de l'ordinateur. Certains outils d'isolation des navigateurs utilisent des VM pour établir cette isolation - bien que cette approche puisse ralentir l'activité de navigation.

Comment l'informatique en nuage utilise-t-elle les machines virtuelles ?

Plusieurs fournisseurs de services en cloud offrent des machines virtuelles à leurs clients. Ces machines virtuelles logent généralement sur des serveurs puissants qui peuvent héberger plusieurs MV et peuvent être utilisées pour toute une série de raisons qui ne seraient pas pratiques avec une MV hébergée localement. Ces raisons sont les suivantes

  • Exécution d'applications SaaS - Software-as-a-Service, ou SaaS en abrégé, est une méthode de fourniture de logiciels aux utilisateurs basée sur le cloud, dans laquelle une application est servie à l'utilisateur sur Internet plutôt que de s'exécuter sur son ordinateur. Souvent, ce sont des machines virtuelles dans le nuage qui effectuent les calculs pour les applications SaaS et qui les fournissent aux utilisateurs. Si le fournisseur de services en nuage dispose d'une périphérie de réseau géographiquement distribuée , l'application sera exécutée plus près de l'utilisateur, ce qui se traduira par des performances plus rapides.
  • Sauvegarde des données - Les services de MV en cloud sont très populaires pour la sauvegarde des données, car celles-ci sont accessibles de n'importe où. De plus, les MV en cloud offrent une meilleure redondance, nécessitent moins de maintenance et sont généralement plus évolutives que les datacenters physiques. (Par exemple, il est généralement assez facile d'acheter un gigaoctet d'espace de stockage supplémentaire auprès d'un fournisseur de MV en cloud, alors qu'il est beaucoup plus difficile de construire un nouveau serveur de données local pour ce gigaoctet de données supplémentaire).
  • Services d'hébergement comme la gestion du courriel et des accès - L'hébergement de ces services sur des MV en cloud est généralement plus rapide et plus rentable, et permet de minimiser la maintenance et de se décharger également des problèmes de sécurité.
  • Isolation des navigateurs - Certains outils d'isolation des navigateurs utilisent des machines virtuelles en nuage pour exécuter des activités de navigation sur Internet et fournir un contenu sûr aux utilisateurs via une connexion Internet sécurisée.

Cloudflare et machines virtuelles

Cloudflare aide à protéger et à gérer tout type de déploiement en nuage, y compris les VM en nuage. Les fournisseurs de SaaS peuvent utiliser Cloudflare for SaaS pour améliorer les performances de leur application, protéger les domaines personnalisés des utilisateurs finaux, etc.

En outre, pour les utilisateurs qui souhaitent bénéficier de la fonctionnalité d'exécution de code à la périphérie sans la surcharge des machines virtuelles, la plateforme sans serveur Cloudflare Workers a fournit des calculs à la périphérie aux clients d'une manière totalement évolutive, permettant aux développeurs d'augmenter les applications existantes ou d'en créer de nouvelles sans avoir à configurer ou à maintenir l'infrastructure.

Service commercial