On Fri, Feb 05, 2021 at 08:11:39PM +0100, Arnaud wrote: > Mais pourrais-je me permettre de demander en quoi LXC est beaucoup efficace > que KVM?
lxc et Docker utilisent les services des cgroups du kernel Linux et proposent donc des conteneurs plutôt que des machines virtuelles. J'appelle cela de la virtualisation légère. La différence principale est assez simple: les conteneurs ne permettent pas d'exécuter un autre kernel que celui de l'host. Tourner du Microsoft dans un conteneur sous Linux n'est alors possible qu'avec Wine, et le contraire avec WSL1 (aucune idée si encore supporté par Microsoft, aujourd'hui ils font plutôt du WSL2 avec un mini-kernel Linux en virtualisation lourde sous Microsoft HyperV dans lequel ils lancent les conteneurs Linux -- apparemment plus fiable et plus performant que WSL1). kvm, comme VirtualBox, xen, Microsoft HyperV permettent à contrario d'exécuter un autre kernel dans la machine virtuelle. Il s'agit de virtualisation lourde. En fait, les conteneurs sont d'une performance proche à exécuter une application nativement sur le host, mais avec du confinement / de l'isolation plus ou moins configurable. On peut toutefois améliorer les performances de la virtualisation lourde, en coupant les jambes du kernel dans la VM (recompilation d'un kernel Linux sans ses couches basses comme fait WSL2), ou y intégrer des pilotes spécifiques (Guest extensions, paravirtualisation: le guest devient conscient qu'il est virtualisé) améliorant la performance ou permettant de contrôler certaines ressources depuis le host (balloon driver, etc). Il ne faut pas oublier que la virtualisation ajoute N conteneurs ou VM plus le host de base à maintenir (mises à jour de sécurité p.ex.), sauf si l'on part dans une approche où on détruit les conteneurs chaque jour (ou au minimum à chaque annonce de sécurité de n'importe lequel des composants logiciels du conteneur) et on les recrée depuis des images à jour avec des scripts d'auto-création (p.ex. Docker compose, lxd, etc). Typiquement, je n'utilise pas de virtualisation lourde en production actuellement, uniquement de la virtualisation légère lxc ou Docker, et je travaille plutôt avec des mises à jour automatiques ou semi-automatiques via une distribution complète Debian, et surtout pas avec des images de base vérolées de github. A nouveau `utilisabilité vs sécurité et maintenabilité'. _______________________________________________ gull mailing list [email protected] https://forum.linux-gull.ch/mailman/listinfo/gull
