GNU/Linux >> Tutoriels Linux >  >> Linux

6 technologies de virtualisation open source à connaître en 2020

Virtualization Tools, mieux connu sous le nom de Virt Tools, est une collection de six outils de virtualisation open source créés par divers contributeurs pour rendre le monde de la virtualisation meilleur.

Certains outils, comme KVM et QEMU, sont peut-être familiers aux passionnés de Linux, mais des outils comme libvirt et libguestfs le sont probablement moins.

Si vous préférez apprendre en regardant des vidéos plutôt qu'en lisant, j'ai créé une version vidéo de cet article, à laquelle vous pouvez accéder sur YouTube.

Avant de parcourir les outils, c'est une bonne idée de connaître la terminologie essentielle de la virtualisation. J'ai dérivé bon nombre de ces définitions de Wikipédia, avec des pages liées dans le tableau.

Terme Définition
Virtualisation En informatique, la virtualisation fait référence à l'acte de créer une version virtuelle (plutôt que physique) de quelque chose, y compris des plates-formes matérielles informatiques virtuelles, des périphériques de stockage et des ressources de réseau informatique.
Émulateur Un émulateur est un matériel ou un logiciel qui permet à un système informatique (appelé l'hôte) de se comporter comme un autre système informatique (appelé l'invité).
Machine virtuelle (VM) Également connu sous le nom de "machine invitée", il s'agit d'émulations d'ordinateurs physiques réels.
Hôtes Dans la virtualisation matérielle, un ordinateur sur lequel un hyperviseur exécute une ou plusieurs VM.
Hyperviseur Il s'agit d'un logiciel informatique, d'un micrologiciel ou d'un matériel qui crée et exécute une machine virtuelle.
Noyau Il s'agit d'un programme informatique au cœur du système d'exploitation d'un ordinateur avec un contrôle complet sur tout ce qui se trouve dans le système.
Démon Il s'agit d'un programme informatique qui s'exécute en arrière-plan, plutôt que sous le contrôle direct d'un utilisateur interactif.

Ce tableau résume chaque outil Virt, y compris les informations de licence et les liens vers le site Web et le code source de chaque outil. Une grande partie de ces informations provient du site Web de Virt Tools et du site de chaque outil.

Nom C'est quoi Licence Code source
Machine virtuelle basée sur le noyau (KVM) Un module de virtualisation dans le noyau Linux qui permet au noyau de fonctionner comme un hyperviseur GNU GPL ou LGPL Code source
Émulateur rapide (QEMU) Un émulateur et virtualiseur de machine générique et open source GPLv2 Code source
Libvirt Une bibliothèque et un démon fournissant une API stable et open source pour la gestion des hôtes de virtualisation GNU Code source
Libguestfs Un ensemble d'outils pour accéder et modifier les images de disque de VM LGPL, GPL Code source
Virt-manager Une interface utilisateur de bureau pour gérer les VM via libvirt GPLv2+ Code source
Libosinfo Fournit une base de données d'informations sur les versions du système d'exploitation pour aider à configurer de manière optimale le matériel lors du déploiement de machines virtuelles LGPLv2+ Code source

Gestionnaire virtuel basé sur le noyau (KVM)

KVM est une solution de virtualisation complète pour Linux sur du matériel contenant des extensions de virtualisation. KVM fournit la virtualisation matérielle pour une grande variété de systèmes d'exploitation invités, notamment Linux, Windows, macOS, ReactOS et Haiku. À l'aide de KVM, vous pouvez exécuter plusieurs machines virtuelles sur des images Linux ou Windows non modifiées. Chaque VM dispose d'un matériel virtualisé privé :une carte réseau, un disque, une carte graphique, etc.

La plupart du temps, vous n'interagirez pas directement avec KVM. Au lieu de cela, vous devez utiliser QEMU, virt-manager ou un autre outil de gestion de la virtualisation pour tirer parti de KVM.

Vous pouvez trouver une documentation complète sur le site Web de KVM, ainsi qu'accéder à son code source.

Émulateur rapide (QEMU)

QEMU est un émulateur et un virtualiseur de machine open source générique. Lorsqu'il est utilisé comme émulateur, QEMU peut exécuter des systèmes d'exploitation et des programmes conçus pour une machine (par exemple, une carte ARM) sur une autre machine (par exemple, votre propre PC x86_64). Lorsqu'il est utilisé comme virtualiseur, QEMU atteint des performances quasi natives en exécutant le code invité directement sur le processeur hôte à l'aide de KVM.

