L’adoption de la virtualisation par les organisations est en augmentation. Dans son rapport sur l’état de la technologie de virtualisation en 2020, Spiceworks a constaté que plus que la moitié des entreprises prévoyaient de commencer à utiliser la virtualisation du stockage et la virtualisation des applications d’ici 2021. L’enquête a également révélé que les technologies de virtualisation de bureau, de données et de réseau connaîtront toutes une croissance à deux chiffres sur les deux années à venir.

Au fur et à mesure qu’elles approfondissent leur adoption de la virtualisation, les entreprises peuvent décider d’adopter des technologies logicielles qui s’exécutent dans un environnement virtualisé. Les types les plus courants de ces technologies sont les conteneurs et les machines virtuelles (VM). Cela soulève une question importante: quel type de technologie leur convient le mieux?

Cet article fournira une définition pour les conteneurs et les machines virtuelles. Il mettra ensuite en exergue le fait que de nombreuses organisations pourraient réellement bénéficier de l’utilisation conjointe de ces deux technologies.

Selon Kubernetes, les conteneurs sont des packages logiciels contenant des environnements d’exécution entiers. Les administrateurs peuvent créer des conteneurs autonomes ou utiliser un service d’orchestration de conteneurs tel que Kubernetes pour déployer plusieurs conteneurs à la fois. À l’aide d’un environnement Kubernetes correctement configuré, les administrateurs peuvent s’assurer que leurs conteneurs répondent à la charge et à la disponibilité en démarrant ou en arrêtant automatiquement les conteneurs. Cela peut également aider à recréer des conteneurs sur un autre cluster node si le précédent échoue.

Certains des avantages de l’utilisation de conteneurs sont les suivants:

  • Léger: NetApp note que les conteneurs se trouvent au-dessus d’un serveur physique et de son système d’exploitation hôte. Il partage également le système d’exploitation hôte avec les binaires et les bibliothèques. Cela rend les conteneurs légers dans le sens où ils ne consomment pas beaucoup d’espace de stockage. En fait, les organisations peuvent généralement personnaliser les conteneurs pour ne contenir que les services nécessaires à l’exécution d’une application, économisant ainsi des ressources système cruciales et les frais de gestion.
  • Portable: les conteneurs ne dépendent pas de l’infrastructure hôte sous-jacente pour exécuter une application. Ces technologies sont donc portables dans le sens où les organisations peuvent les déployer dans différents environnements cloud et OS.
  • Évolutivité: un modèle de déploiement portable et de petite taille permet aux organisations de faire évoluer facilement leurs environnements de conteneurs sans dépenser trop d’argent. Cela fait des conteneurs une technologie utile dans les transformations numériques de nombreuses organisations.

Ceci dit, les conteneurs souffrent de certains problèmes. Par exemple, phoenixNAP a noté que les conteneurs ne sont pas vraiment isolés les uns des autres; ils ne sont isolés qu’au niveau du processus. Cela signifie que les problèmes de sécurité impliquant des conteneurs pourraient affecter d’autres personnes si un acteur malveillant compromettait la stabilité du noyau. De plus, les conteneurs s’arrêtent et suppriment toutes leurs données une fois qu’ils ont effectué leurs tâches. Les organisations peuvent enregistrer ces données à l’aide de volumes de données, mais cela peut nécessiter une configuration manuelle et un provisionnement sur l’hôte.

Machines virtuelles

VMware définit une machine virtuelle (VM) comme une « ressource de calcul qui utilise un logiciel au lieu d’un ordinateur physique pour exécuter des programmes et déployer des applications ». Contrairement aux conteneurs, les VM exécutent un système d’exploitation complet, y compris le noyau. En fait, ils peuvent exécuter à peu près n’importe quel système d’exploitation. Dans cet esprit, les organisations peuvent utiliser le Windows Admin Center ou Hyper-V Manager pour déployer des machines virtuelles individuelles. Ils peuvent également utiliser PowerShell ou System Center Virtual Machine Manager pour déployer plusieurs machines virtuelles à la fois.

Les machines virtuelles offrent plusieurs avantages aux organisations. Ceux-ci comprennent les éléments suivants:

  • Isolation: comme indiqué par Microsoft, les machines virtuelles fournissent une isolation complète du système d’exploitation hôte et des autres machines virtuelles. Cela rend les machines virtuelles particulièrement utiles lorsqu’il est important de maintenir une frontière sécurisée entre les différentes applications sur le même serveur ou cluster.
  • Tests simples: les administrateurs n’ont pas besoin d’apprendre grand-chose pour effectuer des tests sur une VM. TechRepublic explique que c’est aussi simple que de créer une nouvelle VM, d’installer un système d’exploitation et de le faire fonctionner. Une fois qu’ils ont une VM fonctionnelle, ils peuvent la cloner et / ou créer des instantanés, ce qui leur permet de revenir à une itération fonctionnelle en cas de problème.
  • Empilement d’applications: selon TechRepublic, les administrateurs peuvent également utiliser des machines virtuelles pour empiler des applications sur une seule machine en installant les services dont ils ont besoin. S’ils ont besoin d’autres services, ils peuvent ensuite installer le nouveau service sur la machine virtuelle invitée en cours d’exécution. Ils peuvent ainsi créer une plateforme en constante évolution avec tous les services dont ils ont besoin.

Mais comme pour les conteneurs, les VM ont leurs inconvénients. Si chaque machine virtuelle nécessite sa propre installation de système d’exploitation, les administrateurs doivent installer des mises à jour sur chaque machine virtuelle. De même, l’installation d’un nouveau système d’exploitation nécessite la mise à jour du système d’exploitation existant sur la VM ou la création d’un autre. Cela peut prendre beaucoup de temps, en particulier s’ils exécutent de nombreuses VM. La présence d’installations d’OS entières rend également les VM beaucoup plus grandes que les conteneurs en termes de taille et donc plus lentes à démarrer. Datamation note également que les administrateurs peuvent exposer leurs organisations à une « prolifération de machines virtuelles », un phénomène où ils font tourner plusieurs machines virtuelles sans arrêter les anciennes. Si les organisations ont trop de VM, les administrateurs ne pourront pas les gérer et appliquer efficacement les mises à jour de sécurité.

La voie à suivre

Alors, que doivent déployer les organisations? Conteneurs ou VM?

En fait, elles peuvent déployer les deux. Ce à quoi cela pourrait ressembler variera d’une organisation à l’autre. Comme l’a expliqué Lunavi sur son blog:

Ce à quoi ressemble cette combinaison dépend de chaque déploiement individuel. Pesez vos applications, vos projets futurs, vos fournisseurs de cloud et vos plates-formes pour déterminer si vous souhaitez exécuter des conteneurs à l’intérieur des machines virtuelles, quelles applications sont les mieux adaptées à un conteneur par rapport à une machine virtuelle, et comment vous pouvez maximiser vos ressources de calcul tout en maintenant la sécurité et en évitant l’étalement.

Mais avoir un modèle hybride n’est pas une mauvaise idée. Backblaze souligne que la flexibilité des VM équilibre les besoins en ressources minimales des conteneurs. Cela accorde aux organisations le maximum de fonctionnalités.