Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Architecture des instances gérées Amazon ECS
Amazon ECS Managed Instances est une option de calcul entièrement gérée pour Amazon ECS qui vous permet d'exécuter des charges de travail conteneurisées sur la gamme complète des types d' EC2 instances Amazon tout en déléguant la gestion de l'infrastructure à. AWS Avec les instances gérées Amazon ECS, vous pouvez accéder à des fonctionnalités de calcul spécifiques telles que l'accélération du GPU, des architectures de processeur spécifiques, des performances réseau élevées et des types d'instances spécialisés, tout en AWS gérant le provisionnement, le dimensionnement, l'application de correctifs et la maintenance de l'infrastructure sous-jacente.
Lorsque vous utilisez des instances gérées Amazon ECS, vous empaquetez votre application dans des conteneurs et vous spécifiez vos besoins en matière de calcul. AWS sélectionne automatiquement les types d'instances EC2 Amazon à usage général les plus optimisés en termes de coûts qui répondent à vos besoins en matière de charge de travail, ou vous pouvez spécifier les attributs d'instance souhaités, notamment les types d'instance, les fabricants de processeurs et les accélérateurs. Les instances gérées Amazon ECS gèrent entièrement tous les aspects de l'infrastructure, notamment le dimensionnement, l'application de correctifs et l'optimisation des coûts, sans compromettre l'accès aux AWS fonctionnalités et aux EC2 intégrations Amazon.
Les instances gérées Amazon ECS prennent en charge les conteneurs Linux avec des optimisations et des configurations de sécurité spécifiques à la plateforme. Par défaut, les instances gérées Amazon ECS optimisent l’utilisation de l’infrastructure en plaçant plusieurs petites tâches sur des instances plus grandes, ce qui contribue à réduire les coûts et à améliorer les délais de lancement des tâches.
Cette rubrique décrit les différents composants des tâches et services d’instances gérées Amazon ECS, et souligne les considérations particulières relatives à l’utilisation des instances gérées Amazon ECS avec Amazon ECS.
Prise en main
Pour commencer à utiliser les instances gérées Amazon ECS, vous devez créer les rôles IAM requis et activer les instances gérées Amazon ECS dans votre AWS compte. Vous pouvez ensuite créer un fournisseur de capacité et lancer des tâches ou des services à l’aide du fournisseur de capacité d’instances gérées Amazon ECS.
Pour obtenir des instructions détaillées expliquant comment démarrer, consultez la section :
Fournisseurs de capacités
Les instances gérées Amazon ECS font appel à des fournisseurs de capacité pour gérer la capacité de calcul de vos charges de travail. Vous pouvez utiliser le fournisseur de capacité par défaut ou créer des fournisseurs de capacité personnalisés avec des exigences d’instance spécifiques.
Les options suivantes sont disponibles pour les fournisseurs de capacité :
-
Fournisseur de capacité par défaut : sélectionne automatiquement les types d’instances à usage général les plus optimisés en termes de coûts en fonction de vos besoins en matière de charge de travail.
-
Fournisseurs de capacité personnalisés : vous permettent de spécifier les attributs des instances à l’aide d’une sélection de type d’instance basée sur les attributs, notamment le nombre de vCPU, la mémoire, les fabricants d’UC, les types d’accélérateurs et les types d’instances spécifiques.
Une stratégie de fournisseur de capacité ne peut contenir qu’un seul type de fournisseur de capacité dans la liste suivante :
-
Instances gérées Amazon ECS
-
Groupe Amazon EC2 Auto Scaling
-
Fargate/Fargate_SPOT
Sélection et optimisation des instances
Amazon ECS choisit les types d’instances pour les charges de travail de vos instances gérées Amazon ECS en utilisant l’une des méthodes suivantes :
-
Sélection automatique : lorsque vous utilisez le fournisseur de capacité par défaut, Amazon ECS sélectionne automatiquement les types d’instances à usage général les plus optimisés en termes de coûts qui répondent aux exigences en matière d’UC et de mémoire spécifiées dans votre définition de tâche.
-
Sélection basée sur les attributs : lorsque vous utilisez des fournisseurs de capacité personnalisés, vous pouvez spécifier des attributs d’instance tels que le nombre de vCPU, la taille de la mémoire, les fabricants d’UC, les types d’accélérateurs et les types d’instances spécifiques. Amazon ECS effectue sa sélection parmi tous les types d’instances qui correspondent aux attributs que vous avez spécifiés.
Les instances gérées Amazon ECS optimisent l’utilisation et les coûts de l’infrastructure par le biais de plusieurs mécanismes :
-
Placement multitâche : par défaut, Amazon ECS place plusieurs petites tâches sur des instances plus grandes afin de maximiser l’utilisation et de réduire les coûts.
-
Consolidation active de la charge de travail : Amazon ECS identifie les cas où les instances de conteneur sont réellement inactives tout en essayant d’éviter une interruption prématurée susceptible d’avoir un impact sur la disponibilité des applications ou les performances de déploiement. Le système respecte le nombre minimum et maximum de tâches définis pour un service, le comportement de démarrage avant arrêt et le comportement de protection des tâches.
-
Dimensionnement correct : à mesure que les exigences en matière de charge de travail évoluent, Amazon ECS lance des instances de remplacement dont la taille est adaptée aux besoins actuels.
Amazon ECS utilise les fenêtres d' EC2 événements Amazon pour planifier les activités de maintenance pendant les périodes de votre choix. Les fenêtres d’événement vous permettent de définir des périodes récurrentes pendant lesquelles AWS peut effectuer la maintenance de vos instances, ce qui vous aide à minimiser les perturbations de vos charges de travail en alignant la maintenance sur votre calendrier opérationnel. Pour plus d'informations, consultez la section Événements planifiés pour vos instances dans le guide de EC2 l'utilisateur Amazon.
Si vous avez besoin d’une isolation renforcée, vous pouvez configurer les instances gérées Amazon ECS pour exécuter chaque tâche sur une instance distincte avec des limites d’isolation de sécurité au niveau des machines virtuelles.
Définitions de tâche
Les tâches qui utilisent des instances gérées Amazon ECS prennent en charge la plupart des paramètres de définition de tâches Amazon ECS. Les instances gérées Amazon ECS sont compatibles avec les définitions de tâches Fargate existantes à l’aide de la version de plateforme 1.4.0, ce qui simplifie la migration.
Pour utiliser les instances gérées Amazon ECS, définissez le paramètre de définition de tâche requiresCompatibilities pour qu’il contienne MANAGED_INSTANCES. Vos définitions de tâches peuvent spécifier la compatibilité des instances gérées par Fargate et Amazon ECS afin de garantir la flexibilité des options de déploiement.
Système d’exploitation et architecture de l’UC
Les systèmes d'exploitation suivants sont pris en charge :
-
Flacon Rocket
Deux architectures sont disponibles pour la définition de tâche Amazon ECS, ARM et X86_64.
Lorsque vous exécutez des conteneurs Linux sur des instances gérées Amazon ECS, vous pouvez utiliser l'architecture du processeur X86_64 ou l' ARM64 architecture de vos applications basées sur ARM.
Fonctions principales
Voici les principales fonctionnalités des instances gérées Amazon ECS :
-
Sélectionnez des types d' EC2 instances spécifiques pour répondre aux exigences de votre application, afin d'accéder à des fonctionnalités matérielles spécialisées telles que le calcul accéléré par le GPU, des capacités de processeur spécifiques et de grandes tailles de mémoire.
-
Optimisation de l’utilisation des ressources et les coûts avec plusieurs tâches sur une seule instance par défaut, contrairement à Fargate qui exécute chaque tâche dans son propre environnement isolé.
-
Garantie de conformité en matière de sécurité et application régulière de correctifs avec une durée de vie maximale de 14 jours, après quoi les tâches sont automatiquement migrées vers de nouvelles instances.
-
Activation des fonctions réseau et d’administration système avancées dans les conteneurs à l’aide de fonctionnalités Linux privilégiées, notamment CAP_NET_ADMIN, CAP_SYS_ADMIN et CAP_BPF.
Rôles IAM
Les instances gérées Amazon ECS nécessitent deux rôles IAM :
-
Rôle d'infrastructure : ce rôle AWS permet de gérer les instances gérées Amazon ECS en votre nom.
-
Profil d’instance : un profil d’instance est un moyen de transmettre un rôle IAM aux instances gérées Amazon ECS. Ce profil est utilisé pour :
-
Définissez les autorisations IAM pour les instances gérées Amazon ECS qui exécutent vos charges de travail de conteneur.
-
AWS Autorisez à gérer ces instances en votre nom.
-
Permettez aux instances d'accéder aux AWS services conformément aux autorisations définies dans le profil.
-
Conformité et sécurité
Les instances gérées Amazon ECS mettent en œuvre plusieurs niveaux de sécurité pour protéger vos charges de travail :
-
Configuration sécurisée - Les instances gérées Amazon ECS suivent les meilleures pratiques AWS de sécurité, notamment l'absence d'accès SSH, un système de fichiers racine immuable et des contrôles d'accès obligatoires au niveau du noyau via. SELinux
-
Correctifs automatiques : met AWS régulièrement à jour les instances gérées Amazon ECS avec les derniers correctifs de sécurité, en respectant les fenêtres de maintenance que vous configurez.
-
Durée de vie d'instance limitée : la durée de vie maximale d'une instance en cours d'exécution est de 14 jours, ce qui garantit que vos applications s'exécutent sur des instances correctement configurées avec des correctifs up-to-date de sécurité.
-
Fonctionnalités privilégiées : vous pouvez éventuellement activer des fonctionnalités Linux privilégiées pour les charges de travail qui en ont besoin, telles que les solutions de surveillance et d’observabilité du réseau.
Les instances gérées Amazon ECS prennent en charge les mêmes programmes de conformité qu’Amazon ECS, notamment les normes PCI-DSS, HIPAA et FedRAMP. Dans les régions prises en charge, les instances gérées Amazon ECS respectent les paramètres de point de terminaison FIPS au niveau de votre compte afin de garantir la conformité avec FedRAMP.
Réseaux
Les instances gérées Amazon ECS prennent en charge les modes réseau awsvpc et host. Le mode réseau awsvpc fournit à chaque tâche sa propre interface réseau Elastic et sa propre adresse IP privée au sein de votre VPC. Cela permet des contrôles ACL précis des groupes de sécurité et du réseau au niveau des tâches. En mode réseau host, les tâches partagent l’espace de noms réseau de l’instance gérée Amazon ECS hôte. Pour plus d’informations sur la mise en réseau des tâches sur les instances gérées Amazon ECS, consultez la section Mise en réseau des tâches Amazon ECS pour les instances gérées Amazon ECS.
Stockage d’instances
Les instances gérées Amazon ECS prennent en charge la configuration de la taille du volume de données Amazon EBS attaché à l’instance. Ce stockage est partagé entre toutes les tâches qui s’exécutent sur l’instance et peut être utilisé pour les montages liés (bind mounts). Le volume peut être monté et partagé entre les conteneurs qui utilisent les paramètres volumes, mountPoint et volumesFrom dans la définition de tâche.
Le volume est attaché lors de la création de l’instance. Vous pouvez spécifier la taille du volume, en Gio, lorsque vous créez un fournisseur de capacité d’instances gérées Amazon ECS à l’aide du paramètre storageConfiguration.
{ ... "managedInstancesProvider": { "infrastructureRoleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "instanceLaunchTemplate": { "ec2InstanceProfileArn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceProfile", "networkConfiguration": { "subnets": [ "subnet-abcdef01234567", "subnet-bcdefa98765432" ], "securityGroups": [ "sg-0123456789abcdef" ] }, "storageConfiguration": { "storageSizeinGiB" : 100 } } } ... }
La taille minimale de ce volume est de 30 Gio et la taille maximale est de 16 384 Gio. Par défaut, la taille de ce volume est de 80 Gio.
L’image du conteneur extraite, compressée et non compressée pour la tâche est stockée dans le volume. Pour déterminer la quantité totale de stockage d’instance que votre tâche doit utiliser comme montage lié, vous devez soustraire la quantité de stockage utilisée par votre image de conteneur de la quantité totale de stockage d’instance allouée à votre tâche.
Les performances des volumes Amazon EBS attachés aux instances gérées Amazon ECS correspondent aux performances des instances Amazon correspondantes, comme indiqué dans la documentation relative aux EC2 instances optimisées pour Amazon EBS figurant dans le guide de l'utilisateur Amazon EC2 .
Vous pouvez créer des instantanés du volume afin d’effectuer une analyse approfondie des problèmes de sécurité ou de déboguer votre application. Pour plus d’informations sur la création d’instantanés de volumes Amazon EBS, consultez la section Instantanés Amazon EBS dans le Guide de l’utilisateur Amazon EBS. Si le chiffrement Amazon EBS est activé par défaut, le volume sera chiffré avec la AWS KMS clé spécifiée pour le chiffrement par défaut. Pour plus d’informations sur le chiffrement par défaut, consultez la section Activer le chiffrement Amazon EBS par défaut dans le Guide de l’utilisateur Amazon EBS.
Outre l’utilisation du volume de données attaché à l’instance, vous pouvez également configurer des volumes de données pour chaque tâche exécutée sur les instances gérées Amazon ECS. Pour plus d’informations sur les options de stockage disponibles au niveau des tâches, consultez la section Options de stockage pour les tâches Amazon ECS.
Équilibrage de charge des services
Vos services Amazon ECS utilisant des instances gérées Amazon ECS peuvent être configurés pour utiliser ELB afin de répartir le trafic de manière uniforme entre les tâches de votre service.
Les services Amazon ECS sur instances gérées Amazon ECS prennent en charge les types d’équilibreurs de charge Application Load Balancer, Network Load Balancer et Gateway Load Balancer. Les équilibreurs de charge d'application HTTP/HTTPS acheminent le trafic (couche 7), tandis que les équilibreurs de charge réseau acheminent le trafic TCP ou UDP (couche 4).
De même, lorsque vous créez des groupes cible pour ces services, vous devez choisir le type de cible ip, et non instance. Cela est dû au fait que les tâches utilisant le mode awsvpc réseau sont associées à une interface réseau élastique, et non directement à une EC2 instance Amazon.
Surveillance et observabilité
Les instances gérées Amazon ECS fournissent des fonctionnalités de surveillance complètes grâce à des CloudWatch métriques et à l'intégration avec des outils d'observabilité :
-
CloudWatch métriques - Surveillez l'utilisation du processeur, de la mémoire, du réseau et du stockage au niveau de la tâche et de l'instance.
-
Container Insights : obtenez des métriques de performance et des journaux détaillés pour vos applications conteneurisées.
-
Intégrations tierces : lorsque les fonctionnalités privilégiées sont activées, vous pouvez exécuter des solutions avancées de surveillance et d’observabilité qui nécessitent des autorisations Linux élevées.
Tarification et optimisation des coûts
Avec les instances gérées Amazon ECS, l'intégralité de l' EC2 instance Amazon qui exécute vos tâches vous est facturée. La tarification dépend des types d’instances sélectionnés pour vos charges de travail.
Les instances gérées Amazon ECS proposent plusieurs fonctionnalités d’optimisation des coûts :
-
Optimisation multitâche : optimisez l’utilisation des instances en exécutant plusieurs tâches sur des instances de taille appropriée.
Vos Savings Plans Compute and Instance s’appliquent également aux charges de travail des instances gérées Amazon ECS.
Quotas de service
Les charges de travail des instances gérées Amazon ECS sont soumises à vos quotas de service d'instance EC2 Amazon On-Demand. Vos services Amazon ECS utilisant des instances gérées Amazon ECS sont soumis à des quotas de service Amazon ECS.
Pour de plus amples informations sur les quotas de service, consultez la section :
-
EC2 Points de terminaison et quotas Amazon dans le Référence générale d'Amazon Web Services
Considérations concernant la migration
La migration vers Amazon ECS Managed Instances est directe pour la plupart des charges de travail :
-
Depuis Fargate : ne nécessite qu’une modification de la configuration du fournisseur de capacité et un redéploiement. Les définitions de tâches existantes utilisant la version de plateforme 1.4.0 sont entièrement compatibles.
-
De EC2 : similaire à la migration vers Fargate, mais vous conservez l'accès aux fonctionnalités d' EC2 Amazon, telles que des types d'instances spécifiques.
Tenez compte des éléments suivants lorsque vous planifiez votre migration :
-
Les applications doivent tolérer la durée de vie maximale des instances de 14 jours et les fenêtres de maintenance planifiées.
-
Les tâches de longue durée (supérieures à 14 jours) ne sont pas adaptées aux instances gérées Amazon ECS.
-
Les instances personnalisées ne AMIs sont pas prises en charge : les instances gérées Amazon ECS utilisent des instances AWS gérées et optimisées pour la sécurité AMIs.
Limites et considérations
Les restrictions suivantes s’appliquent aux instances gérées Amazon ECS :
-
Personnalisé AMIs - L'AMI est détenue et gérée par AWS
-
Durée de vie de l’instance : durée d’exécution maximale de 14 jours par instance pour garantir les correctifs de sécurité et la conformité.
-
Accès SSH : non disponible pour des raisons de sécurité. Utilisation d’Amazon ECS Exec pour le débogage et le dépannage. Opérations de gestion via Amazon ECS APIs uniquement.
-
Service Connect n’est pas disponible pour les services exécutés sur les instances gérées Amazon ECS.