Introduction

Les conteneurs sont un élément clé du développement d'applications modernes. Ils sont devenus le moyen standard d'organiser les ressources de calcul et de gérer le contenu de vos déploiements d'applications.

Les conteneurs fournissent un environnement de calcul discret et reproductible. Ils permettent également de simplifier la gestion de l'empaquetage et des dépendances. Qu'il s'agisse d'orchestrer de très grandes propriétés multiclusters ou d'applications Web, ou même de tester votre travail et de réaliser une preuve de concept sur votre ordinateur portable, ils constituent un excellent moyen de démarrer et de créer des logiciels à déployer dans le cloud.

Ce guide de décision vous aide à démarrer et à choisir le bon service de conteneur AWS pour le développement de vos applications modernes.

Cet extrait de quatre minutes provient d'un enregistrement de 57 minutes d'une présentation de Vikram Venkataraman, responsable technique principal des comptes chez AWS, donnée lors du Sommet AWS DC 2022. Il fournit une vue d'ensemble des services de conteneurs AWS disponibles.

Durée de lecture

20 minutes

Objectif

Vous aider à déterminer le service de conteneurs AWS qui conviennent le mieux à votre organisation.

Niveau

Débutant

Date de la dernière mise à jour

26 avril 2023

Compréhension

Les conteneurs sont devenus une norme de facto pour l'empaquetage du code, des configurations et des dépendances des applications dans un seul artefact, car ils peuvent être déployés de manière cohérente dans plusieurs environnements.

Les conteneurs constituent un élément clé de toute stratégie de développement d'applications moderne. Pour fournir un certain contexte aux services AWS liés aux conteneurs, l'image de droite montre les options de conteneur AWS disponibles par couche (expliquées plus en détail dans cette vidéo).

Capacité 

La capacité fait référence à l'unité de calcul sous-jacente sur laquelle vous allez déployer votre conteneur, à votre unité centrale de traitement (CPU) et à vos besoins en mémoire. La capacité est l'infrastructure sur laquelle le conteneur va fonctionner. Deux options s'offrent à vous en ce qui concerne la capacité de vos conteneurs sur AWS :

  • Amazon Elastic Compute Cloud (Amazon EC2) vous permet d'exécuter vos conteneurs sur des machines virtuelles que vous gérez.
  • AWS Fargate est un moteur de calcul sans serveur pour les conteneurs qui vous permet d'exécuter des conteneurs sans gérer l'infrastructure sous-jacente. Avec Fargate, vous pouvez lancer et mettre à l'échelle des conteneurs sans vous soucier des instances EC2 sous-jacentes.

Orchestration

Il n'est pas rare que les organisations gèrent non pas un ou quelques conteneurs, mais des milliers. Il devient difficile de gérer un environnement aussi complexe. Les services d'orchestration facilitent le déploiement et la gestion de ces applications. AWS propose trois services d'orchestration :  

  • Amazon Elastic Container Service (Amazon ECS) est un service d'orchestration de conteneurs entièrement géré, idéal pour les organisations qui recherchent un moyen simple et rentable de déployer et de gérer des applications conteneurisées.
  • Amazon Elastic Kubernetes Service (Amazon EKS) est un service Kubernetes entièrement géré qui vous permet d'exécuter et de gérer des clusters Kubernetes sur AWS.
  • Le service Red Hat OpenShift sur AWS (ROSA) est un service OpenShift entièrement géré qui vous permet d'exécuter et de gérer des clusters OpenShift sur AWS. C'est une bonne option pour les clients qui utilisent déjà OpenShift sur site.

Mise en service

Le provisionnement fournit une interface avec la couche d'orchestration des services. Chaque orchestrateur présente ses propres complexités. Les services de provisionnement masquent cette complexité et facilitent l'utilisation du service. Les services AWS de cette catégorie comprennent :

  • AWS App Runner est un service entièrement géré qui crée automatiquement des images de conteneurs à partir de votre code source, déploie les conteneurs sur une infrastructure entièrement gérée et les met à l'échelle en fonction de la demande.
  • AWS Elastic Beanstalk est un service entièrement géré qui facilite le déploiement, la gestion et la mise à l'échelle des applications Web. Elastic Beanstalk prend également en charge les conteneurs et fournit une plateforme entièrement gérée pour le déploiement et la mise à l'échelle d'applications conteneurisées.
  • Amazon Lightsail est un moyen simple et économique de lancer et de gérer des serveurs privés virtuels, mais propose également un support pour les conteneurs, ce qui vous permet de créer et de déployer des applications conteneurisées à l'aide d'instances Lightsail.

