5 raisons pour lesquelles les machines virtuelles sont toujours importantes
Les conteneurs constituent une technologie vitale pour les infrastructures modernes, mais les machines virtuelles ont toujours leur place.
La virtualisation était autrefois un gros problème. Pendant un certain temps, c'était le principal moyen d'exécuter des services dans un environnement « bac à sable ». Les services informatiques ont utilisé des machines virtuelles par centaines. Et puis les conteneurs sont apparus, faisant une grande partie de ce qu'une machine virtuelle pourrait faire avec une fraction des ressources requises. Même si la technologie des conteneurs rend les machines virtuelles encombrantes, elle ne les rend pas entièrement redondantes. En fait, la virtualisation est plus utile aujourd’hui que jamais, et voici cinq raisons pour cela.
1. Saut de distribution
« Distro hopping » est le terme souvent utilisé pour décrire l'incapacité (volontaire ou non) de choisir une seule distribution. Certaines personnes adorent essayer une distribution Linux différente à chaque sortie. Et pourquoi pas? Les distributions Linux sont de petites œuvres d'art, un travail d'amour créé par des équipes de passionnés du monde entier. C'est amusant de voir ce que les gens mettent en place.
Une partie de l'expérience d'une nouvelle distribution réside dans le processus d'installation graphique, la toute première connexion et la grande révélation du bureau. Quelle est la rapidité de l'installation ? Quel bureau utilise-t-il ? A quoi ressemble le papier peint ? Dans quelle mesure a-t-il été facile de comprendre et de naviguer ? Plus important encore, ce pourrait-il être celui que même vos amis utilisant encore Windows ou macOS pourraient installer et aimer ?
Vous ne pouvez pas reproduire cela dans un conteneur. Un conteneur est, de par sa conception, une image partielle d'un système d'exploitation qui suppose qu'il a déjà été installé. C'est un gros avantage des conteneurs pour l'administrateur système occupé, mais si vous recherchez une expérience utilisateur de bureau, alors une machine virtuelle est ce qu'il vous faut.
2. Développement
La programmation est difficile à réaliser, et il est encore plus difficile de réussir lorsque vous développez une application pour plusieurs plates-formes. Hormis Java, peu de langages de programmation sont capables de cibler toutes les plateformes. Une application qui se lance et fonctionne correctement sous Linux peut générer une erreur sous Windows et peut ne pas se lancer du tout sous macOS.
Un outil comme Vagrant et libvirt garantit que vous pouvez exécuter une version spécifique d'un système d'exploitation spécifique à la demande. Vous obtenez un environnement rapide et facile à répliquer entre plusieurs développeurs. C'est idéal pour tester le code, confirmer la compatibilité et pour tester les nouvelles versions d'une bibliothèque ou d'une boîte à outils.
3. Assistance et documentation
Les rapports de bogues peuvent être très spécifiques et il suffit parfois de jeter un coup d'œil à GDB pour déterminer la cause d'un problème. D'autres fois, cependant, un rapport de bogue arrive et ne concerne pas le code mais le processus lui-même. Par exemple, un utilisateur peut se plaindre de la présentation d'une application, de la manière dont une application interagit avec certains éléments du bureau, ou de la manière de réaliser une configuration complexe. Dans de tels cas, vous devrez peut-être essayer de reproduire le flux de travail de l'utilisateur, ce qui nécessite parfois d'exécuter exactement ce que l'utilisateur exécute.
Je l'ai fait plusieurs fois dans le passé lorsque j'avais besoin de décrire à un utilisateur les étapes exactes à suivre, sur sa distribution, pour atteindre un objectif. Les déclarations générales ne suffisaient pas. J'ai installé une nouvelle copie de la distribution que mes utilisateurs utilisaient et documenté les étapes, accompagnées de captures d'écran. S'ils ne parvenaient pas à le faire fonctionner, j'étais alors sûr que le problème ne venait pas de leur configuration.
4. Architecture
Les conteneurs utilisent le processeur de votre système d'exploitation. Une machine virtuelle utilise un processeur émulé. Si vous devez exécuter un logiciel qui n'a pas été compilé sur le processeur que vous avez sur votre machine, vous devez alors exécuter un processeur virtuel.
5. Un autre système d'exploitation
Les conteneurs sont Linux. Lorsque vous exécutez un conteneur, vous exécutez Linux dans un conteneur, que vous exécutiez ce conteneur sous Windows ou Mac.
Pour exécuter Windows, que ce soit pour le support, les services hérités ou le développement, vous devez le virtualiser. Apple continue d'appliquer, pour le dire poliment, une exigence légale « complexe » concernant la virtualisation de macOS, mais lorsque cela est autorisé, cela se produit dans une machine virtuelle. Ou peut-être que vous utilisez Windows ou macOS mais que vous souhaitez exécuter une distribution Linux avec un ordinateur de bureau afin de vous familiariser avec un nouveau système d'exploitation. Les machines virtuelles sont un moyen pragmatique et simple d’avoir un ordinateur de rechange sans en avoir réellement.
Livre électronique sur la virtualisation Linux
Les machines virtuelles constituent un moyen simple d’accéder à un ordinateur défini par logiciel pour les tâches quotidiennes. Et il existe de nombreuses options pour interagir avec vos machines virtuelles, notamment GNOME Boxes, Vagrant, VirtualBox ou même directement Qemu. Que vous soyez nouveau dans la virtualisation ou que vous l'ayez déjà utilisée, téléchargez notre eBook gratuit pour une visite guidée de toutes les dernières options, configurations spécialisées et idées sur l'utilisation possible d'un parc de machines virtuelles !