- Accueil >
- HWS >
- Ressources >
- Rubrique Aide Hosteur
Qu’est-ce que les conteneurs d’application?
Un conteneur d'application est un type de conteneur relativement nouveau. Il s'agit d'une solution centrée sur une application, un service ou même un micro-service qui ne fait généralement qu'exécuter un seul processus dans le conteneur. Par conséquent, les conteneurs d'application favorisent la création d'une infrastructure immuable et éphémère. Si une application ou un service doit être mis à jour, un tout nouveau conteneur est construit (avec les ajustements nécessaires) à partir de l'image appropriée. Ensuite, il est mis à disposition pour remplacer l'instance du conteneur en cours d'exécution.
Au tout début, une telle complexité, ainsi que le manque d'isolation et les incompatibilités des conteneurs d'applications avec certaines technologies (comme Java et les runtimes de bases de données), ont eu un impact considérable sur la vitesse d'adoption des conteneurs d'applications. Les développeurs ont dû procéder à des ajustements importants pour s'assurer que leurs technologies et les fonctionnalités supplémentaires puissent être exécutées correctement à l'intérieur des conteneurs d'application.
De plus, en tant que solution stateless, les conteneurs d'application ne peuvent pas sauvegarder nativement les informations d'état internes, de sorte que ces opérations sont déléguées aux systèmes de stockage persistants externes. Cependant, selon les développeurs des conteneurs purement stateless, amener l'état au déploiement est une façon obsolète de concevoir l'architecture. Ils affirment que la meilleure et la plus propre approche pour les conteneurs est d'effectuer des opérations qui ne nécessitent pas de conserver l'état.
De nos jours, de nombreux outils supplémentaires sont implémentés pour une utilisation pratique des services qui utilisent des conteneurs d'application. Ainsi, les développeurs peuvent bénéficier des unités hautement spécialisées des conteneurs d'application sans les inconvénients d'une gestion complexe.
Plusieurs implémentations de conteneurs d'application sont activement développées : Docker, CRI-O, containerd, et quelques autres. À l'heure actuelle, RAGNARØKKR PaaS utilise Docker comme la technologie la plus largement adoptée pour les conteneurs d'application. La plateforme offre une automatisation complète du déploiement, un approvisionnement (provisioning) rapide du serveur et des outils de stockage/traitement des données (sessions, journaux, configurations, etc.) pour une utilisation pratique des conteneurs d'application.
Toutefois, certaines applications et technologies peuvent encore rencontrer des problèmes lors de la migration vers des conteneurs d'application (en raison du manque d'isolement approprié, du protocole sans état (stateless) et des exigences de processus unique). Cela est particulièrement vrai pour les outils d'orchestration de conteneurs d'applications complexes comme Kubernetes. En cas de difficultés lors de la migration, les conteneurs de système peuvent être considérés comme une alternative mieux adaptée à la conteneurisation.