Une machine virtuelle (VM) est un « ordinateur à l'intérieur de votre ordinateur ». Il s'agit d'un logiciel qui se comporte comme un PC physique doté de son propre processeur, de sa propre mémoire, de son propre espace de stockage et de son propre réseau virtuels, ce qui vous permet d'exécuter un autre système d'exploitation (OS) dans une fenêtre sur votre bureau ou sur un serveur. Considérez-la comme un bac à sable sûr et autonome dans lequel vous pouvez installer des applications, tester des paramètres ou exécuter d'anciens logiciels sans toucher à votre système principal.
En arrière-plan, un programme appelé hyperviseur crée et gère la VM. Il découpe votre matériel réel et en attribue des morceaux à chaque machine virtuelle. Le système d'exploitation invité à l'intérieur de la VM croit disposer de l'ensemble du PC pour lui seul, même s'il partage les ressources avec votre système hôte et toutes les autres VM que vous exécutez. Astucieux, n'est-ce pas ?
Pour être précis, les machines virtuelles virtualisent le matériel, tandis que les conteneurs virtualisent l'espace utilisateur du système d'exploitation. Une machine virtuelle comprend un système d'exploitation invité complet et est plus isolée, ce qui est idéal pour une séparation stricte et l'exécution de différents systèmes d'exploitation. Les conteneurs partagent le noyau du système d'exploitation hôte, ils sont donc plus légers et démarrent plus rapidement, ce qui est parfait pour le packaging et le déploiement d'applications. Les deux ont leur place : les machines virtuelles sont des appartements complets, tandis que les conteneurs sont des studios efficaces situés au même étage.
Tout dépend de vos besoins. Si vous testez des logiciels, exécutez des fichiers non fiables, séparez votre environnement professionnel et personnel, ou avez besoin d'un système d'exploitation spécifique pour une application particulière, une machine virtuelle est la solution idéale. Pour la navigation quotidienne sur le Web ou les jeux, vous utiliserez généralement votre système d'exploitation hôte. Et oui, vous pouvez jouer dans une machine virtuelle, mais les performances et le transfert de matériel deviennent rapidement complexes, ce n'est donc pas le premier choix de la plupart des gens.
Ce n'est pas exotique, juste moderne. La plupart des processeurs de la dernière décennie prennent en charge la virtualisation (recherchez Intel VT‑x/VT‑d ou AMD‑V) et au moins 8 à 16 Go de RAM facilitent la vie. L'espace de stockage est également utile, car les fichiers disque des machines virtuelles peuvent être volumineux. Sur les ordinateurs portables, attendez-vous à un bruit de ventilateur plus important et à une consommation de batterie plus élevée lorsqu'une machine virtuelle est sous charge. Sur les ordinateurs de bureau et les serveurs, vous pouvez exécuter plusieurs machines virtuelles confortablement si vous disposez d'une RAM et d'un espace de stockage suffisants.
Les machines virtuelles sont fortement isolées, ce qui explique en partie leur grande popularité dans les centres de données. Cela dit, rien n'est magique : veillez à mettre à jour les systèmes d'exploitation hôtes et invités, utilisez des hyperviseurs réputés et traitez les machines virtuelles avec le même niveau de sécurité que vous appliqueriez ailleurs. Les instantanés sont vos amis : prenez-en un avant d'effectuer des changements importants afin de pouvoir corriger vos erreurs sans regret.
Sur les ordinateurs de bureau, vous trouverez des outils tels que Hyper-V, VirtualBox, VMware Workstation et Parallels. Dans le monde des serveurs, KVM, VMware ESXi et Hyper-V sont courants. Le choix approprié dépend de votre système d'exploitation, de votre matériel et de vos besoins en matière de fonctionnalités telles que le passage PCIe/GPU, la migration en direct ou le stockage partagé.