Considération

Il est important de choisir un service de conteneurs qui corresponde aux exigences de votre application et à vos préférences opérationnelles. La section suivante décrit certains des principaux critères à prendre en compte lors du choix d'un service de conteneur, ainsi que les outils et services de soutien.

  • Les entreprises peuvent choisir le cloud pour réduire leurs coûts opérationnels en normalisant les services gérés qui font peser la charge opérationnelle sur AWS. Des niveaux d'abstraction plus élevés permettent aux développeurs et aux opérateurs de se concentrer sur leurs propres activités à valeur ajoutée, plutôt que sur des tâches indifférenciées.

    La création à l'aide de conteneurs sur AWS utilise des services présentant des niveaux d'abstraction plus élevés afin de transférer vers AWS les frais opérationnels liés à la maintenance de l'infrastructure.

  • Vous pouvez plus facilement faire des choix d'architecture en comprenant vos modèles de charge de travail. Il peut s'agir d'applications Web, de microservices basés sur des API, d'applications basées sur des événements, de diffusion en continu et de messagerie, de pipelines de données, d'automatisations informatiques, et bien d'autres choses encore. Certaines charges de travail seront plus performantes ou plus rentables dans un environnement à calcul unique que dans un autre type d'environnement.

  • De nombreux clients souhaitent s'assurer que leurs applications peuvent s'exécuter dans un environnement différent et être facilement migrées ou déplacées vers celui-ci. Il est important pour eux de pouvoir conserver leur choix, ou d'exécuter une application à la fois sur site et dans le cloud.

    Nous vous recommandons de développer vos compétences en matière d'architectures logicielles et de créer des empaquetages qui vous permettent de transférer plus facilement une logique métier différenciée entre les services de calcul.

    Les applications créées à l'aide de certaines technologies peuvent s'exécuter plus efficacement sur certains services de calcul que sur d'autres.

  • Les compétences de votre organisation représentent un facteur important lorsqu'il s'agit de choisir les services de conteneurs que vous utilisez. L'approche que vous adoptez nécessitera un certain investissement dans les équipes DevOps et SRE (Site Reliability Engineer). La création d'un pipeline automatisé pour déployer des applications est courante dans la plupart des développements d'applications modernes.

    Certains choix augmentent le niveau de gestion. Par exemple, certaines entreprises disposent des compétences et des ressources nécessaires pour exécuter et gérer une implémentation de Kubernetes, car elles investissent dans de robustes équipes SRE chargées de gérer les clusters Kubernetes. Ces équipes s'occupent des mises à niveau fréquentes des clusters (par exemple, Kubernetes publie trois versions majeures par an et rend obsolètes les anciennes versions).

    La taille de l'organisation est un facteur clé, car les plus petites start-ups peuvent disposer d'un personnel informatique restreint composé de personnes occupant plusieurs rôles, tandis que les grandes entreprises peuvent prendre en charge des centaines de charges de travail en production à la fois.  

  • Les différents services de conteneurs AWS répondent à des besoins uniques en termes de complexité du déploiement. Voici comment chaque service est optimisé pour son propre rôle :

    • AWS AppRunner offre la solution la plus simple, qui vous permet de déployer votre application sur l'Internet public sans gérer ni personnaliser l'infrastructure sous-jacente.
    • Amazon ECS est un bon choix si vous avez besoin d'un peu plus de contrôle sur les configurations réseau et de sécurité sans pour autant sacrifier la mise à l'échelle ou les fonctionnalités.
    • Amazon EKS peut vous permettre d'utiliser la flexibilité et le contrôle du déploiement et de l'orchestration des applications fournis par la technologie Kubernetes.

Choix

Maintenant que vous connaissez le critère d'évaluation de vos options de conteneurs, vous êtes prêt à choisir le ou les services de conteneurs AWS les mieux adaptés aux exigences de votre organisation.

