Tutoriel : Premiers pas avec Amazon EC2 Orchestration - 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.

Tutoriel : Premiers pas avec Amazon EC2 Orchestration

Amazon Elastic Compute Cloud (AmazonEC2) fournit une capacité de calcul évolutive dans le AWS Cloud. Avec Amazon, vous EC2 n'avez plus besoin d'investir dans du matériel dès le départ, ce qui vous permet de développer et de déployer des applications plus rapidement.

Vous pouvez utiliser Amazon EC2 pour lancer autant ou aussi peu de serveurs virtuels que nécessaire, configurer la sécurité et le réseau, et gérer le stockage. Amazon vous EC2 permet de passer à la hausse ou à la baisse pour faire face à l'évolution des exigences ou aux pics de popularité, réduisant ainsi le besoin de prévoir le trafic.

Création d'un environnement informatique

Pour créer un environnement de calcul pour une EC2 orchestration Amazon, procédez comme suit :

  1. Ouvrez l'assistant de première exécution de la AWS Batch console.

  2. Pour Sélectionner le type d'orchestration, choisissez Amazon Elastic Compute Cloud (AmazonEC2).

  3. Choisissez Suivant.

  4. Dans la section Configuration de l'environnement de calcul pour Nom, spécifiez un nom unique pour votre environnement de calcul. Le nom peut comporter jusqu'à 128 caractères. Il peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (_).

  5. Pour Rôle d'instance, choisissez un profil d'instance existant auquel sont associées IAM les autorisations requises. Ce profil d'instance permet aux instances de ECS conteneur Amazon de votre environnement informatique d'appeler les AWS API opérations requises. Pour de plus amples informations, veuillez consulter Rôle d'ECSinstance Amazon.

  6. (Facultatif) Une balise est une étiquette attribuée à une ressource. Pour ajouter un tag ou un EC2 tag Amazon, développez Tags, puis choisissez Ajouter un tag. Entrez une paire clé-valeur, puis choisissez à nouveau Ajouter une balise.

    Important

    Si vous choisissez Ajouter une étiquette, vous devez saisir une paire clé-valeur et choisir à nouveau Ajouter une étiquette ou choisir Supprimer une balise.

  7. (Facultatif) Dans la section Configuration de l'instance pour Utiliser les instances Amazon EC2 Spot, activez Activer l'utilisation des instances Spot.

  8. (Spot uniquement) Pour le pourcentage maximum du prix à la demande, entrez le pourcentage maximum du prix à la demande que vous souhaitez payer pour les ressources Spot.

  9. (Facultatif) (Spot uniquement) Pour le rôle de flotte Spot, choisissez un IAM rôle Amazon EC2 Spot Fleet existant à appliquer à votre environnement informatique Spot. Si vous ne possédez pas encore de IAM rôle Amazon EC2 Spot Fleet, vous devez d'abord en créer un. Pour de plus amples informations, veuillez consulter Rôle de la flotte Amazon EC2 Spot.

    Important

    Pour étiqueter vos instances Spot lors de leur création, votre IAM rôle Amazon EC2 Spot Fleet doit utiliser la nouvelle politique EC2SpotFleetTaggingRole gérée par Amazon. La politique EC2SpotFleetRole gérée par Amazon ne dispose pas des autorisations requises pour étiqueter les instances Spot. Pour plus d’informations, consultez Instances ponctuelles non étiquetées lors de la création et Baliser vos ressources.

  10. Pour Minimum vCPUs, choisissez le nombre minimal de fichiers conservés EC2 vCPUs par votre environnement informatique, quelle que soit la demande de la file d'attente des tâches.

  11. Pour vCPUsDesired, choisissez le numéro avec EC2 vCPUs lequel votre environnement informatique démarre. À mesure que la demande de files d'attente de tâches AWS Batch augmente, augmente le nombre souhaité d'EC2instances vCPUs et en ajoute. Le nombre de vCPUs peut augmenter jusqu'au nombre maximum devCPUs. Au fur et à mesure que la demande AWS Batch diminue, le nombre souhaité d'instances diminue vCPUs et en supprime. Le nombre de diminue jusqu'au nombre minimum devCPUs.

  12. Pour Maximum vCPUs, choisissez le nombre maximum EC2 vCPUs que votre environnement informatique peut atteindre, quelle que soit la demande de la file d'attente des tâches.

  13. Pour les types d'instances autorisés, choisissez les types d'EC2instances Amazon qui peuvent être lancés. Vous pouvez spécifier des familles d'instances pour lancer n'importe quel type d'instance au sein de ces familles (par exemple c5c5n,, oup3). Vous pouvez également spécifier des tailles spécifiques au sein d'une famille (par exemplec5.8xlarge). Les types d'instances Metal ne font pas partie des familles d'instances. Par exemple, c5 n'inclut pasc5.metal. Vous pouvez également choisir optimal de sélectionner des types d'instances (à partir du C4, M4, et R4 familles d'instances) qui répondent à la demande de vos files d'attente de tâches.

    Note

    Quand vous créez un environnement de calcul, les types d'instances que vous sélectionnez pour cet environnement doivent partager la même architecture. Par exemple, vous ne pouvez pas mélanger x86 et ARM instances dans le même environnement informatique.

    Note

    AWS Batch des échelles GPUs basées sur le montant requis dans vos files d'attente de travail. Pour utiliser la GPU planification, l'environnement de calcul doit inclure les types d'instances de la g5 famille p2 p3 p4p5,g3,g3s,g4,, ou.

    Note

    optimalUtilise actuellement les types d'instance du C4, M4, et R4 familles d'instances. Dans Régions AWS ce cas, il n'existe pas de types d'instances issus de ces familles d'instances, mais de types d'instance issus du C5, M5, et R5 des familles d'instances sont utilisées.

  14. Développez Additional configuration (Configuration supplémentaire).

  15. (Facultatif) Pour Groupe de placement, entrez un nom de groupe de placement pour regrouper les ressources dans l'environnement informatique.

  16. (Facultatif) Pour la paire de EC2 clés, choisissez une paire de clés publique et privée comme informations d'identification de sécurité lorsque vous vous connectez à l'instance. Pour plus d'informations sur les paires de EC2 clés Amazon, consultez la section Paires de EC2 clés Amazon et instances Linux.

  17. Pour Allocation strategy (Stratégie d'allocation), choisissez la stratégie d'allocation à utiliser lorsque vous sélectionnez les types d'instance dans la liste des types d'instance autorisés. BEST_ FIT _ PROGRESSIVE est généralement le meilleur choix pour les environnements de calcul EC2 à la demande, et SPOT_ CAPACITY _ OPTIMIZED pour les environnements de calcul EC2 ponctuels. Pour de plus amples informations, veuillez consulter Stratégies d'allocation des types d'instance pour AWS Batch.

  18. (Facultatif) Pour EC2la configuration, choisissez Ajouter une EC2 configuration. Choisissez les valeurs de remplacement du type d'image et de l'identifiant de l'image AWS Batch pour fournir des informations permettant de sélectionner Amazon Machine Images (AMIs) pour les instances de l'environnement informatique. Si le remplacement de l'ID d'image n'est pas spécifié pour chaque type d'image, AWS Batch sélectionne une image récemment ECSoptimisée pour AMI Amazon. Si aucun type d'image n'est spécifié, la valeur par défaut est une instance Amazon Linux 2 pour une GPU instance autre que AWS Graviton.

    Important

    Pour utiliser un identifiant personnaliséAMI, choisissez le type d'image, puis entrez l'AMIidentifiant personnalisé dans la case de remplacement de l'identifiant de l'image.

    Amazon Linux 2

    Valeur par défaut pour toutes les familles d'instances AWS basées sur Graviton (par exempleC6g,M6g,R6g, etT4g) et peut être utilisée pour tous les types autres que les GPU instances.

    Amazon Linux (2GPU)

    Par défaut pour toutes les familles d'GPUinstances (par exemple P4 etG4) et peut être utilisé pour tous les types d'instances non AWS basés sur Graviton.

    Amazon Linux

    Peut être utilisé pour les familles GPU d'instances autres que AWS Graviton. Le support standard pour Amazon Linux AMI a pris fin. Pour plus d'informations, consultez Amazon Linux AMI.

    Note

    L'environnement de calcul AMI que vous choisissez doit correspondre à l'architecture des types d'instances que vous souhaitez utiliser pour cet environnement de calcul. Par exemple, si votre environnement informatique utilise A1 types d'instance, la ressource de calcul AMI que vous choisissez doit prendre en charge Arm instances. Amazon ECS vend les deux x86 and Arm versions d'Amazon Linux 2 ECS optimisées pour AmazonAMI. Pour plus d'informations, consultez Amazon Linux 2 ECS optimisé pour Amazon AMI dans le manuel Amazon Elastic Container Service Developer Guide.

  19. (Facultatif) Pour le modèle de lancement, sélectionnez un modèle de EC2 lancement Amazon existant pour configurer vos ressources de calcul. La version par défaut du modèle est automatiquement renseignée. Pour de plus amples informations, veuillez consulter Utilisez les modèles EC2 de lancement Amazon avec AWS Batch.

    Note

    Dans un modèle de lancement, vous pouvez spécifier une personnalisation AMI que vous avez créée.

  20. (Facultatif) Pour Version du modèle de lancement, saisissez $Default, $Latest ou un numéro de version spécifique à utiliser.

    Important

    Une fois l'environnement informatique créé, la version du modèle de lancement utilisée n'est pas modifiée même si la $Latest version $Default ou du modèle de lancement est mise à jour. Pour utiliser une nouvelle version du modèle de lancement, créez d'abord un nouvel environnement de calcul, puis ajoutez-le à la file d'attente de tâches existante. Supprimez ensuite l'ancien environnement informatique de la file d'attente des tâches, puis supprimez l'ancien environnement informatique.

  21. Dans la section Configuration du réseau :

    1. Pour l'identifiant Virtual Private Cloud (VPC), choisissez un AmazonVPC.

    2. Pour les sous-réseaux, les sous-réseaux correspondants Compte AWS sont répertoriés. Si vous souhaitez créer un ensemble personnalisé de sous-réseaux, choisissez Effacer les sous-réseaux, puis choisissez les sous-réseaux souhaités.

      Important

      Les ressources informatiques doivent communiquer avec le point de ECS VPC terminaison Amazon via un VPC point de terminaison ou plusieurs adresses IP publiques. Pour plus d'informations, consultez Amazon ECS interface VPC endpoints (AWS PrivateLink). Si votre instance n'a pas de point de VPC terminaison configuré ou d'adresse IP publique, vous pouvez utiliser la traduction d'adresses réseau (NAT). Pour plus d'informations surNAT, voir les NATpasserelles etCréer un Virtual Private Cloud .

    3. Pour les groupes de sécurité, choisissez les groupes EC2 de sécurité Amazon que vous souhaitez associer à l'instance. Si vous souhaitez créer un ensemble personnalisé de groupes de sécurité, choisissez Effacer les groupes de sécurité. Choisissez ensuite les groupes de sécurité que vous souhaitez.

  22. Choisissez Suivant.

Création d'une file d'attente de tâches

Une file d'attente de tâches stocke les tâches que vous avez soumises jusqu'à ce que le AWS Batch planificateur exécute la tâche sur une ressource de votre environnement informatique. Pour plus d’informations, consultez Files d'attente pour les jobs.

Pour créer une file d'attente de tâches pour une EC2 orchestration Amazon, procédez comme suit :

  1. Dans la section Configuration de la file d'attente des tâches pour Nom, spécifiez un nom unique pour votre environnement informatique. Le nom peut comporter jusqu'à 128 caractères. Il peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (_).

  2. Pour Priorité, entrez un entier compris entre 0 et 100 pour la file d'attente des tâches.

    Important

    Les valeurs entières les plus élevées se voient attribuer une priorité plus élevée par le AWS Batch planificateur.

  3. Choisissez Suivant.

Créer une définition de tâche

AWS Batch les définitions de tâches spécifient la manière dont les tâches doivent être exécutées. Même si chaque tâche doit faire référence à une définition de tâche, de nombreux paramètres spécifiés dans la définition de tâche peuvent être remplacés lors de l'exécution.

Pour créer la définition de tâche :

  1. Dans la section Configuration générale :

    1. Dans la section Configuration générale pour Nom, spécifiez un nom unique pour votre environnement informatique. Le nom peut comporter jusqu'à 128 caractères. Le nom peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (_).

    2. (Facultatif) Pour le délai d'exécution, entrez la durée (en secondes) pendant laquelle une tâche inachevée se termine après.

      Important

      Le délai minimum est de 60 secondes.

    3. (Facultatif) Une balise est une étiquette attribuée à une ressource. Pour ajouter un tag, développez Tags, puis choisissez Ajouter un tag. Entrez une paire clé-valeur, puis choisissez à nouveau Ajouter une balise.

      Important

      Si vous choisissez Ajouter une étiquette, vous devez saisir une paire clé-valeur et choisir à nouveau Ajouter une étiquette ou choisir Supprimer une balise.

    4. (Facultatif) Activez les balises Propagate pour propager les balises vers la tâche Amazon Elastic Container Service.

  2. Dans la section Configuration du conteneur :

    1. Pour Image, entrez le nom de l'image utilisée pour lancer le conteneur. Par défaut, toutes les images du registre Docker Hub sont disponibles. Vous pouvez également spécifier d'autres référentiels au format repository-url/image:tag. Le paramètre peut comporter jusqu'à 255 caractères. Le paramètre peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-), des traits de soulignement (_), des points (:), des points (.), des barres obliques (/) et des signes numériques (#). Le paramètre correspond Image à la section Créer un conteneur de Docker Remote API et au IMAGE paramètre de docker run.

      Note

      Docker l'architecture de l'image doit correspondre à l'architecture du processeur des ressources de calcul sur lesquelles elles sont planifiées. Par exemple, Arm basé Docker les images ne peuvent être exécutées que sur Arm ressources informatiques basées sur des ressources informatiques.

      • Les images stockées dans les référentiels Amazon ECR Public utilisent les conventions complètes registry/repository[:tag] ou de registry/repository[@digest] dénomination (par exemple,public.ecr.aws/registry_alias/my-web-app:latest).

      • Les images stockées dans ECR les référentiels Amazon utilisent la convention de registry/repository:tag dénomination complète (par exemple, aws_account_id.dkr.ecr.region.amazonaws.com/my-web-app:latest).

      • Les images dans les référentiels officiels sur Docker Hub utilisent un nom unique (par exemple, ubuntu ou mongo).

      • Les images dans les autres référentiels sur Docker Hub sont qualifiées par un nom d'organisation (par exemple, amazon/amazon-ecs-agent).

      • Les images dans les autres référentiels en ligne sont qualifiées par un nom de domaine (par exemple, quay.io/assemblyline/ubuntu).

    2. Dans Commande, précisez la commande à transmettre au conteneur. Ce paramètre correspond Cmd à la section Créer un conteneur de Docker Remote API et le COMMAND paramètre à docker run. Pour plus d'informations sur le CMD paramètre Docker, consultez https://docs.docker.com/engine/reference/builder/ #cmd.

      Note

      Vous pouvez utiliser des valeurs par défaut de substitution de paramètres et des espaces réservés dans votre commande. Pour de plus amples informations, veuillez consulter Paramètres.

    3. (Facultatif) Pour le rôle d'exécution, spécifiez un IAM rôle qui accorde aux agents de ECS conteneurs Amazon l'autorisation de passer AWS API des appels en votre nom. Cette fonctionnalité utilise les ECS IAM rôles Amazon pour les tâches. Pour plus d'informations, consultez les IAMrôles d'exécution des ECS tâches Amazon dans le manuel Amazon Elastic Container Service Developer Guide.

    4. (Facultatif) Pour la configuration du IAM rôle Job, choisissez un rôle autorisé à AWS APIs. Cette fonctionnalité utilise les ECS IAM rôles Amazon pour les tâches. Pour plus d'informations, consultez la section IAMRôles des tâches dans le manuel Amazon Elastic Container Service Developer Guide.

      Note

      Seuls les rôles dotés d'une relation de confiance avec Amazon Elastic Container Service Task Role sont présentés ici. Pour plus d'informations sur la création d'un IAM rôle pour vos AWS Batch tâches, consultez les sections Création d'un IAM rôle et d'une politique pour vos tâches dans le manuel Amazon Elastic Container Service Developer Guide.

    5. (Facultatif) Vous pouvez ajouter des paramètres à la définition de tâche sous forme de mappages clé-valeur pour remplacer les valeurs par défaut de définition de tâche. Pour ajouter un paramètre :

      1. Pour Paramètres, choisissez Ajouter un paramètre. Entrez une paire clé-valeur, puis sélectionnez à nouveau Ajouter un paramètre.

        Important

        Si vous choisissez Ajouter un paramètre, vous devez configurer au moins un paramètre ou choisir Supprimer le paramètre.

    6. Dans la section Configuration de l'environnement pour vCPUs, spécifiez le nombre de vCPUs à réserver pour le conteneur. Ce paramètre correspond CpuShares à la section Créer un conteneur de Docker Remote API et à l'--cpu-sharesoption de docker run. Chaque v CPU équivaut à 1 024 CPU actions.

    7. Pour Mémoire, spécifiez la limite stricte (en MiB) de mémoire à présenter au conteneur de tâches. Si votre conteneur tente de dépasser la mémoire spécifiée ici, il est arrêté. Ce paramètre correspond Memory à la section Créer un conteneur de Docker Remote API et à l'--memoryoption de docker run.

    8. Dans le champ Nombre de GPUs, choisissez le nombre de GPUs à réserver pour le conteneur.

    9. (Facultatif) Pour la configuration des variables d'environnement, choisissez Ajouter des variables d'environnement pour ajouter des variables d'environnement à transmettre au conteneur. Ce paramètre correspond Env à la section Créer un conteneur de Docker Remote API et à l'--envoption de docker run.

    10. (Facultatif) Pour les secrets, choisissez Ajouter un secret pour ajouter des secrets sous forme de paires nom-valeur. Ces secrets sont exposés dans le contenant. Pour plus d'informations, voir LogConfiguration: secretOptions.

    11. (Facultatif) Dans la section de configuration Linux :

      1. Dans Interface, saisissez le nom d'utilisateur à utiliser à l'intérieur du conteneur. Ce paramètre correspond User à la section Créer un conteneur de Docker Remote API et à l'--useroption de docker run.

      2. Pour accorder au conteneur de tâches des autorisations élevées sur l'instance hôte (comme pour l'rootutilisateur), faites glisser le curseur Privileged vers la droite. Ce paramètre correspond Privileged à la section Créer un conteneur de Docker Remote API et à l'--privilegedoption de docker run.

      3. Activez Activer le processus d'initialisation pour exécuter un init processus dans le conteneur. Ce processus transmet les signaux et récolte les processus.

    12. (Facultatif) Dans la section Configuration du système de fichiers :

      1. Activez l'option Activer le système de fichiers en lecture seule pour supprimer l'accès en écriture au volume.

      2. Pour Taille de la mémoire partagée, entrez la taille (en MiB) du /dev/shm volume.

      3. Pour Taille maximale de swap, entrez la quantité totale de mémoire d'échange (en MiB) que le conteneur peut utiliser.

      4. Pour Swappiness, entrez une valeur comprise entre 0 et 100 pour indiquer le comportement de swappiness du conteneur. Si vous ne spécifiez aucune valeur et que le swap est activé, la valeur par défaut est 60. Pour plus d'informations, consultez : LinuxParameters swappiness.

      5. (Facultatif) Développez la configuration supplémentaire.

      6. Pour Tmpfs, choisissez Ajouter des tmpfs pour ajouter un montage. tmpfs

      7. Pour Appareils, choisissez Ajouter un appareil pour ajouter un appareil :

        1. Sous Chemin du conteneur, spécifiez le chemin d'accès de l'instance du conteneur pour exposer l'appareil mappé à l'instance de l'hôte. Si vous laissez ce champ vide, le chemin de l'hôte est utilisé dans le conteneur.

        2. Sous Host path (Chemin de l'hôte), spécifiez le chemin d'accès d'un appareil dans l'instance de l'hôte.

        3. Pour Autorisations, choisissez une ou plusieurs autorisations à appliquer à l'appareil. Les autorisations disponibles sont READWRITE, et MKNOD.

      8. (Facultatif) Pour la configuration Ulimits, choisissez Add ulimit pour ajouter une ulimits valeur au conteneur. Entrez les valeurs Nom, Limite souple et Limite stricte, puis choisissez Ajouter une limite.

  3. Choisissez Suivant.

Créez une tâche

Pour créer une tâche, procédez comme suit :

  1. Dans la section Configuration de la tâche pour Nom, spécifiez un nom unique pour la tâche. Le nom peut comporter jusqu'à 128 caractères. Il peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (_).

  2. Choisissez Suivant.

Vérifier et créer

Sur la page Réviser et créer, passez en revue les étapes de configuration. Si vous devez apporter des modifications, choisissez Modifier. Lorsque vous avez terminé, choisissez Créer des ressources.