LXC - LXC
Développeur(s) | |
---|---|
Première version | 6 août 2008 |
Version stable | 4.0.6 / 12 janvier 2021
|
Dépôt | |
Écrit en | C , Coquille |
Système opérateur | Linux |
Plate-forme | x86 , IA-64 , PowerPC , SPARC , Itanium , ARM |
Taper | Virtualisation au niveau du système d'exploitation |
Licence | GNU LGPL v.2.1 (certains composants sous GNU GPL v2 et BSD ) |
Site Internet | linuxcontainers |
Les conteneurs Linux ( LXC ) sont une méthode de virtualisation au niveau du système d'exploitation pour exécuter plusieurs systèmes Linux isolés (conteneurs) sur un hôte de contrôle à l'aide d'un seul noyau Linux.
Le noyau Linux fournit la fonctionnalité de groupes de contrôle qui permet de limiter et de hiérarchiser les ressources (CPU, mémoire, bloc d'E/S, réseau, etc.) sans avoir besoin de démarrer de machines virtuelles , ainsi que la fonctionnalité d' isolation d'espace de noms qui permet une isolation complète d'un vue de l'application sur l'environnement d'exploitation, y compris les arborescences de processus , la mise en réseau , les ID utilisateur et les systèmes de fichiers montés .
LXC combine les groupes de contrôle du noyau et la prise en charge des espaces de noms isolés pour fournir un environnement isolé pour les applications. Les premières versions de Docker utilisaient LXC comme pilote d'exécution de conteneur, bien que LXC ait été rendu facultatif dans la v0.9 et que la prise en charge ait été abandonnée dans Docker v1.10. Les références aux conteneurs Linux font généralement référence aux conteneurs Docker s'exécutant sous Linux.
Aperçu
LXC fournit une virtualisation au niveau du système d'exploitation via un environnement virtuel qui possède son propre processus et son propre espace réseau, au lieu de créer une machine virtuelle à part entière . LXC s'appuie sur la fonctionnalité des groupes de contrôle du noyau Linux qui a été publiée dans la version 2.6.24. Il s'appuie également sur d'autres types de fonctionnalités d'isolation d'espace de noms, qui ont été développées et intégrées dans le noyau Linux principal.
Sécurité
À l'origine, les conteneurs LXC n'étaient pas aussi sécurisés que les autres méthodes de virtualisation au niveau du système d'exploitation telles que OpenVZ : dans les noyaux Linux antérieurs à la version 3.8, l' utilisateur root du système invité pouvait exécuter du code arbitraire sur le système hôte avec les privilèges root, tout comme il le peut dans chroot prisons. À partir de la version LXC 1.0, il est possible d'exécuter des conteneurs en tant qu'utilisateurs normaux sur l'hôte en utilisant des "conteneurs non privilégiés". Les conteneurs non privilégiés sont plus limités dans la mesure où ils ne peuvent pas accéder directement au matériel. Cependant, même les conteneurs privilégiés devraient fournir une isolation adéquate dans le modèle de sécurité LXC 1.0, s'ils sont correctement configurés.
Alternatives
LXC est similaire à d'autres technologies de virtualisation au niveau du système d'exploitation sur Linux telles que OpenVZ et Linux-VServer , ainsi qu'à celles sur d'autres systèmes d'exploitation tels que les jails FreeBSD , les partitions de charge de travail AIX et les conteneurs Solaris . Contrairement à OpenVZ, LXC fonctionne dans le noyau Linux vanille ne nécessitant aucun correctif supplémentaire à appliquer aux sources du noyau. La version 1 de LXC, qui a été publiée le 20 février 2014, est une version prise en charge à long terme et destinée à être prise en charge pendant cinq ans. LXC 2.0 et 3.0 sont des versions de support à long terme : LXC 2.0 sera pris en charge jusqu'au 1er juin 2021 ; LXC 3.0 sera pris en charge jusqu'au 1er juin 2023.
LXD
LXD est un gestionnaire de conteneurs système, essentiellement une alternative aux outils de LXC, et non une "réécriture de LXC". En fait, il s'appuie sur LXC pour offrir une nouvelle et meilleure expérience utilisateur.
Voir également
- Initiative de conteneurs ouverts
- Container Linux (anciennement CoreOS Linux)
- Docker , un projet d'automatisation du déploiement d'applications dans des conteneurs logiciels
- Apache Mesos , une plate-forme de gestion de clusters à grande échelle basée sur l'isolation des conteneurs
- Implémentations de virtualisation au niveau du système d'exploitation
- Proxmox Virtual Environment , une plate-forme de gestion de virtualisation de serveur open source prenant en charge les conteneurs LXC et KVM
- Anbox , utilise LXC pour exécuter des applications Android dans d'autres distributions Linux
Les références
Liens externes
- Site officiel etréférentiel de code sourcesurGitHub
- Article IBM developerworks sur LXC
- "S'évader des conteneurs Linux" par Marco D'Itri
- Présentation sur les groupes de contrôle et les espaces de noms, la technologie sous-jacente des conteneurs Linux, par Rami Rosen
- Présentation sur les conteneurs Linux et le futur cloud, par Rami Rosen
- LXC : Installer et configurer les conteneurs Linux
- LSS : conteneurs Linux sécurisés (LWN.net)
- Introduction aux conteneurs Linux
- LXC sur Android sur YouTube , avril 2013