Le tableau suivant indique les services optimisés à chaque circonstance. Utilisez le tableau pour déterminer quel est le service de conteneur le plus adapté à votre organisation et à votre cas d'utilisation.

Conteneurs
Quand les utiliseriez-vous ?
À quelles fins sont-ils optimisés ?
Services ou outils de conteneurs associés
Fermer

Options de capacité

La capacité fait référence à l'unité calcul sous-jacente sur laquelle vous allez déployer votre conteneur, à vos besoins en matière de CPU et de mémoire. La capacité est l'infrastructure sur laquelle le conteneur va fonctionner.

À utiliser lorsque vous souhaitez exécuter vos conteneurs sur des machines virtuelles AWS autogérées ou sur une capacité de calcul gérée par AWS.
Optimisée pour exécuter vos conteneurs sur le calcul AWS.
Fermer

Amazon EC2

Amazon EC2 est un service Web qui fournit une capacité de calcul redimensionnable, utilisant des serveurs dans les centres de données Amazon, que vous exploitez pour concevoir et héberger vos systèmes logiciels.

Fermer

AWS Fargate

AWS Fargate est une technologie que vous pouvez utiliser avec Amazon ECS pour exécuter des conteneurs sans avoir à gérer les serveurs ou les clusters d'instances Amazon EC2. Avec Fargate, il n'est plus nécessaire de mettre en service, de configurer ou de mettre à l'échelle des clusters de machines virtuelles pour exécuter des conteneurs.

Fermer

Orchestration de conteneurs

Les services d'orchestration de conteneurs gèrent quand et où vos conteneurs s'exécutent.

À utiliser lorsque vous devez être en mesure de déployer et de gérer plusieurs milliers de conteneurs.
Optimisés pour le déploiement, la gestion et la mise à l'échelle d'applications conteneurisées sur AWS.
Fermer

Service Red Hat OpenShift sur AWS (ROSA)

Le service Red Hat OpenShift sur AWS simplifie la création et l'exploitation de clusters Red Hat OpenShift sur AWS. Pour les applications déjà conteneurisées sur site sur OpenShift Container Platform, ROSA fournit une API familière et conserve la même chaîne d'outils de déploiement pour vous permettre de vous concentrer sur la refactorisation du modèle de données, et non sur l'ensemble de la pile d'applications.

Fermer

Amazon Elastic Kubernetes Service

Amazon EKS vous aide à démarrer, exécuter et mettre à l'échelle des applications Kubernetes dans le Cloud AWS ou sur site.

Fermer

Amazon ECS

Amazon ECS est un service d'orchestration de conteneurs entièrement géré qui permet de déployer, de gérer et de mettre à l'échelle des applications conteneurisées.

Fermer

Mise en service

La catégorie de mise en service des services fournit une interface avec la couche d'orchestration des services. Chaque orchestrateur présente ses propres complexités. La mise en service des services masque cette complexité et permet aux clients d'utiliser plus facilement le service.

À utiliser lorsque vous ou votre équipe n'avez pas beaucoup d'expérience en matière de conteneurs ou d'infrastructures.
Optimisés pour la facilité d'utilisation.
Fermer

AWS Elastic Beanstalk

Avec Elastic Beanstalk, vous pouvez déployer et gérer rapidement des applications sur le Cloud AWS, sans devoir étudier l'infrastructure qui les exécute. Elastic Beanstalk réduit la complexité inhérente à la gestion sans pour autant sacrifier le choix ou le niveau de contrôle.

Fermer

AWS App Runner

AWS App Runner vous permet de créer et d'exécuter des applications conteneurisées sur un service entièrement géré avec un minimum de connaissances en matière d'infrastructure.

Fermer

Amazon Lightsail

Lightsail offre des instances de serveur privé virtuel (VPS), des conteneurs, du stockage, des bases de données et bien plus encore, faciles à utiliser et à un prix mensuel avantageux.

Fermer

Outils

Outils permettant de fournir un registre de conteneurs ainsi que de conteneuriser et de migrer des applications existantes.

À utiliser lorsque vous avez besoin d'outils pour fournir un registre de conteneurs ainsi que pour conteneuriser et migrer des applications existantes.
Optimisés pour soutenir vos opérations de conteneurs.
Fermer