QEMU est pris en charge sur plusieurs systèmes d'exploitation et son processus d'installation est aussi simple que d'exécuter quelques commandes simples. ici, vous pouvez voir comment installer QEMU sur macOS avec Homebrew.

Après l'installation, apprenez à l'utiliser en lisant sa documentation, et vous pouvez également accéder à son code source.

Libvirt

Libvirt est une bibliothèque et un démon qui fournit une API open source stable pour la gestion des hôtes de virtualisation. Il cible plusieurs hyperviseurs, notamment QEMU, KVM, LXC, Xen, OpenVZ, VMWare ESX, VirtualBox, etc.

Une autre chose intéressante à propos de libvirt est que KubeVirt, un projet open source pour créer et gérer des machines virtuelles à l'intérieur de la plate-forme Kubernetes, utilise largement Libvirt. (Je couvrirai KubeVirt dans un prochain article.) Libvirt est un projet intéressant à explorer, et vous pouvez trouver une pléthore d'informations sur son site officiel ainsi que télécharger son code source.

Libguestfs

Libguestfs est un ensemble d'outils permettant d'accéder et de modifier les images disque des machines virtuelles. Vous pouvez l'utiliser pour afficher et modifier des fichiers à l'intérieur des invités; changements de scripts sur les machines virtuelles ; surveiller les statistiques de disque utilisé/libre ; créer des invités, des machines physiques à virtuelles (P2V) ou virtuelles à virtuelles (V2V) ; effectuer des sauvegardes ; cloner des machines virtuelles ; créer des machines virtuelles ; formatage des disques ; redimensionner les disques ; et beaucoup plus. Je l'ai utilisé récemment alors que je travaillais sur un projet basé sur KubeVirt appelé OpenShift Virtualization, dont vous pouvez en savoir plus dans mon didacticiel vidéo.

Le site officiel de Libguestfs contient une documentation complète sur l'utilisation de chaque commande, et vous pouvez également télécharger son code source sur GitHub.

Virt-manager

Virt-manager est une interface utilisateur de bureau pour la gestion des machines virtuelles via libvirt. Il cible principalement les machines virtuelles KVM mais gère également Xen et LXC. Il inclut également l'outil d'approvisionnement en ligne de commande virt-install. Considérez virt-manager comme un outil de gestion facile à utiliser pour vos machines virtuelles. Par exemple, vous pouvez utiliser virt-manager pour exécuter un environnement Microsoft Windows sur un poste de travail Linux ou vice versa.

Le code source de Virt-manager est disponible sur GitHub et la documentation se trouve sur son site Web. Pour le moment, virt-manager n'est disponible que pour les plates-formes Linux.

Libosinfo

Plus de ressources Linux

  • Aide-mémoire des commandes Linux
  • Aide-mémoire des commandes Linux avancées
  • Cours en ligne gratuit :Présentation technique de RHEL
  • Aide-mémoire sur le réseau Linux
  • Aide-mémoire SELinux
  • Aide-mémoire sur les commandes courantes de Linux
  • Que sont les conteneurs Linux ?
  • Nos derniers articles Linux

Libosinfo fournit une base de données d'informations sur les versions du système d'exploitation pour aider à la configuration du matériel lors du déploiement des machines virtuelles. Il comprend une bibliothèque C pour interroger des informations dans la base de données, qui est également accessible à partir de n'importe quel langage pris en charge par l'introspection GObject. Comme vous pouvez le deviner, libosinfo est plus un bloc de construction pour activer la fonctionnalité d'un système d'exploitation, mais un élément assez important.

Le code source de Libosinfo est disponible sur GitLab, et sa documentation se trouve sur son site Web.

Conclusion

Virt-tools est un ensemble de six outils puissants qui facilitent la virtualisation et permettent d'importantes fonctions de virtualisation. Tous sont des projets open source, je vous encourage donc à les explorer davantage et peut-être même à y contribuer.

Qu'en penses-tu? N'hésitez pas à laisser un commentaire pour partager vos impressions ou poser des questions.


Linux
  1. 26 applications créatives open source à essayer en 2022

  2. 3 alternatives open source à Microsoft Publisher

  3. Qu'est-ce que CloudReady ? Est-ce une alternative Open Source viable à Chrome OS ?

  4. Gaphor :outil de modélisation graphique open source

  5. Comment empaqueter des applications open source en tant que RPM

Créer un SDN sous Linux avec open source

5 jeux de puzzle open source pour Linux

Top 6 des clients de messagerie de bureau open source

Top 6 des shells open source pour Linux

Open Source Vs. Source fermée

WAZUH La plateforme de sécurité open source