View a markdown version of this page

Environnements de calcul sur les instances gérées Amazon ECS - AWS Batch

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.

Environnements de calcul sur les instances gérées Amazon ECS

AWS Batch les environnements de calcul sur les instances gérées Amazon ECS utilisent un bloc managedInstancesProvider de configuration intégrécomputeResources. Cette structure s'aligne sur le modèle de fournisseur de capacité Amazon ECS et est autonome. Toutes les configurations de mise en réseau, de profil d'instance et de sélection d'instance se trouvent dans ce bloc.

La liste suivante décrit les paramètres de l'environnement de calcul pour les environnements de calcul Amazon ECS Managed Instances.

type(niveau supérieur)

Doit indiquer MANAGED.

"type": "MANAGED"
computeResources.type

Doit indiquer ECS_MANAGED_INSTANCES. Contrairement aux environnements de calcul Fargate et Amazon EC2, la capacité Spot n'est pas exprimée comme un type distinct (il n'existe pas ECS_MANAGED_INSTANCES_SPOT de type). Utilisez plutôt capacityOptionType inside managedInstancesProvider.instanceLaunchTemplate pour spécifier On-Demand ou Spot la capacité.

"type": "ECS_MANAGED_INSTANCES"
computeResources.maxvCpus

Le nombre maximum de vCPU que l'environnement informatique peut atteindre. Fonctionne de la même manière que maxvCpus pour les environnements de calcul Fargate : il limite le nombre total de processeurs virtuels consommés pour toutes les tâches en cours d'exécution.

Important

Actuellement, AWS Batch les évaluations sont maxvCpus basées sur le nombre total de processeurs virtuels demandés par les tâches en cours d'exécution, et non sur le nombre total de processeurs virtuels des instances Amazon EC2 sous-jacentes. Amazon ECS Managed Instances utilise l'allocation d'instances multi-locataires. Par conséquent, la capacité réelle du processeur virtuel de l'instance provisionnée peut dépasser le total du processeur virtuel de la tâche. L'environnement de calcul peut fournir une capacité d'instance supérieure à ce que la maxvCpus valeur implique. Ce comportement pourrait être amélioré dans une future mise à jour.

computeResources.managedInstancesProvider

Requis pour les environnements de calcul Amazon ECS Managed Instances. Contient toutes les Instances-specific configurations gérées par Amazon ECS. Pour plus d'informations, consultez le ManagedInstancesProvider manuel Amazon Elastic Container Service API Reference. Les champs suivants sont disponibles :

infrastructureRoleArn

Obligatoire. L'ARN du rôle IAM qu'Amazon ECS assume pour gérer les instances Amazon EC2 en votre nom. Ce rôle doit être assorti d'une politique de confiance pourecs.amazonaws.com. Votre responsable IAM doit être iam:PassRole autorisé à jouer ce rôle avec cette condition. iam:PassedToService: ecs.amazonaws.com

propagateTags

Facultatif. Contrôle si les balises du fournisseur de capacité sont propagées aux instances Amazon EC2 qu'il lance. Les valeurs valides sont CAPACITY_PROVIDER et NONE.

instanceLaunchTemplate

Obligatoire. Contient la configuration de lancement de l'instance :

ec2InstanceProfileArn

Obligatoire. L'ARN du profil d'instance Amazon EC2 pour les instances gérées. Ce profil d'instance doit utiliser la politique AmazonECSInstanceRolePolicyForManagedInstances gérée avec une politique de confiance pourec2.amazonaws.com.

networkConfiguration

Obligatoire. Spécifie la configuration VPC pour les instances gérées.

  • subnets — Obligatoire. Les sous-réseaux VPC sur lesquels les instances sont lancées. Les instances ont besoin d'un accès réseau externe pour communiquer avec le point de terminaison du service Amazon ECS. Si vos sous-réseaux ne fournissent pas d'adresses IP publiques, ils doivent disposer d'une passerelle NAT pour l'accès Internet sortant.

  • securityGroups — Obligatoire. Les groupes de sécurité VPC à associer aux instances.