Amazon Elastic Container Registry

Amazon ECR est un registre de conteneurs entièrement géré qui offre un hébergement haute performance, afin que vous puissiez déployer de manière fiable des images d'applications et des artefacts n'importe où.

Fermer

Sur site

Vous permet d'exécuter un plan de contrôle familier pour garantir une expérience cohérente quel que soit l'endroit où s'exécutent vos applications basées sur des conteneurs.

À utiliser lorsque vous devez exécuter un plan de contrôle familier pour garantir une expérience cohérente quel que soit l'endroit où s'exécutent vos applications basées sur des conteneurs.
Optimisé pour garantir la flexibilité de l'environnement dans lequel vous exécutez vos applications basées sur des conteneurs.
Fermer

Tarification d'Amazon Elastic Container Service (ECS) Anywhere

Amazon ECS Anywhere est une fonctionnalité d'Amazon ECS qui vous permet d'exécuter et de gérer des charges de travail de conteneur sur votre infrastructure.

Fermer

Amazon EKS Anywhere

Amazon EKS Anywhere vous permet de créer et d'exploiter des clusters Kubernetes sur votre propre infrastructure.

Fermer

Amazon EKS Distro

Amazon EKS utilise Amazon EKS Distro, une distribution Kubernetes créée et gérée par AWS. Amazon EKS Distro facilite la création de clusters fiables et sécurisés.

Utilisation

Vous devriez maintenant avoir une compréhension claire de chaque service de conteneur AWS (et des outils et services AWS associés) et savoir lequel est le plus adapté à votre organisation et à votre cas d'utilisation.

