Conteneur (virtualisation)

La virtualisation au niveau du système d'exploitation est un paradigme de système d'exploitation (SE) dans lequel le noyau permet l'existence de plusieurs instances d'espace utilisateur isolées, appelées le plus souvent conteneurs (LXC, Solaris containers, Docker, Podman), mais également zones (Solaris containeurs), serveurs privés virtuels (OpenVZ), partitions, environnements virtuels, noyaux virtuels (DragonFly BSD) ou encore prisons (FreeBSD jail ou chroot jail)[1]. De telles instances peuvent ressembler à de vrais ordinateurs du point de vue des programmes qui y sont exécutés. Un programme informatique exécuté sur un système d'exploitation ordinaire peut voir toutes les ressources (périphériques connectés, fichiers et dossiers, partages réseau, puissance du processeur, capacités matérielles quantifiables) de cet ordinateur. Cependant, les programmes exécutés à l'intérieur d'un conteneur ne peuvent voir que le contenu du conteneur et les périphériques affectés au conteneur.

Sur les systèmes d'exploitation de type Unix , cette fonctionnalité peut être considérée comme une implémentation avancée du mécanisme chroot standard, qui modifie le dossier racine apparent pour le processus en cours d'exécution et ses enfants. En plus des mécanismes d'isolation, le noyau fournit souvent des fonctionnalités de gestion des ressources pour limiter l'impact des activités d'un conteneur sur d'autres conteneurs. Les conteneurs Linux sont tous basés sur les mécanismes de virtualisation, d'isolation et de gestion des ressources fournis par le noyau Linux, notamment les espaces de noms Linux et les cgroups[2].

Le terme conteneur, bien qu'il se réfère le plus souvent aux systèmes de virtualisation au niveau du système d'exploitation, est parfois utilisé de manière ambiguë pour désigner des environnements de machines virtuelles plus complets fonctionnant à des degrés divers de concert avec le système d'exploitation hôte, par exemple les conteneurs Hyper-V de Microsoft.

  1. Hogg, « Software Containers: Used More Frequently than Most Realize », Network World, Network World, Inc, (consulté le ) : « There are many other OS-level virtualization systems such as: Linux OpenVZ, Linux-VServer, FreeBSD Jails, AIX Workload Partitions (WPARs), HP-UX Containers (SRP), Solaris Containers, among others. »
  2. Rami, « Namespaces and Cgroups, the basis of Linux Containers » (consulté le )

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by razib.in