container

Une définition du Jargon Français.
Aller à : Navigation, rechercher

1. Dr enus.png nom masculin.  [conteneur]  [type de fichier]. Sorte de machine virtuelle reposant sur un seul noyau capable de gérer plusieurs userspaces distincts. Chacun de ces derniers abrite une « machine virtuelle », qui est appelée ainsi même si, du point de vue du mulet, c'est un « userspace » isolé des autres, donc une sorte de jail. Par extension cela désigne aussi un fichier décrivant un container ou stockant son état (sens 3).

En résumé c'est une machine virtuelle crée par un tandem (servant d'hyperviseur) formé du noyau et d'un logiciel relativement simple.

La virtualisation classique repose sur la simulation d'une machine physique complète pour chaque machine virtuelle active. Un container ne simule pas ainsi et se contente d'isoler, de sorte que son travail de gestion d'un userland est beaucoup moins exigeant en ressources (processeur et mémoire centrale) que ce qu'implique un hyperviseur classique, donc toutes choses égales par ailleurs il est plus rapide qu'une machine virtuelle classique. Par ailleurs la juste répartition des ressources entre des containers est plus facile.

Sur un même mulet tous les containers emploient toutefois le même noyau, donc ne peuvent fonctionner sous divers systèmes d'exploitation ou même seulement sous diverses versions du noyau, et bien entendu n'animent aucun code exécutable uniquement compatible avec une autre plate-forme (sens 1). Par ailleurs une attaque réussie contre le noyau menace tous ses containers.

Le terme container est lourd de sens car évoque la révolution opérée IRL dans le secteur du transport par les containers (la grosse boîte métallique contenant de la marchandise, aux dimensions normalisée, que l'on peut facilement charger sur bateau, train ou camion). Un container informatique contient tout ce dont au moins un logiciel donné a besoin pour fonctionner, et l'isole des autres. Cela facilite considérablement le déploiement d'un service, tout comme un conteneur IRL facilite l'expédition de marchandise et interdit aux objets d'un client (placés dans son container) d'endommager les (ou de se mêler aux) objets de l'autre (protégés par un autre container). Cela débouche sur une vision à la sauce « the network is the computer » (le réseau est l'ordinateur), par lequel en pratique le cloud devient le mainframe auquel n'importe qui peut à tout moment confier un container. La confidentialité semble négligée.

La version française (rarement employée) est conteneur (sens2).

Synonyme: CT, « Virtual Environment » (VE), « Virtual Private Server » (VPS), « guest », « zone ».

L'activité correspondante est la containerisation.


2. Dr enus.png nom masculin.  [programmation]. En programmation orientée objet cela désigne tout type de structure hébergeant des données d'un ou plusieurs types, qui peuvent elles-mêmes être des containers.

Des types de containers bien connus, qui sont abstraits, sont le Set (ensemble), la List (ensemble ordonné), la Map (tableau associatif), le Vector (tableau à une dimension) et leurs sous-types. Selon le langage de programmation, Array et String (chaîne de caractères) peuvent ou non être des containers.

Synonyme collection.