Les conteneurs fournissent un moyen standard de joindre le code, les configurations et les dépendances de votre application en un seul objet. Les conteneurs partagent un système d'exploitation installé sur le serveur et s'exécutent en tant que processus à ressources isolées, assurant des déploiements rapides, fiables et cohérents, quel que soit l'environnement.
Docker est une plateforme logicielle qui vous permet de concevoir, tester et déployer des applications rapidement. Docker enveloppe les logiciels dans des unités normalisées appelées conteneurs, qui rassemblent tous les éléments nécessaires à leur fonctionnement : bibliothèques, outils système, code et environnement d'exécution.
Kubernetes est un système de gestion et d’orchestration de conteneurs open source. Sur AWS, vous pouvez choisir d'exécuter et de gérer vous-même l'infrastructure Kubernetes avec Amazon EC2 ou d'utiliser Amazon EKS pour obtenir un plan de contrôle Kubernetes géré et automatiquement mis en service.
Les conteneurs sont un moyen idéal pour les développeurs de mettre en paquet et de déployer leurs applications. Ils sont légers et offrent un environnement logiciel cohérent et mobile pour les applications qui pourront s'exécuter et se dimensionner facilement et de n'importe où. La création et le déploiement de microservices, l'exécution de tâches en lot, pour les applications de machine-learning, et le déplacement d'applications existantes dans le cloud ne sont que quelques exemples d'utilisation courants des conteneurs.
Oui. Amazon ECR est intégré à la fois à Amazon ECS et Amazon EKS, ce qui vous permet de stocker, d'exécuter et de gérer très facilement les images de conteneur pour les applications exécutées avec ECS ou EKS. Il vous suffit d'indiquer le référentiel Amazon ECR dans votre définition de tâche ou de pod pour ECS ou EKS afin de récupérer les images appropriées pour vos applications.
Lorsque vous souhaitez exécuter de nombreux conteneurs Docker, des outils d'orchestration comme Docker Swarm, Kubernetes et Amazon ECS vous permettent de démarrer, d'arrêter et de surveiller des milliers (ou des millions) de conteneurs.
Docker Swarm est un logiciel d'orchestration de conteneurs. Il est développé par Docker et vous l'exécutez et le gérez vous-même. Kubernetes est un logiciel d'orchestration de conteneurs open source populaire. Il est développé par la communauté et vous l'exécutez et le gérez vous-même. Amazon EKS vous permet d'exécuter plus facilement Kubernetes sur AWS en gérant le plan de contrôle de Kubernetes pour vos conteneurs. Amazon ECS est un service AWS entièrement géré qui vous permet d'exécuter facilement des conteneurs sur AWS en offrant une intégration profonde avec d'autres services AWS, notamment les services de VPC (réseau privé virtuel), de répartition de charge, de découverte de services et de rôles IAM.
Amazon ECS et Amazon EKS sont deux systèmes de gestion de conteneurs qui vous aident à exécuter des conteneurs à grande échelle. EKS exécute Kubernetes et utilise les API Kubernetes, tandis qu'ECS dispose de profondes intégrations avec d'autres services AWS et utilise les API AWS.
AWS App Mesh fournit de nouvelles fonctionnalités de communication, d’observation et de gestion aux applications gérées par Amazon ECS. Vous ajoutez l'image de proxy Envoy à la définition de tâche ECS. App Mesh gère la configuration Envoy pour fournir les fonctionnalités de maillage de services. App Mesh exporte les métriques, les journaux et les traces vers les points de terminaison spécifiés dans la configuration d'amorçage Envoy fournie. App Mesh fournit une API pour configurer les routes de trafic, les coupe-circuit, les nouvelles tentatives et d'autres contrôles entre les microservices pour lesquels le maillage est activé.
Ajoutez l'image du proxy Envoy à Kubernetes PodSpec. AWS App Mesh exporte les métriques, les journaux et les traces vers les points de terminaison spécifiés dans la configuration d’amorçage Envoy fournie. App Mesh fournit une API pour configurer les routes de trafic, les coupe-circuit, les nouvelles tentatives et d'autres contrôles entre les microservices pour lesquels le maillage est activé.