instanceRequirements

Facultatif. Spécifie les contraintes relatives aux types d'instances Amazon EC2 qu'Amazon ECS peut lancer. S'ils ne sont pas fournis, tous les types d'instances disponibles sont éligibles.

  • allowedInstanceTypes— Une liste de types ou de familles d'instances spécifiques (par exemple, m5.large oug5). Lorsque cela est spécifié, seuls ces types d'instance sont utilisés.

capacityOptionType

Facultatif. Le modèle de tarification des capacités. Les valeurs valides sont ON_DEMAND (par défaut) et SPOT. AvecSPOT, Amazon ECS lance des instances Spot qui peuvent permettre de réaliser d'importantes économies sur les charges de travail tolérantes aux pannes.

storageConfiguration

Facultatif. Configure le volume EBS racine pour les instances.

  • storageSizeGiB— La taille du volume de la racine en GiB.

monitoring

Facultatif. Le niveau de CloudWatch surveillance des instances. Les valeurs valides sont BASIC et DETAILED.

fipsEnabled

Facultatif. Lorsqu'il est défini surtrue, active la conformité à la norme FIPS 140-2 sur les instances gérées. Non disponible dans tous les cas Régions AWS.

capacityReservations

Facultatif. Cible les réservations de On-Demand capacité (ODCR) pour une disponibilité prévisible des capacités.

  • reservationGroupArn— L'ARN du groupe de réservation de capacité à cibler.

  • reservationPreference— Contrôle la manière dont les réservations de capacité sont utilisées. Les valeurs valides sont RESERVATIONS_ONLY (lancement uniquement dans les réservations), RESERVATIONS_FIRST (préférez les réservations, revenez à la demande) et RESERVATIONS_EXCLUDED (n'utilisez pas les réservations).

instanceMetadataTagsPropagation

Facultatif. Contrôle si les balises sont accessibles depuis le service de métadonnées d'instance (IMDS) sur les instances gérées.

localStorageConfiguration

Facultatif. Configure les volumes de stockage d'instance locaux (SSD NVMe locaux) pour les instances gérées.

  • useLocalStorage— Si les volumes de stockage d'instance sont disponibles pour les conteneurs exécutés sur les instances gérées.

infrastructureOptimization

Facultatif. Contrôle la manière dont Amazon ECS gère les instances inactives.

  • scaleInAfter— Le nombre de secondes pendant lesquelles une instance doit être inactive avant qu'Amazon ECS ne l'arrête. Les valeurs valides sont -1 (pour désactiver la mise à l'échelle) ou 03600 (secondes d'inactivité avant la fin).

computeResources.capacityTags

Facultatif. Tags à appliquer au fournisseur de capacité Amazon ECS et aux instances Amazon EC2 gérées par l'environnement informatique. Valable uniquement pour les environnements ECS_MANAGED_INSTANCES informatiques. Votre principal IAM doit être batch:SetCapacityTags autorisé à spécifier ce champ sur la ressource de l'environnement informatique. Pour de plus amples informations, veuillez consulter Contrôlez l'accès aux étiquettes de capacité avec batch : SetCapacityTags.

Ces balises sont distinctes du niveau supérieur de tags la ressource de l'environnement informatique elle-même. capacityTagsÀ utiliser pour la répartition des coûts et l'organisation des ressources d'infrastructure sous-jacentes.

Paramètres non applicables aux instances gérées Amazon ECS

Les computeResources paramètres suivants ne sont pas valides pour les environnements de calcul Amazon ECS Managed Instances et ne doivent pas être spécifiés :

  • allocationStrategy

  • bidPercentage

  • desiredvCpus

  • minvCpus

  • imageId

  • instanceTypes

  • instanceRole

  • ec2Configuration

  • ec2KeyPair

  • launchTemplate

  • placementGroup

  • spotIamFleetRole

  • subnets(à utiliser à managedInstancesProvider.instanceLaunchTemplate.networkConfiguration.subnets la place)

  • securityGroupIds(à utiliser à managedInstancesProvider.instanceLaunchTemplate.networkConfiguration.securityGroups la place)

Mise à jour des environnements de calcul Amazon ECS Managed Instances

Tous les attributs de l'environnement de calcul des instances gérées Amazon ECS peuvent être mis à jour, à l'exception du type d'environnement de calculcapacityOptionType, etfipsEnabled. Les mises à jour sont transmises au fournisseur de capacité Amazon ECS sous-jacent. Les nouvelles instances utilisent la configuration mise à jour. Les instances existantes continuent de fonctionner jusqu'à ce que leurs tâches soient terminées, puis se vident naturellement.

Les éléments suivants ne peuvent pas être modifiés après la création :

  • Le type d'environnement de calcul (ECS_MANAGED_INSTANCESne peut pas être modifié en FARGATEEC2, ou en un autre type)

  • capacityOptionType— Vous ne pouvez pas basculer entre On-Demand et Spot après la création

  • fipsEnabled— Le mode FIPS ne peut pas être modifié après sa création

Exemples

Configuration minimale

L'exemple suivant montre la configuration minimale requise pour créer un environnement de calcul Amazon ECS Managed Instances. Amazon ECS sélectionne automatiquement les types d'instance parmi tous les types disponibles.

{ "computeEnvironmentName": "my-managed-instances-ce", "type": "MANAGED", "state": "ENABLED", "computeResources": { "type": "ECS_MANAGED_INSTANCES", "maxvCpus": 256, "managedInstancesProvider": { "infrastructureRoleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "instanceLaunchTemplate": { "ec2InstanceProfileArn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceProfile", "networkConfiguration": { "subnets": ["subnet-abcde012", "subnet-bcde012a"], "securityGroups": ["sg-abcde012"] } } } } }

Charge de travail du GPU avec des types d'instances spécifiques

L'exemple suivant crée un environnement de calcul limité aux types d'instances GPU NVIDIA pour les charges de travail d'apprentissage automatique.

{ "computeEnvironmentName": "my-gpu-managed-instances-ce", "type": "MANAGED", "state": "ENABLED", "computeResources": { "type": "ECS_MANAGED_INSTANCES", "maxvCpus": 1000, "managedInstancesProvider": { "infrastructureRoleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "instanceLaunchTemplate": { "ec2InstanceProfileArn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceProfile", "networkConfiguration": { "subnets": ["subnet-abcde012", "subnet-bcde012a"], "securityGroups": ["sg-abcde012"] }, "instanceRequirements": { "allowedInstanceTypes": ["g5.xlarge", "g5.2xlarge", "g5.4xlarge"] }, "capacityOptionType": "ON_DEMAND" } } } }

Capacité ponctuelle pour les charges de travail sensibles aux coûts

L'exemple suivant crée un environnement Spot-backed informatique pour les charges de travail par lots tolérantes aux pannes.

{ "computeEnvironmentName": "my-spot-managed-instances-ce", "type": "MANAGED", "state": "ENABLED", "computeResources": { "type": "ECS_MANAGED_INSTANCES", "maxvCpus": 5000, "managedInstancesProvider": { "infrastructureRoleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "instanceLaunchTemplate": { "ec2InstanceProfileArn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceProfile", "networkConfiguration": { "subnets": ["subnet-abcde012", "subnet-bcde012a", "subnet-cde012ab"], "securityGroups": ["sg-abcde012"] }, "instanceRequirements": { "allowedInstanceTypes": ["m5.large", "m5.xlarge", "m6i.large", "m6i.xlarge"] }, "capacityOptionType": "SPOT", "storageConfiguration": { "storageSizeGiB": 100 } } } } }