Pour découvrir comment utiliser et en savoir plus sur chacun des services de conteneurs AWS disponibles, nous avons conçu un parcours permettant d'explorer le fonctionnement de chacun de ces services. La section suivante contient des liens vers une documentation détaillée, des didacticiels pratiques et des ressources pour vous aider à démarrer.

  • Amazon EC2
  • Amazon Aurora

    Mise en route avec Amazon EC2

    Accédez à l'ensemble de la documentation technique Amazon EC2, y compris des guides sur les instances Linux et Windows.

    Explorez les guides »

    Amazon Aurora

    Guide de l'Utilisateur VM Import/Export

    Découvrez comment importer des images de machines virtuelles (VM) depuis votre environnement de virtualisation existant vers Amazon EC2, puis les réexporter.

    Explorez le guide »

    Amazon Aurora

    Amazon EC2 Auto Scaling avec les instances Spot EC2

    Découvrez comment créer une charge de travail sans état et tolérante aux pannes à l'aide d'Amazon EC2 Auto Scaling avec des modèles de lancement pour demander des instances Spot Amazon EC2.

    Démarrez avec le didacticiel »

    Amazon Aurora

    Déployer une application Web sur Amazon EC2

    Nous vous accompagnons dans la création d'une instance Amazon EC2 à l'aide d'AWS CDK, et dans le déploiement d'une application Web sur cette instance.

    Explorez le guide »

  • Amazon ECR
  • Amazon DynamoDB

    Qu'est-ce qu'Amazon Elastic Container Registry (ECR) ?

     
    Un guide pour la mise en route et l'utilisation d'ECR.
     
     
    Amazon DynamoDB

    Amazon ECR dans les architectures multi-comptes et multirégions
     

    Découvrez les principales considérations relatives aux architectures Amazon ECR couvrant tous les comptes AWS et les régions AWS, ainsi qu'aux architectures liées à des cas d'utilisation de clients hypothétiques.

    Lisez l'article de blog »

    Amazon DynamoDB

    Mise en route avec Amazon ECR Public
     

    Commencez à utiliser les référentiels publics Amazon ECR en créant votre premier référentiel public et en définissant ses paramètres dans la console Amazon ECR.

    Explorez le guide »

    Amazon DynamoDB

    Créez un pipeline avec une source Amazon ECR et un déploiement ECS vers CodeDeploy
     

    Configurez un pipeline dans AWS CodePipeline qui déploie des applications de conteneur à l'aide d'un déploiement bleu/vert prenant en charge les images Docker.

    Démarrez avec le didacticiel »

  • Amazon ECS
  • AWS Database Migration Service

    Mise en route avec Amazon ECS

    Ce guide fournit une présentation des outils disponibles pour accéder à Amazon ECS ainsi que des procédures d'introduction étape par étape pour exécuter des conteneurs.

    Explorez le guide »

    AWS Database Migration Service

    Didacticiels pour Amazon ECS

    Plus d'une douzaine de didacticiels expliquant comment effectuer des tâches courantes, notamment la création de clusters et de VPC, en utilisant Amazon ECS.

    Démarrez avec les didacticiels »

    AWS Database Migration Service

    Quelles sont les nouveautés et les prochaines étapes d'Amazon ECS

    Découvrez les nouveautés depuis le lancement d'Amazon ECS Anywhere, les nouvelles fonctionnalités d'AWS Fargate et un aperçu des améliorations intéressantes apportées à Amazon ECS.

    Découvrez l'histoire complète dans cette vidéo »

    AWS Database Migration Service

    Déploiement d'Amazon Elastic Container Service (ECS)

    Ce guide présente les options de déploiement d'Amazon ECS sur AWS et montre comment l'utiliser pour gérer une application conteneurisée simple.


    Explorez le guide »

    AWS Database Migration Service

    Atelier Amazon ECS

    Cet atelier est conçu pour former les personnes qui ne connaissent peut-être pas AWS Fargate, Amazon ECS et peut-être même le flux de travail des conteneurs Docker.

    Explorez l'atelier »

    AWS Database Migration Service

    Déploiement de conteneurs Docker sur Amazon ECS

    Découvrez comment exécuter une application modèle compatible avec Docker sur un cluster Amazon ECS derrière un équilibreur de charge. Vous pourrez tester l'application modèle et supprimer vos ressources pour éviter des frais.

    Utilisez le didacticiel »

  • Amazon EKS
  • AWS Database Migration Service

    Mise en route avec Amazon EKS
     

    Apprenez-en plus sur Amazon Elastic Kubernetes Service (Amazon EKS), un service géré que vous pouvez utiliser pour exécuter facilement Kubernetes sur AWS sans devoir installer, exploiter ni maintenir votre plan de contrôle ou vos nœuds Kubernetes.

    Explorez le guide »

    AWS Database Migration Service

    Déploiement d'Amazon Elastic Kubernetes Service (EKS)
     

    Explorez les options de déploiement d'Amazon EKS sur AWS et découvrez comment l'utiliser pour gérer une application conteneurisée générale.

    Explorez le guide »

    AWS Database Migration Service

    Déploiement de référence Amazon EKS Quick Start

    À l'aide d'un guide de déploiement de référence Quick Start, nous fournissons des instructions étape par étape pour déployer des clusters Amazon Elastic Kubernetes Service (Amazon EKS).


    Explorez le guide »

    AWS Database Migration Service

    Déployer une application Kubernetes
     

    Dans ce didacticiel, vous allez apprendre à déployer une application conteneurisée vers un cluster Kubernetes géré par Amazon Elastic Container Service for Kubernetes (Amazon EKS).

    Utilisez le didacticiel »

    AWS Database Migration Service

    Atelier Amazon EKS
     

    Exercices pratiques pour en savoir plus sur Amazon Elastic Kubernetes Service.


    Consultez l'atelier »

  • Amazon Lightsail
  • AWS Database Migration Service

    Création, transmission et déploiement d'images de conteneurs
    avec Amazon Lightsail

    Ce didacticiel montre comment créer une image de conteneur sur votre ordinateur local à l'aide d'un fichier Dockerfile. Une fois votre image créée, vous pouvez la transmettre à votre service de conteneur Lightsail pour la déployer.

    Démarrez avec le didacticiel »

    AWS Database Migration Service

    Centre de ressources Amazon Lightsail


    Explorez les didacticiels, les vidéos et les liens vers la documentation des concepts de base de Lightsail.



    Consultez le centre de ressources »

    AWS Database Migration Service

    Lancer une machine virtuelle Linux avec Amazon Lightsail

    Dans ce didacticiel, vous créez une instance Amazon Linux dans Amazon Lightsail. Une fois l'instance opérationnelle, vous pouvez vous y connecter via SSH dans la console Lightsail à l'aide du terminal SSH basé sur le navigateur.

    Démarrez avec le didacticiel »

  • AWS App Runner
  • AWS Database Migration Service

    Mise en route avec AWS App Runner


    Ce didacticiel explique comment configurer le code source et le déploiement, la version du service et l'exécution du service pour déployer votre application sur le service App Runner. Il montre également comment déployer une version de code, apporter une modification à la configuration et consulter les journaux.

    Utilisez le didacticiel »

    AWS Database Migration Service

    AWS App Runner : du code à une application web pouvant être mise à l'échelle et sécurisée en quelques minutes

    Découvrez comment AWS App Runner a été conçu pour faciliter le déploiement d'applications web et d'API dans le cloud, quelle que soit la langue dans laquelle elles sont écrites, même pour les équipes qui n'ont pas d'expérience préalable en matière de déploiement et de gestion de conteneurs ou d'infrastructures.

    Lisez le blog »

    AWS Database Migration Service

    Déployer une application web à l'aide d'AWS App Runner


    Suivez ces instructions étape par étape pour déployer une application web conteneurisée à l'aide d'AWS App Runner. Commencez avec votre code source ou une image de conteneur. App Runner crée et déploie automatiquement l'application web et équilibre la charge du trafic avec chiffrement.

    Déployez votre application web »

  • AWS Elastic Beanstalk
  • AWS Database Migration Service

    Premiers pas avec Elastic Beanstalk


    Ce guide explique comment créer, explorer, mettre à jour et supprimer une application Elastic Beanstalk.

    Explorez le guide »

    AWS Database Migration Service

    Options de déploiement avec AWS Elastic Beanstalk 


    Ce guide explique que vous pouvez utiliser AWS Elastic Beanstalk pour déployer, gérer et mettre à l'échelle des applications sans la charge opérationnelle liée à la gestion de l'infrastructure.

    Explorez le guide »

    AWS Database Migration Service

    Didacticiels et exemples intermédiaires sur AWS Electric Beanstalk

    Ces didacticiels s'adressent aux utilisateurs intermédiaires et peuvent ne pas contenir d'instructions concernant les étapes de base telles que l'inscription à AWS.

    Démarrez avec les didacticiels »

  • AWS Fargate
  • Amazon Aurora

    Mise en route avec AWS Fargate

    Ce guide explique les bases d'AWS Fargate, une technologie que vous pouvez utiliser avec Amazon ECS pour exécuter des conteneurs sans avoir à gérer des serveurs ou des clusters d'instances Amazon EC2.

    Explorez le guide »

    Amazon Aurora

    Mise en route avec la console à l'aide de conteneurs Linux sur AWS Fargate

    Démarrez avec Amazon ECS sur AWS Fargate en utilisant le type de lancement Fargate pour vos tâches dans les régions où Amazon ECS prend en charge AWS Fargate.

    Explorez le guide »

    Amazon Aurora

    Création d'un cluster avec une tâche Fargate Linux à l'aide de l'AWS CLI

    Configurez un cluster, enregistrez une définition de tâche, exécutez une tâche Linux et réalisez d'autres scénarios courants dans Amazon ECS à l'aide de l'AWS CLI.  

    Explorez le guide »

  • ROSA
  • AWS Database Migration Service

    Mise en route avec le service Red Hat OpenShift sur AWS

    Ce guide vous aidera à commencer à utiliser le service Red Hat OpenShift sur AWS.

    Explorez le guide »

    AWS Database Migration Service

    Pourquoi utiliseriez-vous ROSA ?

    Cette vidéo explique dans quels cas vous pouvez utiliser Red Hat OpenShift plutôt que Kubernetes standard et explore en profondeur ROSA sur AWS.

    Regardez la vidéo »

Exploration

Diagrammes d'architecture

Explorez les diagrammes d'architecture de référence pour les conteneurs sur AWS.


Explorez les diagrammes d'architectures »

Livres blancs

Consultez les livres blancs qui vous aideront à démarrer et à découvrir les bonnes pratiques.

Explorez les livres blancs »

Solutions AWS

Découvrez des solutions approuvées et des conseils architecturaux pour les cas d'utilisation courants des conteneurs.

Explorez les solutions »

Cette page vous a-t-elle été utile ?