Qu’est-ce qu’un conteneur ?
Par définition, un conteneur est une sorte d’enclos ou boite, permettant d’héberger une application ou un processus dans le but de transporter, redimensionner et déployer cette/ces dernièr(es) sans avoir à gérer les dépendances et autres problèmes d’installation à chaque déploiement.
Nous pouvons aussi le voir comme une sorte d’image structurée hiérarchiquement en un ensemble de couches qui ressemblent à des snapshots d’un disque, on appellera ces couches des “états” du système (ou de l’image) qui ont la propriété d’être partageable ce qui signifie qu’à chaque niveau (ou état) de l’image il est possible de construire un ou plusieurs autres états. Ce qui correspond un peu à une structure en arbre.
Ce qui va nous intéresser le plus n’est pas vraiment cette structure en arbre, mais plutôt les couches décrites comme étant des états qui construisent l’image (ou le conteneur) et qui sont considérés comme un ensemble de dépendances qui sont regroupées en une seule image qui lui donnent l’aspect portable de l’image. La particularité de cette portabilité est le fait de pouvoir lancer une image (ou un conteneur) contenant toutes les dépendances pré-installées indépendamment du support sur lequel cette image est lancée (kernel de l’OS).
Qu’est ce que l’orchestration de conteneurs ?
Afin de faire migrer un grand nombre d’applications sur le cloud, nous avons besoin de conteneurs. Pour gérer les conteneurs nous devons disposer de plateformes. Ces plateformes là nommées “orchestrateurs de conteneurs” permettent des opérations sur l’état de ces conteneurs ; Faire tourner en tant que service, suspendre, arrêter… etc. Ou encore sur les ressources sur lesquelles ils ont l’accès ; Réseaux, disques… etc.
Les fonctionnalités globales qu’elle fournissent sont :
- Instanciation de conteneurs
- Re-programmation (re-scheduling) des conteneurs défectueux (dans le sens où elles arrangent un ordonnancement pour un re-lancement du conteneur en cas de panne)
- Liage de conteneurs via les interfaces prévues à cet effet
- Exposition aux machine externes
- Ajout/Suppression de conteneur
Selon l’orchestrateur, l’importance des fonctionnalités varie entre ceux qui sont plus riches fonctionnellement sur la gestion de déploiement, et d’autres pour lesquels la gestion des conteneurs eux-mêmes est plus importante.
Saif Al-Qazweny, Khalil Hamani, Abdelhaq Ouattari